Descripción general del registro de solicitudes

Media CDN registra cada solicitud HTTP en Cloud Logging. Estas solicitudes incluyen solicitudes del cliente al recurso EdgeCacheService y solicitudes del recurso EdgeCacheOrigin al origen configurado para los rellenos de caché. Por lo general, los registros se entregan casi en tiempo real. Esto incluye la posibilidad de realizar consultas en Logging y exportarse a Cloud Storage y Pub/Sub.

Las entradas de registro contienen los siguientes tipos de información:

  • Información general que se muestra en la mayoría de los registros de Google Cloud, como la gravedad, el ID del proyecto, el número del proyecto y la marca de tiempo.
  • Campos de registro de HttpRequest
  • Metadatos adicionales sobre la solicitud dentro de structPayload, incluidos los siguientes:

    • ASN del cliente
    • Datos de ubicación del cliente
    • ID (ciudad) de las cachés que se usaron para entregar la respuesta
    • Tiempo hasta el primer byte (TTFB) y tiempo hasta el último byte (TTLB), en milisegundos, para la respuesta a nivel de HTTP
    • nombre de host de SNI de TLS
    • Versión usada de TLS
    • Información sobre los datos comunes de clientes multimedia (CMCD)

Campos específicos de la caché

El objeto jsonPayload de un registro de Media CDN contiene metadatos específicos sobre cómo Media CDN entrega un objeto, si se almacenó en caché y los estados de error que se encontraron.

Estos campos, así como los valores de ejemplo, se muestran en la siguiente tabla.

Campo Valor de ejemplo Detalles
backendInitialLatency 0.126644940s

La Duración el backend responde inicialmente a una solicitud. Se mide desde que la CDN termina de enviar la solicitud al origen mediante proxy hasta que la CDN comience a recibir bytes de respuesta del origen.

Este campo solo aparece en los registros del relleno de caché de un recurso EdgeCacheOrigin.

backendLatency 0.126666342s

La duración que tarda el backend en responder por completo a una solicitud. Se mide desde el momento en que la CDN haya terminado de enviar la solicitud mediante proxy al origen hasta que la CDN reciba la respuesta del backend.

Este campo solo aparece en los registros del relleno de caché de un recurso EdgeCacheOrigin.

cacheId maa-123456 El código IATA (aeropuerto) de la ciudad más cercana a la caché y un identificador opaco de la instancia de la caché Si se requieren varios niveles de almacenamiento en caché para entregar la solicitud debido a un error de caché completo o parcial, se proporciona la cadena de ubicaciones de caché, por ejemplo, del-234567, bom-345678, sin-456789, donde la caché más a la derecha es la más cercana al usuario.
cacheKeyFingerprint f63925711b0dd8a9ff861cd303774e6e

Una huella digital opaca de la clave de caché. Las solicitudes que se asignan a la misma clave de caché (por ejemplo, las solicitudes en las que no se incluyen los parámetros de consulta o el host) deben tener la misma huella digital.

Si la cantidad total de solicitudes es similar a la cantidad total de huellas digitales únicas, es posible que tus claves de caché sean demasiado específicas.

cacheMode USE_ORIGIN_HEADERS El cdnPolicy.cacheMode configurado en la ruta que coincidía con esta solicitud.
cacheStatus

Cache hit: hit

Full cache miss: fetch, miss, miss

El estado de la caché en cada nodo de caché entre el usuario y el escudo de origen, en el que el valor de la derecha representa la caché más cercana al usuario. Para obtener más información sobre cómo interpretar este campo, consulta Valores de estado de la caché.
clientAsn El ASN (número de sistema autónomo), según la dirección IP del cliente que se conecta
clientCity Mountain View

Nombre de la ciudad desde la que se originó la solicitud, por ejemplo, Mountain View, California.

Esto también se puede agregar a los encabezados de solicitud y respuesta, y duplica la variable de encabezado client_city.

clientRegionCode US

El país (o región) asociado a la dirección IP del cliente. Este es un código de región CLDR de Unicode, como US o FR. En la mayoría de los países, estos códigos corresponden directamente a los códigos ISO-3166-2.

Esto también se puede agregar a los encabezados de solicitud y respuesta, y duplica la variable de encabezado client_region.

cmcd La CMCD claves en la solicitud del cliente que ayudan a informar la calidad del cliente de servicio. Media CDN admite datos transmitidos a través de Los encabezados de la solicitud HTTP o los parámetros de consulta, y no registran los valores de las siguientes claves: dl (fecha límite), nor (próxima solicitud de objeto), nrr (solicitud de rango siguiente), ot (tipo de objeto), rtp (capacidad de procesamiento máxima solicitada), sf (formato de transmisión) su (inicio), tb (tasa de bits superior), o v (versión CMCD).
enforcedSecurityPolicy La política de seguridad perimetral de Google Cloud Armor que se aplica a la solicitud del cliente. Esto incluye información adicional sobre el nombre de la política, su prioridad y la acción que se realizó.
httpTtfb 0.157228207s La duración que transcurre desde que el proxy comienza a recibir bytes de solicitud hasta que se envía el primer byte de la respuesta (no se recibe).
latency 0.157415635s La duración desde que el proxy comienza a recibir bytes de solicitud hasta que termina de escribir la respuesta al cliente.
location El encabezado Location en la respuesta.
metroIataCode MAA Es el código IATA (aeropuerto) de la ciudad más cercana al proxy.
origin El recurso EdgeCacheOrigin desde el cual se envió la respuesta mediante proxy.
originalRequestId 19d92668-3948-49d8-9244-25f8252043e4 El identificador único asignado a la solicitud que generó esta respuesta en un principio. Se propaga solo si es diferente de request_id para las respuestas almacenadas en caché.
originIp La dirección IP que se usa para comunicarse con el recurso EdgeCacheOrigin desde el que se envió la respuesta mediante proxy.
proxyRegionCode US Es el país (o la región) en el que se encuentra el proxy. Este es un código de región CLDR de Unicode, como US o FR. En la mayoría de los países, estos códigos corresponden directamente a los códigos ISO-3166-2.
proxyStatus Es una lista de proxies HTTP intermedios en la ruta de respuesta. El valor se define según la RFC 9209. Esto corresponde a la variable de encabezado dinámico proxy_status.
rangeHeader El encabezado Range en la solicitud.
requestId 4bde6381-cd17-47e1-8c2a-1aaa424a1156 Es el identificador único que el proxy asigna a la solicitud.
tlsCipherSuite 009C El conjunto de algoritmos de cifrado negociado durante el protocolo de enlace TLS. El valor son cuatro dígitos hexadecimales definidos por el registro del conjunto de algoritmos de cifrado TLS de IANA, por ejemplo, 009C para TLS_RSA_WITH_AES_128_GCM_SHA256. Este valor está vacío para conexiones de cliente sin encriptar.
tlsSniHostname Indicación del nombre del servidor (como se define en RFC 6066), si el cliente la proporciona durante el protocolo de enlace de TLS o QUIC. El nombre de host se pasa a minúsculas y se quita cualquier punto final.
tlsVersion TLS 1.3 Versión de TLS negociada entre el cliente y la CDN durante el protocolo de enlace SSL. Los valores posibles son TLS 1, TLS 1.1, TLS 1.2 y TLS 1.3.

Ejemplo de una entrada de registro

A continuación, se proporciona una entrada de registro de ejemplo de una respuesta entregada desde la caché:

{
  "insertId": "617fa16e-0000-2ac9-9993-d4f547fe67d4@a1",
  "jsonPayload": {
    "@type": "type.googleapis.com/google.cloud.edgecache.v1.EdgeCacheLogEntry",
    "tlsVersion": "TLS 1.3",
    "tlsCipherSuite": "009C", // hex digits for the cipher negotiated
    "cacheId": "maa-132eed13faa13",
    "clientAsn": "9299", // AS the client is associated with
    "origin": "example_origin",
    "clientRegionCode": "IN",
    "metroIataCode": "bom",
    "clientCity": "Mumbai", // City name, in English
    "latency": "0.005105200s",
    "proxyStatus": "Google-Edge-Cache",
    "httpTtfb": "0.005056080s",
    "cacheMode": "FORCE_CACHE_ALL",
    "cacheKeyFingerprint": "c360ac18849b6336",
    "cacheStatus": "hit,stale",
    "enforcedSecurityPolicy": {
      "outcome": "ACCEPT",
      "configuredAction": "ACCEPT",
      "name": "example_policy",
      "priority": 1000
    },
    "originalRequestId": "19d92668-3948-49d8-9244-25f8252043e5",
    "proxyRegionCode": "IN",
    "requestId": "4bde6381-cd17-47e1-8c2a-1aaa424a1156",
    "originIp": "74.125.128.128"
  },
  "httpRequest": {
    "requestMethod": "GET",
    "requestUrl": "https://example.com/image.jpg",
    "requestSize": "3545",
    "status": 200,
    "responseSize": "3716",
    "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36",
    "remoteIp": "62.36.0.43",
    "protocol": "HTTP/2"
  },
  "resource": {
    "type": "edgecache.googleapis.com/EdgeCacheRouteRule",
    "labels": {
      "matched_path": "/",
      "path_matcher_name": "routes",
      "service_name": "example_service",
      "resource_container": "projects/123456789",
      "location": "global",
      "route_destination": "projects/123456789/locations/global/edgeCacheOrigins/example_origin",
      "route_type": "ORIGIN"
    }
  },
  "timestamp": "2022-11-19T00:24:13.695328200Z",
  "logName": "projects/my-project/logs/edgecache.googleapis.com%2Fedge_cache_request",
  "receiveTimestamp": "2022-11-19T00:24:16.715871645Z"
}

Puedes configurar el registro de solicitudes de varias maneras. Para reducir el volumen de registros y los cargos generales de registro, los registros se pueden muestrear o filtrar según sea necesario.

También puedes enrutar los registros a Pub/Sub, Cloud Storage o BigQuery. para analizarlos en Google Cloud o en tus herramientas de análisis de registros.

Políticas de retención

El registro admite la configuración de políticas de retención personalizadas, incluso por receptor.

¿Qué sigue?