Registro y monitorización del plano de control

En este documento se muestra cómo usar Cloud Logging y Cloud Monitoring para ver los registros y las métricas del plano de control de Cloud Service Mesh.

Una malla de servicios te permite observar el tráfico hacia y desde los servicios, lo que te ofrece una monitorización y depuración más completas sin necesidad de cambiar el código del servicio. Las entradas de registro pueden proporcionar información importante para solucionar problemas de su malla de servicios, incluidos registros de conexiones y desconexiones correctas, informes de errores de clientes mal configurados y alertas sobre conflictos de recursos de API.

Casos prácticos

A continuación, se muestran tres casos prácticos de registro y monitorización del plano de control:

  • Cloud Logging para el plano de control de Cloud Service Mesh: puedes almacenar, buscar, analizar y definir alertas de forma segura en todos tus datos y eventos de registro de Cloud Service Mesh con todas las funciones integradas de Logging. Cloud Service Mesh exporta registros a Logging cuando un cliente de Envoy o gRPC se conecta o se desconecta, así como cuando detecta problemas de configuración.
  • Cloud Monitoring para el plano de control de Cloud Service Mesh: Cloud Service Mesh exporta a Monitoring una métrica clave que indica el número de clientes conectados al plano de control de Cloud Service Mesh. Puedes configurar un panel de control en Monitoring y visualizar esta métrica en tiempo real para monitorizar el estado de la malla a medida que los clientes se conectan y desconectan. También te permite configurar un SLO para tu malla.
  • Soluciona los problemas de inmediato: Cloud Service Mesh exporta la telemetría a Logging y Monitoring de forma predeterminada. No es necesario realizar ninguna configuración adicional para configurar el registro y la monitorización, lo que te permite solucionar problemas en cualquier momento, incluso cuando configures la malla por primera vez.

Ver registros

Para ver los registros de Cloud Service Mesh, usa el explorador de registros. En la siguiente sección, se muestra una consulta de ejemplo para ver los registros de Cloud Service Mesh, pero puedes usar el enlace anterior para crear tu propia consulta.

  1. En la Google Cloud consola, ve a la página Explorador de registros.

    Ir al Explorador de registros

  2. En la lista Recurso,
    • Si usas las APIs de enrutamiento de servicios, selecciona Gateway Scope o Mesh.
    • Si usas las APIs antiguas, selecciona GCE Network.
  3. En la lista Nombre del registro, selecciona trafficdirector.googleapis.com/events.
  4. Haz clic en Realizar una consulta.

Campos de entrada de registro de Cloud Service Mesh

Campo Descripción
node_id ID del nodo xDS-client, tal como lo proporciona xDS-client.
client_type Tipo de cliente xDS conectado a la malla de servicios de Cloud. Posibles valores:
  • ENVOY
  • GRPC-JAVA
  • GRPC-C++
  • GRPC-PYTHON
  • GRPC-GO
  • UNKNOWN
node_ip Dirección IP del nodo proporcionada por el cliente.
api_version Versión de la API xDS que usan los clientes xDS para conectarse a la malla de servicios de Cloud. Los valores posibles son V2 y V3.
description Descripción de texto del evento con detalles adicionales.

Ejemplos de entradas de registro

Ejemplo de entrada de registro Descripción
"Cloud Service Mesh no ha encontrado ninguna configuración para el cliente xDS". Este registro se genera cuando Cloud Service Mesh rechaza al cliente de xDS porque no hay ninguna configuración. Esto puede deberse a que no se han configurado correctamente los recursos de API relevantes de Cloud Service Mesh.
"El cliente se ha conectado correctamente". Este tipo de mensaje de registro se genera cada vez que un cliente se conecta correctamente a Cloud Service Mesh.
"El cliente se ha desconectado correctamente". Este tipo de mensaje de registro se genera cada vez que se desconecta un cliente establecido de Cloud Service Mesh.
"No se ha definido la variable de metadatos TRAFFICDIRECTOR_INTERCEPTION_PORT. Existe una configuración de enrutamiento para el detector de intercepción, pero se ignorará." Este tipo de mensaje de registro se genera cuando los recursos de Cloud Service Mesh se configuran correctamente, pero la variable TRAFFICDIRECTOR_INTERCEPTION_PORT no se define en los metadatos del nodo xDS-client, por lo que esta configuración no se puede añadir al cliente.
"El receptor de intercepciones se ha creado en el puerto 15001, pero no existe ninguna configuración de enrutamiento para él." Este tipo de mensaje de registro se genera cuando la variable TRAFFICDIRECTOR_INTERCEPTION_PORT se define en los metadatos del nodo xDS-client, pero no se han configurado recursos para que Cloud Service Mesh genere una respuesta xDS completa.
"No se ha podido enviar la respuesta de ADS desde Cloud Service Mesh. La última solicitud de descubrimiento del nodo tenía una versión o un nonce incorrectos." Este tipo de mensaje de registro se genera cuando Cloud Service Mesh no puede procesar correctamente la respuesta xDS debido a una comunicación dañada del cliente xDS. Este mensaje indica un error de implementación en el cliente. Te recomendamos que consultes los registros del cliente.
"El cliente envía tráfico entre regiones al servicio de backend backend_service_id. Región de origen: source_region Regiones de destino: destination_region1, destination_region2" Este tipo de mensaje de registro se genera cuando un cliente informa a Cloud Service Mesh de que ha enviado tráfico entre regiones desde una región de origen a una o varias regiones de destino.

Ver métricas

Cloud Service Mesh exporta tres métricas a Cloud Monitoring: xDS API Connected Streams (Streams conectados a la API xDS), Request count (Número de solicitudes) y Request count by zone (Número de solicitudes por zona). xDS API Connected Streams indica el número de clientes conectados a tu plano de control. Request count indica el número de solicitudes enviadas a un servicio backend, agrupadas por región de origen, región de destino y estado de la solicitud. Número de solicitudes por zona: indica el número de solicitudes enviadas a un servicio de backend, agrupadas por zona de origen, zona de destino y estado de la solicitud. Para ver estas métricas, usa el explorador de métricas.

Para ver las métricas de Cloud Service Mesh, haz lo siguiente:

  1. En la Google Cloud consola, ve a la página Explorador de métricas.

    Ir al explorador de métricas

  2. En la lista Tipo de recurso, selecciona un recurso.
    • Si usas las APIs de enrutamiento de servicios, selecciona Gateway Scope o Mesh.
    • Si usas las APIs antiguas, selecciona Network.
  3. En la lista Métrica, selecciona connected_clients.
  4. Vuelve a la lista Tipo de recurso y, a continuación, selecciona Compute Engine Backend Service.
  5. En la lista Métrica, selecciona Request count o Request count by zone.

También puede usar una consulta para ver el número de solicitudes entre regiones:

  1. Selecciona MQL.
  2. En el campo, introduce la siguiente consulta de ejemplo:
    fetch gce_backend_service
    | metric 'trafficdirector.googleapis.com/xds/server/request_count'
    | filter ( ne(metric.source_region, metric.destination_region))
    | align rate(1m)
    | every 1m
    | group_by [metric.source_region, metric.destination_region, resource.backend_service_id],
    [value_request_count_aggregate: aggregate(value.request_count)]
    
  3. Haz clic en Realizar una consulta.

Configurar métricas y alertas basadas en registros

Para seguir los pasos que se indican a continuación, debes configurar métricas basadas en registros. Para obtener más información sobre cómo configurar métricas basadas en registros, consulta la información general.

Puedes configurar alertas para recibir notificaciones cuando aparezcan mensajes especificados por el usuario en los registros incluidos. Estas alertas pueden notificar al operador cuando ocurre algo inesperado. Por ejemplo, si un cambio en la configuración de Cloud Service Mesh provoca conflictos de recursos de API, puedes recibir una alerta en el mensaje de error. Para configurar alertas en tus métricas basadas en registros, consulta Configurar gráficos y alertas.