En esta página, se muestra cómo configurar y usar Cloud Logging y Cloud Monitoring con los complementos de Service Extensions para Media CDN.
Logging
En esta sección, se describen los registros de Service Extensions para los complementos de Media CDN y cómo puedes ver y correlacionar la información en los mensajes de registro.
Mensajes de registro
Las extensiones del servicio admiten la generación de mensajes de registro durante la ejecución de tu complemento. El registro de registros está inhabilitado de forma predeterminada. Para registrar registros de un complemento, habilítalo cuando crees el complemento o lo actualices.
Los registros de complementos se anotan con la siguiente información contextual:
- Anotaciones de registro estándar, como la marca de tiempo y el nivel de registro
- La identidad del complemento que generó el mensaje
- La devolución de llamada del complemento callback en la que se generó el mensaje de registro
- Un identificador de seguimiento
requestIdque ayuda a determinar el registro de solicitud con el que se asocia un mensaje de registro
Los registros pertinentes a las Service Extensions se encuentran en una de las siguientes categorías:
Mensajes de registro de complementos
Se generan mediante una llamada de registro, como
info!(...)para Rust,proxywasm.LogInfo(...)para Go oLOG_INFOpara C++. Las extensiones del servicio exportan estos mensajes de registro a Cloud Logging. Puedes registrar los encabezados de solicitud y respuesta, y cualquier acción que haya realizado el complemento.Puedes ver estos mensajes con el
networkservices.googleapis.comservicio.Mensajes de registro de Media CDN
Mensajes de registro de Media CDN para solicitudes HTTP a
EdgeCacheServicerecursos con una acción de Wasm asociada. Estas son entradas de registro de Media CDN normales que se pueden ver en el servicioedgecache.googleapis.com.
Habilita el registro para un complemento
Las extensiones del servicio admiten la generación de mensajes de registro durante la ejecución de tu complemento. El registro de registros está inhabilitado de forma predeterminada.
Para registrar registros de un complemento, habilítalo cuando lo crees o lo actualices.
Para habilitar el registro de un complemento existente, usa el
gcloud beta service-extensions wasm-plugins update comando:
gcloud beta service-extensions wasm-plugins update WASM_PLUGIN \
--log-config=[LOG_CONFIG,...]
Reemplaza lo siguiente:
WASM_PLUGIN: Es el ID o el nombre completamente calificado del complemento.LOG_CONFIG: Son las opciones de registro del complemento. Para habilitar el registro, configura la opciónenableentrue. Luego, especifica los siguientes detalles:sample-rate: Es la frecuencia de muestreo de los registros de actividad como un valor entre0y1. El valor0indica que no se almacenan los mensajes de registro. El valor predeterminado1indica que se almacenan todos los mensajes de registro. Un valor de punto flotante entre0.0y1.0indica que se almacena un porcentaje de los mensajes de registro.min-log-level: Es el nivel de gravedad mínimo de los mensajes de registro de complementos que se exportarán a Cloud Logging. El valor predeterminado esINFO.
Para ver los registros, en la Google Cloud consola de, ve a la página Explorador de registros.
Visualiza mensajes de registro
Para ver los registros, compila consultas en el Explorador de registros.
Puedes ver los registros de complementos como registros independientes de Service Extensions. En esta vista, cada mensaje de registro de complemento se registra en su propio registro y no se asocia automáticamente con la información del registro de solicitudes.
Estos mensajes de registro se encuentran en el registro networkactions.googleapis.com/wasm_plugin_activity con el tipo de recurso networkactions.googleapis.com/WasmPluginVersion.
El sistema también puede agregar mensajes de registro informativos a este registro.
Por ejemplo, si hay una falla del complemento cuando una invocación del complemento excede los límites de CPU o memoria, se registra un mensaje de gravedad ERROR. Estos
mensajes también se pueden ver en Visualiza y filtra errores.
También puedes ver los mensajes de registro correlacionados con los registros de solicitudes de Media CDN correspondientes en el Explorador de registros. Mientras ves los registros de solicitudes, cuando expandes una entrada de registro de solicitudes, los registros de complementos relacionados con la solicitud aparecen anidados en el registro de solicitudes. Esta vista te ayuda a comprender los registros de complementos en el contexto de su solicitud asociada.
Ejemplos de registros
Considera una entrada de registro de Service Extensions de muestra. El valor de message se pasa a la llamada LOG_INFO del complemento. El valor severity depende del nivel de registro que se usa en la llamada de registro del complemento. En la sección labels, el valor de la API es HTTP_REQUEST_HEADER, lo que indica que la operación registrada es la devolución de llamada del complemento on_http_request_headers.
{
"insertId": "65224aac-0000-24bd-a0e1-582429bd544c@a1",
"jsonPayload": {
"@type": "type.googleapis.com/google.cloud.networkactions.logging.v1.WasmPluginLogEntry",
"metroIataCode": "ber",
"proxyRegionCode": "DE",
"message": "[add_header_plugin.cc:26]::onRequestHeaders() AddHeaderStreamContext::onRequestHeaders called",
"requestId": "effc0311-6716-431b-9e2a-7586835fdff1"
},
"resource": {
"type": "networkactions.googleapis.com/WasmPluginVersion",
"labels": {
"plugin_version": "prod-1",
"resource_container": "projects/123456789",
"location": "global",
"plugin_name": "add-headers-plugin-prod-resource"
}
},
"timestamp": "2023-05-10T03:05:43.317015458Z",
"severity": "INFO",
"labels": {
"networkactions.googleapis.com/operation": "HTTP_REQUEST_HEADERS"
},
"logName": "projects/123456789/logs/networkactions.googleapis.com%2Fwasm_plugin_activity",
"trace": "projects/123456789/traces/effc0311-6716-431b-9e2a-7586835fdff1",
"receiveTimestamp": "2023-05-10T03:05:44.207265284Z"
}
requestId y trace de ambos mensajes de registro son los mismos.
{
"insertId": "6c95cc54-0000-26ba-ba73-f403043c328c@a1",
"jsonPayload": {
"cacheMode": "USE_ORIGIN_HEADERS",
"@type": "type.googleapis.com/google.cloud.edgecache.v1.EdgeCacheLogEntry",
"wasmAction": "add-headers-action-prod-resource",
"cacheKeyFingerprint": "f04d02bb12f2e79e",
"proxyStatus": "Google-Edge-Cache",
"clientCity": "Erlangen",
"clientAsn": "8881",
"origin": "example-origin",
"cacheId": "ber",
"tlsVersion": "NONE",
"latency": "0.002840304s",
"originIp": "142.250.145.128",
"requestId": "effc0311-6716-431b-9e2a-7586835fdff1",
"clientRegionCode": "DE",
"originalRequestId": "7656c418-df7c-4ae5-9db5-4f247ec5a82c",
"httpTtfb": "0.002814903s",
"metroIataCode": "BER",
"proxyRegionCode": "DE",
"cacheStatus": "hit"
},
"httpRequest": {
"requestMethod": "GET",
"requestUrl": "https://example.com/image.jpg",
"requestSize": "1631",
"status": "200",
"responseSize": "402907",
"userAgent": "Wtrace",
"remoteIp": "2001:1438:1:19::5",
"protocol": "HTTP/1.1"
},
"resource": {
"type": "edgecache.googleapis.com/EdgeCacheRouteRule",
"labels": {
"location": "global",
"route_destination": "projects/123456789/locations/global/edgeCacheOrigins/example-origin",
"matched_path": "/turing/",
"route_type": "ORIGIN",
"path_matcher_name": "routes",
"resource_container": "projects/123456789",
"service_name": "example-service"
}
},
"timestamp": "2023-05-10T03:05:43.321347304Z",
"logName": "projects/bdn-prober/logs/edgecache.googleapis.com%2Fedge_cache_request",
"trace": "projects/1069774196212/traces/effc0311-6716-431b-9e2a-7586835fdff1",
"receiveTimestamp": "2023-05-10T03:05:49.919781008Z"
}
Limitaciones
Los complementos se limitan a registrar hasta 16 KiB de datos de carga útil por solicitud HTTP del cliente. Esta cantidad se divide en varias llamadas de registro asociadas con una solicitud HTTP determinada. El límite solo se aplica al texto del mensaje de registro, no a los metadatos adicionales que las Service Extensions agregan al registro.
Por ejemplo, si una devolución de llamada on_http_request_headers realiza dos llamadas de registro con mensajes de 4 KiB cada una y, luego, una devolución de llamada on_http_response_headers intenta realizar tres llamadas de registro con mensajes de 4 KiB cada una para la misma solicitud HTTP, se descarta el tercer mensaje de registro. Se agrega un mensaje de registro para registrar la cantidad de mensajes de registro generados por el complemento que se descartaron.
Supervisión
En esta sección, se describe cómo puedes usar los paneles de Cloud Monitoring para ver las métricas de Service Extensions para los complementos de Media CDN.
Para obtener información detallada sobre los tipos de métricas de Service Extensions, consulta la Google Cloud página de métricas.
Visualiza el panel de Supervisión de Service Extensions
Para ver el panel de supervisión de Service Extensions, haz lo siguiente:
- En la Google Cloud consola, ve a la página Extensiones del servicio.
- Haz clic en la pestaña Complementos.
- Haz clic en un nombre de complemento.
- En la página Detalles del complemento, haz clic en la pestaña Monitoring.
- Para ver las métricas de las operaciones del ciclo de vida del complemento, selecciona valores de la
lista Filtro de operaciones. De forma predeterminada, se seleccionan los valores
HTTP request headeryHTTP response header. - Para ver las métricas de una versión específica del complemento, selecciona un valor de la lista Filtro de versión del complemento. De forma predeterminada, las métricas se muestran para todas las versiones.
- Para cambiar el período durante el que deseas ver los datos, selecciona un
período predefinido en el selector de tiempo o haz clic en Personalizado y define una
hora de inicio y de finalización. De forma predeterminada, el selector se establece en
1 day.
En la página Monitoring, los gráficos de métricas muestran información que puede ayudarte a supervisar el rendimiento del complemento.
Métricas de complementos para Service Extensions
Puedes supervisar las siguientes métricas para los complementos desde la perspectiva de Service Extensions. Estas métricas tienen el prefijo
networkactions.googleapis.com/wasm_plugin/. El prefijo se omite de las entradas de la tabla.
| Tipo de métrica | Nombre visible
Tipo, clase, unidad Descripción |
|---|---|
invocation_count
|
Recuento de invocaciones del complemento de Wasm
DELTA, INT64, 1
Es la cantidad de invocaciones del complemento durante el período seleccionado. Cada invocación de devolución de llamada del complemento callback cuenta como una invocación de complemento independiente. |
invocation_latencies
|
Latencia de invocación del complemento de Wasm
DELTA, DISTRIBUTION, us
Es el tiempo de ejecución local, en milisegundos, del complemento. La métrica incluye entradas delimitadas por etiquetas para cada devolución de llamada. |
cpu/usage_times
|
Uso normalizado de CPU del complemento de Wasm
DELTA, DISTRIBUTION, us{CPU}
Es el tiempo de uso de CPU de las invocaciones del complemento, en microsegundos. |
memory/bytes_used
|
Uso de memoria del complemento de Wasm
GAUGE, DISTRIBUTION, By
Es la memoria total asignada por las VMs del complemento de Wasm, en bytes. |
Métricas de complementos para Media CDN
Puedes supervisar las siguientes métricas para los complementos desde la perspectiva de Media CDN. Las cadenas de tipo de métrica siguen este prefijo: edgecache.googleapis.com/edge_cache_route_rule/network_actions/.
El prefijo se omite de las entradas de la tabla.
| Tipo de métrica | Nombre visible
Tipo, clase, unidad Descripción |
|---|---|
wasm_action_invocation_count
|
Recuento de invocaciones de Service Extensions
DELTA, INT64, 1
Es la cantidad de invocaciones de Service Extensions que controla Media CDN durante el período seleccionado. |
wasm_action_invocation_latencies
|
Latencia de invocación de Service Extensions
DELTA, DISTRIBUTION, us
Es el tiempo total, en milisegundos, que tarda Media CDN en enviar y ejecutar el complemento. La métrica incluye entradas delimitadas por etiquetas para Service Extensions devoluciones de llamada. |