Descripción general de la observabilidad de los microservicios

Las herramientas de observabilidad de microservicios te permiten instrumentar tus aplicaciones para recopilar y presentar datos de telemetría en Cloud Monitoring, Cloud Logging y Cloud Trace de cargas de trabajo de gRPC implementadas en Google Cloud y en otros lugares.

Esta documentación está dirigida a propietarios de servicios de gRPC, ingenieros de confiabilidad de sitios y cualquier persona que use datos de telemetría para solucionar problemas y optimizar las cargas de trabajo de gRPC.

La observabilidad une los complementos de OpenCensus para las métricas, los seguimientos y el registro de gRPC en un solo complemento unificado, sin exponer ninguna dependencia. La observabilidad de los microservicios usa datos de observabilidad integrados en Cloud Monitoring, Cloud Logging y Cloud Trace. En la documentación, se proporcionan instrucciones para incorporar los complementos de observabilidad en tus aplicaciones de gRPC.

Para ayudarte a recopilar información y depurar tus aplicaciones, la observabilidad de los microservicios incluye las siguientes funciones:

  • Generación de registros de eventos de RPC a nivel de transporte.
  • Compatibilidad con seguimiento distribuido.
  • Compatibilidad con Cloud Monitoring, incluidos los paneles predefinidos.
  • Consultas sugeridas de Cloud Logging.
  • Etiquetas de recursos y etiquetas personalizadas.

Funciones

En esta sección, se describen las funciones de observabilidad de los microservicios.

Integración de telemetría

Los paquetes de complementos de observabilidad para cada lenguaje de gRPC (C++, Go y Java) están integrados en Google Cloud Observability de forma predeterminada. Con una configuración mínima, el complemento recupera metadatos sobre el proyecto y la implementación y configura las cantidades predeterminadas de seguimiento, métricas y generación de datos de registros.

Inspecciona eventos a nivel de transporte de RPC

El ciclo de vida de una llamada de procedimiento remoto (RPC) puede contener eventos de metadatos, incluidos encabezados y avances; eventos de mensaje; y los eventos de estado, incluidos el estado OK y el estado de error, y los eventos de finalización. Cuando usas la observabilidad de microservicios, puedes inspeccionar los detalles para cada tipo de evento. Puedes inspeccionar la longitud de los mensajes serializados, la autoridad, las direcciones de cliente o servidor, y si el cliente o el servidor canceló la RPC.

Con una configuración explícita, la observabilidad de los microservicios puede habilitar el registro de carga útil para mensajes o encabezados. Puedes configurar límites de tamaño para los registros de carga útil, el mensaje de control o los registros de carga útil del encabezado por separado. También puedes especificar el grupo de métodos de destino con o sin comodines.

Compatibilidad de seguimiento distribuido para RPC

La arquitectura del servidor puede permitir que una RPC se distribuya a varias llamadas o solicitudes separadas que fluyen a través de los componentes. La observabilidad de los microservicios usa el seguimiento distribuido para facilitar el análisis y la solución de problemas de sistemas complejos. El producto de observabilidad de microservicios proporciona compatibilidad integrada para que las aplicaciones de gRPC inicien seguimientos, generen intervalos y propaguen el contexto de seguimiento.

Captura medidas para la supervisión de métricas

El complemento proporciona compatibilidad de origen para una amplia gama de medidas a nivel de mensaje, de RPC o de método, desde los recuentos de mensajes y tamaños de mensajes hasta latencias. Las mediciones se suben a Cloud Monitoring. Puedes explorar las métricas recopiladas con el Explorador de métricas de Cloud Monitoring, que tiene un panel con un conjunto de gráficos preexistentes. También puedes presentar las métricas en tus propios paneles personalizados.

Correlación de seguimientos y registros

Los seguimientos te ayudan a identificar errores y problemas en tus sistemas, mientras que las entradas de registro te ayudan a identificar los detalles de cualquier error y problema. En conjunto, los seguimientos y registros te proporcionan un panorama detallado de los errores o problemas, lo que te da una comprensión más completa de las RPC que abarcan diferentes sistemas. La observabilidad de los microservicios correlaciona de forma automática los registros con seguimientos, que se muestrean según las decisiones de muestreo ascendentes o las tasas de muestreo definidas por el usuario.

Etiquetas de recursos y etiquetas personalizadas

Para que sea más eficaz a fin de explorar los datos de observabilidad, la observabilidad de microservicios proporciona etiquetas de recursos de forma predeterminada y permite que tu aplicación defina etiquetas personalizadas. Las etiquetas de recursos son pares clave-valor específicos de la implementación que anotan la ubicación de la carga de trabajo, por ejemplo, el nombre del nodo de Compute Engine o el espacio de nombres de Google Kubernetes Engine.

Las etiquetas personalizadas proporcionan un mecanismo para adjuntar información personalizada de la siguiente manera:

  • Como etiquetas de intervalos a datos de seguimiento.
  • Como etiquetas de métricas a datos de métricas.
  • Como etiquetas de entrada de registro a datos de registro.

Las etiquetas personalizadas son útiles cuando deseas incluir versiones de origen o nombres de servicios canónicos. Puedes usarlas para agregar información específica del usuario, lo que ayuda a identificar datos de observabilidad específicos en tus registros, métricas y seguimientos.

Consultas sugeridas

La observabilidad de los microservicios proporciona automáticamente varias consultas sugeridas en Cloud Logging. Para obtener información completa, lee Consultas sugeridas.

Arquitectura

En el siguiente diagrama, se ilustra cómo los la observabilidad de los microservicios recopila y entrega datos de observabilidad:

Recopilación y entrega de datos de observabilidad de microservicios.
Recopilación y entrega de datos de observabilidad de microservicios (haz clic para ampliar)

Primero, especifica la configuración de observabilidad en la carga de trabajo de gRPC. La configuración de observabilidad consta de campos que estableces en una variable de entorno. La configuración define lo siguiente:

  • Intervalos de Trace que se exportan a Cloud Trace.
  • Datos de métricas que se exportan a Cloud Monitoring.
  • Eventos de RPC que se exportan a Cloud Logging.

Luego, puedes ver esta información en los paneles personalizados en Cloud Monitoring y obtener las consultas sugeridas en Cloud Logging. También puedes exportar información de Cloud Trace, Cloud Monitoring y Cloud Logging a plataformas de terceros que elijas.

Precios

Los precios de observabilidad de microservicios son los mismos que los precios de Google Cloud Observability. El uso de Cloud Trace, Cloud Logging y Cloud Monitoring con los complementos de observabilidad de microservicios no tiene costo. Para obtener más información, consulta los precios de Google Cloud Observability.

¿Qué sigue?