Las herramientas de observabilidad de microservicios te permiten instrumentar tus aplicaciones para recoger y presentar datos de telemetría en Cloud Monitoring, Cloud Logging y Cloud Trace desde cargas de trabajo de gRPC desplegadas en Google Cloudy en otros lugares.
Esta documentación está dirigida a propietarios de servicios gRPC, ingenieros de fiabilidad de sitios y cualquier persona que use datos de telemetría para solucionar problemas y optimizar cargas de trabajo de gRPC.
La observabilidad envuelve los complementos OpenCensus para métricas, trazas y registro de gRPC en un único complemento unificado, sin exponer ninguna dependencia. La observabilidad de microservicios usa datos de observabilidad integrados con Cloud Monitoring, Cloud Logging y Cloud Trace. En la documentación se explica cómo incorporar complementos de observabilidad a tus aplicaciones gRPC.
Para ayudarte a recoger información y depurar tus aplicaciones, la observabilidad de microservicios incluye las siguientes funciones:
- Generación de registros de eventos de RPC a nivel de transporte.
- Compatibilidad con el análisis de trazas distribuido.
- Compatibilidad con Cloud Monitoring, incluidos los paneles de control predefinidos.
- Consultas sugeridas de Cloud Logging.
- Etiquetas de recurso 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 de cada lenguaje de gRPC (C++, Go y Java) están integrados con Google Cloud Observability de forma predeterminada. Con una configuración mínima, el complemento obtiene metadatos sobre tu proyecto y tu implementación, y configura las cantidades predeterminadas de generación de datos de seguimiento, métricas y registro.
Inspeccionar eventos a nivel de transporte de RPC
El ciclo de vida de una llamada a procedimiento remoto (RPC) puede contener eventos de metadatos, incluidos encabezados y tráilers; eventos de mensajes; eventos de estado, incluido el estado OK y el estado de error; y eventos de finalización. Cuando usas la observabilidad de microservicios, puedes inspeccionar los detalles de cada tipo de evento. Puedes inspeccionar la longitud del mensaje serializado, la autoridad, las direcciones del cliente y del servidor, y si el cliente o el servidor cancelaron la llamada a procedimiento remoto.
Con la configuración explícita, la observabilidad de los microservicios puede habilitar el registro de cargas útiles para mensajes o encabezados. Puedes definir límites de tamaño para los registros de carga útil, los registros de carga útil de control de mensajes o los registros de carga útil de encabezado por separado. También puede especificar el grupo de destino de los métodos con o sin comodines.
Compatibilidad con el análisis de trazas distribuido para RPCs
La arquitectura del servidor puede permitir que una RPC se extienda a varias llamadas o solicitudes independientes que fluyen a través de los componentes. La observabilidad de los microservicios usa el rastreo distribuido para facilitar el análisis y la solución de problemas de sistemas complejos. El producto de observabilidad de microservicios ofrece compatibilidad integrada con aplicaciones gRPC para iniciar trazas, generar spans y propagar el contexto de la traza.
Capturar mediciones para la monitorización de métricas
El complemento ofrece asistencia propia para una amplia gama de métricas a nivel de mensaje, RPC o método, desde recuentos y tamaños de mensajes hasta latencias. Las mediciones se suben a Cloud Monitoring. Puede consultar las métricas recogidas con el explorador de métricas de Cloud Monitoring, que tiene un panel de control con un conjunto de gráficos predefinidos. También puedes presentar las métricas en tus propios paneles de control personalizados.
Correlación de trazas y registros
Las trazas 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 o problema. En conjunto, los rastreos y los registros te ofrecen una imagen detallada de los errores o problemas, lo que te permite comprender mejor las RPCs que abarcan diferentes sistemas. La observabilidad de los microservicios correlaciona automáticamente los registros con los rastreos, que se muestrean en función de las decisiones de muestreo de nivel superior o de las tasas de muestreo definidas por el usuario.
Etiquetas de recurso y etiquetas personalizadas
Para que te resulte más eficaz 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, como 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 intervalo en los datos de seguimiento.
- Como etiquetas de métricas en los datos de métricas.
- Como etiquetas de entrada de registro para registrar datos.
Las etiquetas personalizadas son útiles cuando quiere incluir versiones de origen o nombres de servicio canónicos. Puedes usarlos para añadir información específica de los usuarios, lo que ayuda a identificar datos de observabilidad concretos en tus registros, métricas y trazas.
Consultas sugeridas
La observabilidad de microservicios proporciona automáticamente varias consultas sugeridas en Cloud Logging. Para obtener información completa, consulta Consultas sugeridas.
Arquitectura
En el siguiente diagrama se muestra cómo recoge y proporciona datos de observabilidad la observabilidad de microservicios:
Primero, especifica la configuración de observabilidad de tu carga de trabajo de gRPC. La configuración de observabilidad consta de campos que se definen en una variable de entorno. En la configuración se definen los siguientes elementos:
- Intervalos de traza 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.
A continuación, puedes ver esta información en los paneles de control personalizados de Cloud Monitoring y obtener 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 la observabilidad de microservicios son los mismos que los de Google Cloud Observability. No se aplican cargos adicionales por usar Cloud Trace, Cloud Logging y Cloud Monitoring con los complementos de observabilidad de microservicios. Para obtener más información, consulta los precios de Google Cloud Observability.
Siguientes pasos
Para obtener información sobre cómo configurar la observabilidad de microservicios, consulta el artículo Configurar la observabilidad de microservicios.
Para obtener información detallada sobre los datos de configuración, las definiciones de seguimiento, las definiciones de métricas y las definiciones de registros, consulta la referencia de observabilidad de microservicios.