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 solo para los registros del 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 más información, consulta Control de acceso con 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 nuevas entradas de registro no coincidan con el filtro de tu métrica. Una métrica basada en registros obtiene datos de entradas de registro coincidentes y que se reciben una vez que se creó 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.
La cantidad de entradas tardías se registra en la métrica basada en registros
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 unareceivedTimestamp
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 las entradas de registro que podría contar la métrica. 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.
La métrica basada en registros tiene brechas en los datos. Se esperan algunas brechas de datos, ya que los sistemas que procesan los datos de métricas basados en registros no garantizan la persistencia de cada dato de métrica. Cuando se producen, suelen ser poco frecuentes y de corta duración. Sin embargo, si tienes una política de alertas que supervisa una métrica basada en registros, los intervalos en los datos pueden provocar una notificación falsa. La configuración que uses en tu política de alertas puede reducir esta posibilidad.
Ejemplo: Se escribe una entrada de registro de "latido del servidor" cada cinco minutos, y una métrica basada en registros cuenta la cantidad de entradas de registro de "latido del servidor". Una política de alertas resume los recuentos en un intervalo de cinco minutos y te notifica cuando el total es inferior a uno. Cuando a la serie temporal le falta un dato, la política de alertas inserta un valor sintético, que es un duplicado de la muestra más reciente y es más probable que sea cero, y luego evalúa la condición. Por lo tanto, incluso un solo dato faltante podría hacer que el valor sumado sea cero, lo que hace que esta política de alertas envíe una notificación.
Para reducir el riesgo de una notificación falsa, configura la política para que cuente varias entradas de registro de “latido”, no solo una.
El tipo de recurso aparece como "undefined" 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, cuando crees una política de alertas o un gráfico a partir de una métrica basada en registros por primera vez, es posible que veas que el tipo de recurso es "no definido".
El tipo de recurso supervisado se asigna a global
o a un tipo de recurso supervisado diferente en Cloud Monitoring. Consulta la sección Asignaciones para recursos de solo registro para determinar qué tipo de recurso supervisado debes elegir.
Los incidentes no se crean o son falsos positivos
Podrías tener incidentes de falsos positivos o situaciones en las que la supervisión no crea incidentes a partir de métricas basadas en registros porque el período de alineación de la política de alertas es demasiado corto. Es posible que encuentres falsos positivos en las siguientes situaciones:
- Cuando una política de alertas usa la lógica menos que.
- Cuando una política de alertas se basa en una condición de percentiles para una métrica de distribución.
- Cuando hay una brecha en los datos de las métricas.
Los incidentes de falsos positivos pueden ocurrir 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 Logging almacena registros en buckets de registros, hay una demora 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 política de alertas que usa la lógica menor que o se basa 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 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.
Para que las notificaciones sigan siendo precisas, incluso para los datos a tiempo, te recomendamos que establezcas el período de alineación de la condición en al menos 10 minutos. En particular, este valor debe ser lo suficientemente grande para garantizar que se registren varias entradas de registro que coincidan con tu filtro. Por ejemplo, si una métrica basada en registros cuenta las entradas de registro de "heartbeat", que se esperan cada N
minutos, establece el período de alineación en 2N
minutos o 10 minutos, lo que sea mayor:
Si usas la consola de Google Cloud, usa el menú Ventana continua para establecer el período de alineación.
Si usas la API, usa el campo
aggregations.alignmentPeriod
de la condición para establecer el período de alineación.
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.
Solo 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:
logging.googleapis.com/metric_throttled
logging.googleapis.com/time_series_count
logging.googleapis.com/metric_label_throttled
logging.googleapis.com/metric_label_cardinality
Cuando inspeccionas estas métricas, puedes filtrar aún más los resultados mediante el nombre de la métrica. Para obtener más información, consulta Selecciona métricas: filtros.
El nombre de la métrica no es válido
Cuando creas una métrica de contador o de distribución, elige un nombre de métrica único entre las métricas basadas en registros en 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 las métricas no son correctos
Observas que los valores informados para una métrica basada en registros a veces son diferentes de la cantidad de entradas de registro que informa el Explorador de registros.
Para minimizar la discrepancia, haz lo siguiente:
Asegúrate de que las aplicaciones no envíen entradas de registro duplicadas. Las entradas de registro se consideran duplicadas cuando tienen el mismo
timestamp
yinsertId
. El Explorador de registros suprime automáticamente las entradas de registro duplicadas. Sin embargo, las métricas basadas en registros cuentan cada entrada de registro que coincide con el filtro de la métrica.Asegúrate de que se envíe una entrada de registro a Cloud Logging cuando la marca de tiempo sea inferior a 24 horas en el pasado o inferior a 10 minutos en el futuro. Las métricas basadas en registros no cuentan las entradas de registro cuyas marcas de tiempo no se encuentran dentro de estos límites.
No puedes eliminar la posibilidad de registros duplicados. Si se produce un error interno durante el control de una entrada de registro, Cloud Logging invoca un proceso de reintento. El proceso de reintento puede generar una entrada de registro duplicada. Cuando existen entradas de registro duplicadas, el valor de una métrica basada en registros puede ser demasiado grande, ya que estas métricas cuentan cada entrada de registro que coincide con el filtro de la métrica.
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 de sincronización interno.
Identifica y borra las políticas de alertas que supervisen la métrica basada en registros. Después de asegurarte de que una política de alertas no supervise la métrica basada en registros, bórala. No se pueden borrar las métricas basadas en registros que supervisa una política de alertas.