Soluciona problemas de métricas basadas en registros

En esta página, se proporciona información para solucionar problemas de situaciones comunes cuando se usan métricas basadas en registros en Cloud Logging.

No se pueden ver ni crear métricas

Las métricas basadas en registros se aplican solo a un proyecto de Google Cloud o a un bucket de Logging dentro de un proyecto de Google Cloud. No puedes crear métricas basadas en registros para otros recursos de Google Cloud, como organizaciones o cuentas de facturación. Las métricas basadas en registros se calculan para los registros solo en el proyecto o bucket de Google Cloud en el que se reciben.

Para crear métricas, necesitas los permisos correctos de Identity and Access Management. Para obtener detalles, consulta Control de acceso con la IAM: Métricas basadas en registros.

Faltan datos de registros en la métrica

Existen diferentes razones por las cuales podrían faltar datos en métricas basadas en registros:

  • Es posible que las entradas de registro nuevas no coincidan con el filtro de tu métrica. Una métrica basada en registros obtiene datos de entradas de registro coincidentes que se reciben después de que se crea la métrica. Logging no reabastece la métrica a partir de las entradas de registro anteriores.

  • Es posible que las entradas de registro nuevas no contengan el campo correcto, o los datos podrían no estar en el formato correcto para que tu métrica de distribución la extraiga. Controla que los nombres de tu campo y las expresiones regulares sean las correctas.

  • Es posible que el conteo de métricas esté retrasado. Aunque las entradas de registro contables aparecen en el Explorador de registros, la actualización de las métricas basadas en registros en Cloud Monitoring puede tardar hasta 10 minutos.

  • Es posible que las entradas de registro que se muestran cuenten con demora, o que ni siquiera se cuenten, ya que tienen una marca de tiempo demasiado lejana en el pasado o futuro. Si Cloud Logging recibe una entrada de registro más de 24 horas antes, o 10 minutos después, la entrada de registro no se contará en la métrica basada en registros.

    Se registra la cantidad de entradas tardías para cada registro en la métrica basada en registros del sistema logging.googleapis.com/logs_based_metrics_error_count.

    Ejemplo: Una entrada de registro que coincide con una métrica basada en registros llega tarde. Tiene una timestamp de 2:30 p.m. el 20 de febrero de 2020 y una receivedTimestamp de 2:45 p.m. el 21 de febrero de 2020. Esta entrada no se contará en la métrica basada en registros.

  • La métrica basada en registros se creó después de la llegada de entradas de registro que podrían contar. Las métricas basadas en registros evalúan las entradas de registro a medida que se almacenan en buckets de registro; estas métricas no evalúan las entradas de registro almacenadas en Logging.

El tipo de recurso no está definido en Cloud Monitoring

Algunos tipos de recursos supervisados de Cloud Logging no se asignan directamente a los tipos de recursos supervisados de Cloud Monitoring. Por ejemplo, la primera vez que creas una alerta o un gráfico a partir de una métrica basada en registros, es posible que veas que el tipo de recurso no está definido.

El tipo de recurso no está definido.

El tipo de recurso supervisado se asigna a global o a un tipo de recurso supervisado diferente en Cloud Monitoring. Consulta Asignaciones para recursos solo de Logging a fin de determinar qué tipo de recurso supervisado debes elegir.

Alertas de falsos positivos o alertas que no se activan

Podrías tener alertas de falsos positivos o alertas que no se activan a partir de métricas basadas en registros porque el período de alineación de la alerta es demasiado corto. Las situaciones comunes en las que un período de alineación demasiado corto causa problemas son cuando una alerta usa la lógica menos que, o la alerta se basa en una condición de percentil para una métrica de distribución.

Las alertas de falsos positivos pueden surgir porque las entradas de registro se pueden enviar a Logging tarde. Por ejemplo, los campos de registro timestamp y receiveTimestamp pueden tener un delta de minutos en algunos casos. Además, cuando los registros almacenados de Logging en buckets de registros, hay un retraso inherente entre el momento en que se generan las entradas de registro y el momento en que Logging las recibe. Esto significa que Logging podría no tener el recuento total de una entrada de registro en particular hasta un momento posterior después de que se generaron las entradas de registro. Este es el motivo por el que una alerta con una lógica menor que o basada en una condición de percentil para una métrica de distribución puede producir una alerta de falsos positivos: aún no se tomaron en cuenta todas las entradas de registro.

Sin embargo, las métricas basadas en registros siempre tienen coherencia eventual. Las métricas basadas en registros tienen coherencia eventual porque una entrada de registro que coincide con una métrica basada en registros puede enviarse a Logging con una timestamp mucho más antigua o reciente que la receiveTimestamp del registro.

Esto significa que la métrica basada en registros puede recibir entradas de registro con marcas de tiempo más antiguas después de que Logging haya recibido entradas de registro existentes con la misma marca de tiempo. Por lo tanto, el valor de la métrica se debe actualizar.

A fin de garantizar que las alertas sean exactas, incluso para los datos que llegan a tiempo, las políticas de alertas para las métricas basadas en registros deben usar condiciones de alerta con períodos de alineación mayores o iguales que dos minutos. Para las entradas de registro que se envían a Logging con demoras que se miden en minutos, se recomienda un período de alineación de diez minutos a fin de equilibrar la puntualidad y la exactitud.

La métrica tiene demasiadas series temporales

La cantidad de series temporales en una métrica depende de la cantidad de combinaciones diferentes en los valores de etiquetas. La cantidad de series temporales se denomina cardinalidad de la métrica y no debe superar las 30,000.

Dado que puedes generar una serie temporal para cada combinación de valores de etiqueta, si tienes una o más etiquetas con un número alto de valores, no es difícil superar las 30,000 series temporales. Evita las métricas de cardinalidad alta.

A medida que la cardinalidad de una métrica aumenta, esta podría acelerarse y causar que algunos datos no se escriban en ella. Los gráficos en los que se muestra la métrica pueden tardar en cargarse debido a la gran cantidad de series temporales que el gráfico tiene que procesar. Es posible que incurras en costos por las llamadas a la API para consultar los datos de series temporales. Consulta Costos de Cloud Monitoring a fin de obtener más información.

Para evitar crear métricas con cardinalidad elevada, sigue estos pasos:

  • Verifica que tus campos de etiquetas y las expresiones regulares del extractor coincidan con valores que tienen una cardinalidad limitada.

  • Evita extraer mensajes de texto que pueden cambiar, sin límites, como valores de etiquetas.

  • Evita extraer valores numéricos con cardinalidad ilimitada.

  • Solamente extrae valores de etiquetas con cardinalidad conocida; por ejemplo, códigos de estado con un conjunto de valores conocidos.

Estas dos métricas basadas en registros del sistema pueden ayudarte a medir el efecto de agregar o quitar etiquetas en la cardinalidad de tu métrica:

Cuando inspeccionas estas métricas, puedes filtrar aún más los resultados mediante el nombre de la métrica. Para obtener más detalles, consulta Selecciona métricas: filtrado.

El nombre de la métrica no es válido

Cuando crees una métrica de contador o de distribución, elige un nombre de métrica que sea único entre las métricas basadas en registros de tu proyecto de Google Cloud.

Las strings de nombres de métricas no deben exceder los 100 caracteres y pueden incluir solamente los que se muestran a continuación:

  • A-Z
  • a-z
  • 0-9
  • Los caracteres especiales _-.,+!*',()%\/.

    El carácter de barra diagonal / denota una relación jerárquica de las partes dentro del nombre de la métrica y no se puede usar como primer carácter del nombre.

Los valores de la etiqueta están truncados

Los valores de las etiquetas definidas por el usuario no deben exceder los 1,024 bytes.

No se puede borrar una métrica de registro personalizada

Intentas borrar una métrica personalizada basada en registros con la consola de Google Cloud. La solicitud de eliminación falla y el diálogo de eliminación muestra el mensaje de error There is an unknown error while executing this operation.

Para resolver este problema, prueba lo siguiente:

  • Actualiza la página Métricas basadas en registros en la consola de Google Cloud. Es posible que se muestre el mensaje de error debido a un problema interno de sincronización.

  • Identifica y borra cualquier política de alertas que supervise la métrica basada en registros. Después de asegurarte de que la métrica basada en registros no esté supervisada por una política de alertas, borra la métrica basada en registros. Las métricas basadas en registros que son supervisadas por una política de alertas no se pueden borrar.