Logging y Monitoring para el balanceo de cargas de HTTP(S)

En este documento, se proporciona la información que necesitas con el fin de comprender Cloud Logging y Cloud Monitoring para el balanceo de cargas de HTTP(S).

Logging

Puedes habilitar, inhabilitar y ver registros para un servicio de backend de balanceo de cargas de HTTP(S).

Debes habilitar o inhabilitar el registro en cada servicio de backend. Si habilitaste el registro, puedes configurar si se registran todas las solicitudes o solo una fracción de muestra aleatoria.

Además, debes asegurarte de no tener una exclusión de registros que se aplique al balanceador de cargas de HTTP(S) externo. Consulta Visualiza las exclusiones por tipo de recurso y obtén instrucciones para verificar que se permitan los registros Cloud HTTP load balancer.

Habilita el registro en un servicio de backend nuevo

Console

  1. Ve a la página Balanceo de cargas en Google Cloud Console.
    Ir a la página Balanceo de cargas
  2. Haz clic en el nombre del balanceador de cargas.
  3. Haz clic en Editar .
  4. Haz clic en Configuración de backend.
  5. Haz clic en Editar  junto al servicio de backend.
  6. Desmarca Habilitar registro para inhabilitar por completo el registro.
  7. Si dejas habilitado el registro, puedes configurar una fracción de Tasa de muestreo diferente. Puedes configurarla en cualquier valor entre 0.01.0 (valor predeterminado). Para reducir la cantidad de registros almacenados al 20%, configura el valor en 0.2.
  8. Haz clic en Actualizar.

gcloud

gcloud compute backend-services create BACKEND_SERVICE \
 --global \
 --enable-logging \
 --logging-sample-rate=VALUE \
 ... other values

En el ejemplo anterior, se ilustra lo siguiente:

  • --global indica que este es un servicio de backend global.
  • --enable-logging habilita el registro para ese servicio de backend.
  • --logging-sample-rate=<var>VALUE</var> te permite especificar un valor entre 0.01.0, en el que 0.0 significa que no se registran paquetes y 1.0 significa que se registra el 100% de los paquetes. Solo es significativo con el parámetro --enable-logging. Si se habilita el registro, pero se configura la tasa de muestreo en 0.0, es lo mismo que inhabilitarlo.

Habilita el registro en un servicio de backend existente

Console

  1. Ve a la página Balanceo de cargas en Google Cloud Console.
    Ir a la página Balanceo de cargas
  2. Haz clic en el nombre del balanceador de cargas.
  3. Haz clic en Editar .
  4. Haz clic en Configuración de backend.
  5. Haz clic en Editar  junto al servicio de backend.
  6. Haz clic en Habilitar registro.
  7. Configura una fracción de Tasa de muestreo. Puedes establecer una tasa entre 0.01.0 (predeterminada).
  8. Haz clic en Actualizar.

gcloud

gcloud compute backend-services update BACKEND_SERVICE \
    --global \
    --enable-logging \
    --logging-sample-rate=VALUE

En el ejemplo anterior, se ilustra lo siguiente:

  • --global indica que este es un servicio de backend global.
  • --enable-logging habilita el registro para ese servicio de backend.
  • --logging-sample-rate=<var>VALUE</var> te permite especificar un valor entre 0.01.0, en el que 0.0 significa que no se registran paquetes y 1.0 significa que se registra el 100% de los paquetes. Solo es significativo con el parámetro --enable-logging. Si se habilita el registro, pero se configura la tasa de muestreo en 0.0, es lo mismo que inhabilitarlo.

Inhabilita o modifica el registro en un servicio de backend existente

Console

  1. Ve a la página Balanceo de cargas en Google Cloud Console.
    Ir a la página Balanceo de cargas
  2. Haz clic en el nombre del balanceador de cargas.
  3. Haz clic en Editar .
  4. Haz clic en Configuración de backend.
  5. Haz clic en  junto al servicio de backend.
  6. Desmarca Habilitar registro para inhabilitar por completo el registro.
  7. Si dejas habilitado el registro, puedes configurar una fracción de Tasa de muestreo diferente. Puedes establecer una tasa entre 0.01.0 (predeterminada). Para reducir la cantidad de registros almacenados al 20%, configura el valor en 0.2.
  8. Haz clic en Actualizar.

gcloud

Inhabilita el registro por completo

gcloud compute backend-services update BACKEND_SERVICE \
    --global \
    --no-enable-logging

En el ejemplo anterior, se ilustra lo siguiente:

  • --global indica que este es un servicio de backend global.
  • --no-enable-logging inhabilita el registro para ese servicio de backend.

Modifica la tasa de muestreo de registro

gcloud compute backend-services update BACKEND_SERVICE \
 --global \
 --logging-sample-rate=VALUE

En el ejemplo anterior, se ilustra lo siguiente:

  • --global indica que este es un servicio de backend global.
  • --logging-sample-rate=<var>VALUE</var> te permite especificar un valor entre 0.01.0, en el que 0.0 significa que no se registran paquetes y 1.0 significa que se registra el 100% de los paquetes. Solo es significativo con el parámetro --enable-logging. Si se habilita el registro, pero se configura la tasa de muestreo en 0.0, es lo mismo que inhabilitarlo.

Visualiza registros

Para ver los registros, ve a Visor de registros.

Los registros HTTP(S) se indexan primero mediante la regla de reenvío y, a continuación, mediante el mapa de URL.

  • Para ver todos los registros en el primer menú desplegable, selecciona Balanceador de cargas HTTP de Cloud > Todas las reglas de reenvío.
  • Para ver los registros correspondientes a una sola regla de reenvío, selecciona un solo nombre de regla de reenvío de la lista.
  • Para ver los registros correspondientes a un solo mapa de URL que usa la regla de reenvío, destaca una regla de reenvío y elige el mapa de URL que desees.

Los campos de registro de tipo booleano suelen aparecer solo si tienen el valor true. Si un campo booleano tiene un valor false, ese campo se omite del registro.

La codificación UTF-8 se aplica a los campos de registro. Los caracteres que no son caracteres UTF-8 se reemplazan por signos de interrogación.

Puedes configurar la exportación de métricas basadas en registros para registros de recursos del balanceador de cargas de HTTP(S) externo (resource.type=http_load_balancer). Las métricas creadas se basan en el recurso “Regla de balanceo de cargas de HTTP de Google Cloud (métricas basadas en registros)” (l7_lb_rule), que está disponible en los paneles de Cloud Monitoring en lugar de en el recurso https_lb_rule:

Ir a Monitoring

¿Qué se registra?

Las entradas de registro de balanceo de cargas HTTP(S) contienen información útil para supervisar y depurar el tráfico de HTTP(S). Las entradas de registro contienen los siguientes tipos de información:

  • Información general que se muestra en la mayoría de los registros, como la gravedad, el ID y el número del proyecto, la marca de tiempo y demás
  • Campos de registro de HttpRequest. Sin embargo, HttpRequest.protocol y HttpRequest.latency no se propagan para los registros de balanceo de cargas de HTTP(S) de Cloud Logging
  • Un campo statusDetails dentro de structPayload. Este campo contiene una string que explica por qué el balanceador de cargas mostró cierto estado HTTP. Las siguientes tablas contienen más explicaciones sobre estas strings de registro
  • No se registran los redireccionamientos (código de estado de respuesta HTTP 302 Encontrado) emitidos desde el balanceador de cargas. se registran los redireccionamientos emitidos desde las instancias de backend

Mensajes de éxito HTTP de statusDetail

statusDetails (exitoso) Significado Códigos de respuesta adjuntos comunes
byte_range_caching La solicitud HTTP se entregó mediante el almacenamiento en caché de rango de bytes de Cloud CDN. Cualquier código de respuesta que se puede almacenar en caché es posible.
response_from_cache La solicitud HTTP se entregó desde una caché de Cloud CDN. Cualquier código de respuesta que se pueda almacenar en caché es posible.
response_from_cache_validated El código de muestra se configuró a partir de una entrada almacenada en caché de Cloud CDN que un backend validó. Cualquier código de respuesta que se pueda almacenar en caché es posible.
response_sent_by_backend La solicitud HTTP se envió al backend de forma correcta. Se muestra desde el backend: el software que se ejecuta en el backend establece el código de respuesta HTTP.

Mensajes de error HTTP de statusDetail

statusDetails (error) Significado Códigos de respuesta adjuntos comunes
aborted_request_due_to_backend_early_response Se anuló una solicitud con cuerpo debido a que el backend envió una respuesta anticipada con un código de error. La respuesta se reenvió al cliente. La solicitud se terminó. 4XX o 5XX
backend_connection_closed_after_partial_response_sent Se cerró la conexión de backend de forma inesperada después de que se envió una respuesta parcial al cliente. El software que se ejecuta en el backend establece el código de respuesta HTTP. El código de respuesta HTTP 0 (cero) significa que el backend envió encabezados HTTP incompletos.
backend_connection_closed_before_data_sent_to_client El backend cerró su conexión con el balanceador de cargas de forma inesperada antes de que la respuesta se enviara al cliente. Esto puede suceder si el balanceador de cargas envía tráfico a otra entidad, como un balanceador de cargas de terceros que se ejecuta en una instancia de VM, que tiene un tiempo de espera de TCP más corto que el del balanceador de cargas de HTTP(S) externo de 10 minutos (600 segundos). La configuración manual del tiempo de espera de TCP (keepalive) en el servicio de destino a más de 600 segundos puede solucionar este problema. 502
backend_early_response_with_non_error_status El backend envió una respuesta sin errores (1XX o 2XX) a una solicitud antes de recibir todo el cuerpo de la solicitud. 502
backend_interim_response_not_supported El backend envió una respuesta provisional 1XX a la solicitud en un contexto en que las respuestas provisionales no son compatibles. 502
backend_response_corrupted El cuerpo de la respuesta HTTP que envió el backend tiene una codificación de transferencia fragmentada no válida o está dañado. Cualquier código de respuesta posible según la naturaleza del daño A menudo, 502.
backend_response_headers_too_long Los encabezados de respuesta HTTP que envió el backend superaron el límite permitido. Consulta los límites de Tamaño del encabezado para el balanceo de cargas de HTTP(S) a fin de obtener más información. 502
backend_timeout Se agotó el tiempo de espera del backend mientras se generaba una respuesta. 502
body_not_allowed El cliente envió una solicitud HTTP con un cuerpo, pero el método HTTP usado no permite un cuerpo. 400
byte_range_caching_aborted El balanceador de cargas recibió antes una respuesta que indicaba que el recurso se podía almacenar en caché y era compatible con rangos de bytes, pero Cloud CDN recibió una respuesta incoherente (por ejemplo, un código de respuesta distinto del 206 Contenido parcial esperado) cuando intentó realizar el llenado de caché mediante una solicitud de rango de bytes. Como resultado, el balanceador de cargas anuló la respuesta al cliente. 2XX
byte_range_caching_forwarded_backend_response El balanceador de cargas recibió antes una respuesta que indicaba que el recurso se podía almacenar en caché y era compatible con rangos de bytes, pero Cloud CDN recibió una respuesta incoherente (por ejemplo, un código de respuesta distinto del 206 Contenido parcial esperado) cuando intentó realizar el llenado de caché mediante una solicitud de rango de bytes. El balanceador de cargas reenvió la respuesta incoherente al cliente. Se muestran desde el backend: cualquier código de respuesta es posible.
byte_range_caching_retrieval_abandoned El usuario canceló una solicitud de rango de bytes o una solicitud de validación que inició Cloud CDN. Se muestran desde el backend: cualquier código de respuesta es posible.
byte_range_caching_retrieval_from_backend_failed_after_partial_response Se produjo un error con una solicitud de rango de bytes o una solicitud de validación que inició Cloud CDN. Consulta la entrada de registro de Cloud Logging correspondiente a la solicitud que inició Cloud CDN para el estado del backend detallado. 2XX
cache_lookup_failed_after_partial_response El balanceador de cargas no pudo entregar una respuesta completa desde la caché de Cloud CDN debido a un error interno. 2XX
cache_lookup_timeout_after_partial_response Se agotó el tiempo de espera de la transmisión de búsqueda de caché de Cloud CDN porque el cliente no recuperó el contenido de manera oportuna. 2XX
client_disconnected_after_partial_response La conexión con el cliente se interrumpió después de que el balanceador de cargas enviara una respuesta parcial. Se muestran desde el backend: cualquier código de respuesta es posible.
client_disconnected_before_any_response La conexión con el cliente se interrumpió antes de que el balanceador de cargas enviara cualquier respuesta. 0
client_timed_out Google Front End (GFE) dejó inactiva la conexión del cliente debido a la falta de progreso cuando se enviaba la solicitud o la respuesta mediante proxy. 0 o 408
denied_by_security_policy El balanceador de cargas rechazó esta solicitud debido a una política de seguridad de Cloud Armor. Se configuran en la política de seguridad.
error_uncompressing_gzipped_body Se produjo un error cuando se descomprimía una respuesta HTTP comprimida. 503
failed_to_connect_to_backend No se pudo conectar el balanceador de cargas al backend. Esto incluye los tiempos de espera durante la fase de conexión. 502
failed_to_pick_backend El balanceador de cargas no pudo elegir un backend en buen estado para manejar la solicitud. 502
failed_to_negotiate_alpn El balanceador de cargas y el backend no pudieron negociar un protocolo de capa de aplicación (como HTTP/2) para comunicarse entre sí a través de TLS. 502
headers_too_long Los encabezados de solicitud eran mayores que el máximo permitido. 413
http_version_not_supported No se admite la versión HTTP. Por el momento, solo son compatibles HTTP 0.9, 1.0, 1.1 y 2.0. 400
internal_error Error interno en el balanceador de cargas. Por lo general, representa un error transitorio en la infraestructura del balanceador de cargas. Vuelve a intentar realizar la consulta. 4XX
invalid_external_origin_endpoint La configuración del origen personalizado no es válida. Revisa la configuración de NEG de Internet y asegúrate de que especifique un puerto y una dirección FQDN/IP válidos. 4XX
invalid_http2_client_header_format Los encabezados HTTP/2 del cliente no son válidos. 400
malformed_chunked_body El cuerpo de la solicitud estaba codificado en un fragmento incorrecto. 411
request_loop_detected El balanceador de cargas detectó un bucle de solicitud. Esto podría deberse a una configuración incorrecta en la que el backend reenvió la solicitud al balanceador de cargas. 502
required_body_but_no_content_length La solicitud HTTP requiere un cuerpo, pero los encabezados de solicitud no incluían una longitud de contenido ni un encabezado fragmentado de codificación de transferencia. 400 o 403
secure_url_rejected Se recibió una solicitud con una URL https:// a través de una conexión HTTP/1.1 de texto simple. 400
ssl_san_verification_failed El balanceador de cargas no pudo encontrar un SAN (Nombre alternativo de la entidad) en el certificado SSL que presentó el backend que coincida con el nombre de host configurado. 502
ssl_certificate_chain_verification_failed El certificado SSL que presentó el backend no pasó la verificación del certificado SSL. 502
unsupported_method El cliente proporcionó un método de solicitud HTTP no compatible. 400
upgrade_header_rejected La solicitud HTTP del cliente contenía el encabezado Actualizar y se rechazó. 400
uri_too_long El URI de solicitud HTTP era mayor que la longitud máxima permitida. 414
websocket_closed Se cerró la conexión de WebSocket. 101
websocket_handshake_failed Se produjo un error en el protocolo de enlace de WebSocket. Cualquier código de respuesta posible según la naturaleza de la falla del protocolo de enlace
request_body_too_large El cuerpo de la solicitud HTTP superó el máximo que admite el backend. No aplicable para backends de VM. 413
handled_by_identity_aware_proxy Identity-Aware Proxy generó esta respuesta durante la verificación de identidad del cliente antes de permitir el acceso. 200, 302, 400, 401, 403, 500, 502
serverless_neg_routing_failed No se puede enviar la solicitud NEG sin servidores. Esto puede suceder cuando no se puede acceder a la región especificada en el NEG o cuando no se puede encontrar el nombre del recurso (por ejemplo, el nombre de Cloud Functions). 404, 502

Registro para lista de IP denegadas o permitidas

Las siguientes entradas de registro en el visor de registros son para registros de listas de IP de HTTP(S) denegadas o permitidas y, además, incluyen la siguiente estructura en jsonPayload. Los detalles de la solicitud HTTP aparecen en el mensaje httpRequest.

  • status_details (string): Una descripción textual del código de respuesta
  • enforced_security_policy: La regla de política de seguridad que se aplicó
    • outcome (string): ACCEPT, DENY o UNKNOWN_OUTCOME
    • configured_action (string): igual que outcome
    • name (string): nombre de la política de seguridad
    • priority (número): Prioridad de regla coincidente
  • preview_security_policy: Se propaga si la solicitud alcanzó una regla configurada para la vista previa (solo está presente si una regla de vista previa tuvo prioridad sobre la regla aplicada)
    • outcome (string): ACCEPT, DENY o UNKNOWN_OUTCOME
    • configured_action (string): igual que outcome
    • name (string): nombre de la política de seguridad
    • priority (número): prioridad de regla coincidente

Puedes interactuar con los registros del balanceador de cargas de HTTP(S) externo mediante la API de Cloud Logging. La API de Logging proporciona formas de filtrar de forma interactiva los registros que tienen configurados campos específicos y de exportar los que coincidan a Cloud Logging, Cloud Storage, BigQuery o Pub/Sub. Para obtener más información sobre la API de Cloud Logging, consulta Visualiza registros.

Monitoring

El balanceo de cargas de HTTP(S) exporta los datos de supervisión a Cloud Monitoring.

Se pueden usar las métricas de Monitoring para los siguientes fines:

  • Evaluar la configuración, el uso y el rendimiento de un balanceador de cargas
  • Solucionar problemas
  • Mejorar el uso de recursos y la experiencia del usuario

Además de los paneles predefinidos en Cloud Monitoring, puedes crear paneles personalizados, configurar alertas y consultar las métricas a través de la API de Cloud Monitoring.

Visualiza los paneles de Cloud Monitoring

  1. En Google Cloud Console, ve a Monitoring.

    Ir a Monitoring

  2. Si el panel de navegación de Monitoring muestra Servicios, selecciona Servicios > Balanceador de cargas de Cloud. Para ver el panel de un balanceador de cargas específico, ubica el balanceador de cargas en la lista y, luego, haz clic en su nombre.

  3. De lo contrario, selecciona Paneles:

    • Para ver una lista de paneles de los balanceadores de cargas de Google Cloud, selecciona el panel llamado Balanceadores de cargas de Google Cloud. Para ver el panel de un balanceador de cargas específico, ubica el balanceador de cargas en la lista y haz clic en su nombre.

    • Para ver una lista de los paneles de los balanceadores de cargas de AWS, selecciona el panel llamado Amazon Web Services. Para ver el panel de un balanceador de cargas específico, ubica el balanceador de cargas en la lista y haz clic en su nombre.

En el panel izquierdo, puedes ver varios detalles de este balanceador de cargas de HTTP(S) externo. En el panel derecho, puedes ver gráficos de serie temporal. Haz clic en el vínculo Desglose para ver desgloses específicos.

Define las políticas de alertas

Puedes crear políticas de alertas para supervisar los valores de las métricas y que se te notifique cuando estas infrinjan una condición. A continuación, se enumeran los pasos generales para crear una política de alertas que supervise los recursos de la regla de balanceo de cargas de HTTP/S de Google Cloud.

  1. En Google Cloud Console, ve a Monitoring o usa el siguiente botón:
    Ir a Monitoring
  2. En el panel de navegación de Monitoring, selecciona  Alertas y, luego, Crear política.
  3. Ingresa un nombre para la política de alertas.
  4. Haz clic en Agregar condición:
    1. En la configuración del panel Destino, se especifican el recurso y la métrica que se supervisarán. Haz clic en el cuadro de texto para habilitar un menú y, luego, selecciona la regla de balanceo de cargas de HTTP/S de Google Cloud HTTP/S del recurso. A continuación, selecciona una métrica de la lista correspondiente.
    2. La configuración del panel Configuración de la política de alertas determina cuándo se activa la alerta. La mayoría de los campos de este panel se propagan con valores predeterminados. Para obtener más información sobre los campos del panel, consulta Configuración en la documentación de la política de alertas.
    3. Haz clic en Agregar.
  5. Haz clic en Agregar canal de notificaciones e ingresa la información del canal de notificaciones (opcional).
  6. Haz clic en Documentación y agrega cualquier dato que desees incluir en un mensaje de notificación (opcional).
  7. Haz clic en Guardar.
Para obtener más información, consulta Políticas de alertas.

Define los paneles personalizados de Cloud Monitoring

Puedes crear paneles personalizados de Cloud Monitoring a través de las métricas de balanceo de cargas de HTTP(S):

  1. En Google Cloud Console, ve a Monitoring.
    Ir a Monitoring
  2. Selecciona Paneles > Crear panel.
  3. Haz clic en Agregar gráfico.
  4. Ponle un título al gráfico.
  5. Selecciona métricas y filtros. Para las métricas, el tipo de recurso es Balanceador de cargas de HTTP de Cloud.
  6. Haz clic en Guardar.

Frecuencia y retención de informes de métricas

Las métricas de los balanceadores de cargas de HTTP(S) externos se exportan a Cloud Monitoring en lotes con un nivel de detalle de 1 minuto. Los datos de supervisión se conservan durante seis (6) semanas. El panel proporciona un análisis de datos en intervalos predeterminados de 1 hora (una hora), 6 horas (seis horas), 1 día (un día), 1 semana (una semana) y 6 semanas (seis semanas). Puedes solicitar un análisis de forma manual en cualquier intervalo de 6 semanas a 1 minuto.

Métricas de supervisión para balanceadores de cargas de HTTP(S) externos

Las siguientes métricas para balanceadores de cargas de HTTP(S) externos se informan en Cloud Monitoring:

Métrica Nombre Descripción
Recuento de solicitudes https/request_count La cantidad de solicitudes que entrega el balanceador de cargas HTTP(S) externo
Recuento de bytes de solicitud https/request_bytes_count La cantidad de bytes enviados como solicitudes de los usuarios al balanceador de cargas HTTP(S) externo
Recuento de bytes de respuesta https/response_bytes_count La cantidad de bytes enviados como respuesta del balanceador de cargas HTTP(S) externo a los usuarios
Latencias totales https/total_latencies Una distribución de la latencia que se mide desde el momento en que GFE recibe el primer byte de la solicitud hasta que recibe un mensaje ACK del cliente solicitante en el último byte de respuesta. Las solicitudes y las respuestas miden las latencias totales, por lo que las pausas entre solicitudes en la misma conexión mediante Connection: keep-alive no afectan la medición. Por lo general, esta medición se reduce al percentil 95 en las vistas de Cloud Monitoring.

Ejemplo: un balanceador de cargas tiene 1 solicitud por segundo del Reino Unido, todas con una latencia de 100 ms, y 9 solicitudes por segundo de los EE.UU., todas con una latencia de 50 ms. En un determinado momento, hubo 60 solicitudes del Reino Unido y 540 solicitudes de los EE.UU. Las métricas de Monitoring conservan la distribución en todas las dimensiones. Puedes solicitar lo siguiente:
  • latencia general mediana (300/600): 50 ms
  • latencia mediana del Reino Unido (30/60): 100 ms
  • latencia general del percentil 95 (570/600): 100 ms
  • y así sucesivamente…
RTT de frontend(*) https/frontend_tcp_rtt Una distribución del RTT suavizado que se mide para cada conexión entre el cliente y el GFE (se mide por la pila TCP de GFE)
Latencias de backend(*) https/backend_latencies Una distribución de la latencia que se mide desde el momento en que GFE envió el primer byte de la solicitud al backend hasta que GFE recibió el último byte de respuesta del backend
Fracción de clase de código de respuesta Fracción de las respuestas totales del balanceador de cargas HTTP(S) externo que se encuentran en cada clase de código de respuesta (2XX, 4XX, …). En Cloud Monitoring, este valor solo está disponible en los paneles predeterminados. No está disponible para los paneles personalizados. Puedes configurar alertas a través de la API.
Recuento de solicitudes de backend https/backend_request_count La cantidad de solicitudes enviadas desde el balanceador de cargas HTTP(S) externo a los backends.
Recuento de bytes de solicitudes de backend https/backend_request_bytes_count La cantidad de bytes enviados como solicitudes del balanceador de cargas HTTP(S) externo a los backends.
Recuento de bytes de respuesta de backend https/backend_response_bytes_count La cantidad de bytes enviados como respuestas de los backends al balanceador de cargas de HTTP(S)

(*) No se garantiza que la suma del RTT de frontend y las latencias de backend sea menor o igual que las latencias totales. Esto se debe a que, aunque sondeamos el RTT a través del socket de GFE al cliente en el momento en que se confirma la respuesta HTTP, confiamos en el informe del kernel en algunas de estas mediciones y no podemos garantizar que el kernel tenga una medición del RTT para una respuesta HTTP determinada. El resultado final es un valor suavizado de RTT que también se ve afectado por las respuestas HTTP anteriores, SYN/ACK y los protocolos de enlace SSL que no afectan los tiempos reales de las solicitudes HTTP actuales.

Filtra las dimensiones de las métricas del balanceador de cargas de HTTP(S) externo

Las métricas se agregan para cada balanceador de cargas de HTTP(S) externo. Puedes filtrar métricas agregadas por las siguientes dimensiones(*).

Propiedad Descripción
ALCANCE DEL BACKEND El alcance de GCP (región o zona) del grupo de instancias del servicio de backend que entregó la conexión.

Si no había ningún grupo de instancias disponible o si otra entidad entregó la solicitud, verás uno de los siguientes valores en lugar de la región o la zona del grupo de instancias del servicio de backend.
  • FRONTEND_5XX: Se produjo un error interno antes de que GFE pudiera seleccionar un backend. GFE mostró 5XX al cliente.
  • INVALID_BACKEND: GFE no pudo encontrar un backend en buen estado para asignarle la solicitud, por lo que mostró una respuesta 5XX al solicitante.
  • NO_BACKEND_SELECTED: Se produjo una interrupción o un error antes de que se pudiera seleccionar un backend.
  • SERVED_FROM_BACKEND_BUCKET: Un depósito de backend manejó la solicitud, no un grupo de instancias del servicio de backend.
  • SERVED_FROM_CACHE: Una caché de GFE controló la solicitud, por lo que no se asignó ningún backend.
  • MULTIPLE_BACKENDS: Varios potenciales backends entregaron la solicitud. La caché envío una o más solicitudes de rango de bytes a un backend diferente. Usa el desglose de BACKEND_SCOPE para ver cada solicitud de balanceador de cargas a backend.

Cuando se elige este desglose, los gráficos muestran las métricas de backend (balanceador de cargas a backends) y no las métricas de frontend (cliente a balanceador de cargas).
ZONA DEL BACKEND Si el grupo de instancias era un grupo de instancias zonales, es la zona de GCP del grupo de instancias que entregó la solicitud del usuario. (Ejemplos: us-central1-a, europe-west1-b, asia-east1-c).

Cuando se selecciona este desglose, los gráficos muestran las métricas de backend (balanceador de cargas a backends) y no las métricas frontend (cliente a balanceador de cargas).
REGIÓN DEL BACKEND Si el grupo de instancias era un grupo de instancias regional, es la región de GCP del grupo de instancias que entregó la solicitud del usuario. (Ejemplos: us-central1, europe-west1, asia-east1).

Cuando se selecciona este desglose, los gráficos muestran las métricas de backend (balanceador de cargas a backends) y no las métricas frontend (cliente a balanceador de cargas).
CONTINENTE DEL PROXY El continente de GFE HTTP(S) que finalizó la conexión HTTP(S) del usuario. Ejemplos: America, Europe, Asia.
GRUPO DE INSTANCIAS El nombre del grupo de instancias que entregó la solicitud del usuario.

Si no había ningún grupo de instancias disponible o si otra entidad entregó la solicitud, verás uno de los siguientes valores en lugar de un grupo de instancias.
  • FRONTEND_5XX: Se produjo un error interno antes de que GFE pudiera seleccionar un backend. GFE mostró 5XX al cliente.
  • INVALID_BACKEND: GFE no pudo encontrar un backend en buen estado para asignarle la solicitud, por lo que mostró una respuesta 5XX al solicitante.
  • NO_BACKEND_SELECTED: Se produjo una interrupción o un error antes de que se pudiera seleccionar un backend.
  • INVALID_BACKEND: GFE no pudo encontrar un backend válido en buen estado, por lo que mostró 5XX al solicitante.
  • SERVED_FROM_BACKEND_BUCKET: Un depósito de backend manejó la solicitud, no un grupo de instancias del servicio de backend.
  • SERVED_FROM_CACHE: Cloud CDN controló la solicitud, por lo que no se asignó ningún backend.
  • MULTIPLE_BACKENDS: Varios backends entregaron la solicitud.

Cuando se elige este desglose, los gráficos muestran las métricas de backend (balanceador de cargas a backends) y no las métricas de frontend (cliente a balanceador de cargas).
SERVICIO DE BACKEND El nombre del servicio de backend que entregó la solicitud del usuario.
REGLA DE URL COINCIDENTE La regla de ruta del mapa de URL que coincide con el prefijo de la solicitud HTTP(S) del usuario (hasta 50 caracteres).
REGLA DE REENVÍO El nombre de la regla de reenvío que utiliza el cliente para enviar la solicitud.

(*) Actualmente, la métrica "Fracción de clase de código de respuesta" está disponible solo para todo el balanceador de cargas, sin desgloses adicionales disponibles.

Próximos pasos