En esta página, se proporciona una descripción general conceptual de las métricas basadas en registros.
Las métricas basadas en registros pueden ayudarte a observar tendencias y patrones en un gran volumen de entradas de registro. Por ejemplo, puedes usar una métrica basada en registros para contar la cantidad de entradas de registro que contienen un mensaje en particular o para extraer información sobre la latencia registrada en las entradas de registro. Puedes mostrar métricas basadas en registros en los gráficos de Cloud Monitoring, y las políticas de alertas pueden supervisarlas.
Las métricas basadas en registros se pueden agrupar en dos categorías:
Basado en proyectos. Estas métricas basadas en registros evalúan las entradas de registro que pasan por los sumideros de registro de un proyecto y, luego, se almacenan en un bucket de registros en el proyectoGoogle Cloud . Las entradas de registro evaluadas incluyen aquellas que un destino de registro de otro proyecto dirige a tu Google Cloud proyecto.
Es posible que no puedas usar métricas basadas en registros para evaluar todas las entradas de registro que se originan en tu proyecto. Por ejemplo, si un administrador creó un receptor agregado de intercepción, las entradas de registro que enruta ese receptor no pueden llegar a los receptores a nivel del proyecto. Por lo tanto, estas entradas de registro no pueden contribuir a una métrica basada en registros.
Se basa en buckets de registros. Estas métricas basadas en registros evalúan las entradas de registro que se almacenan en un bucket de registro específico.
Cómo se determinan los valores de las series temporales para las métricas basadas en registros
En esta sección, se describe brevemente cómo se determinan los valores de una serie temporal para una métrica basada en registros de tipo contador. También se describe por qué una serie temporal de una métrica basada en registros podría tener brechas. El proceso es similar para las métricas basadas en registros con valores de distribución.
En el caso de las métricas basadas en registros de tipo contador, el registro hace lo siguiente:
Crea uno o más flujos de datos y, para cada uno, administra un conjunto de contadores en memoria.
Hay un flujo para cada combinación de valores únicos del conjunto de etiquetas de métricas y recursos. Cada contador en memoria corresponde a un intervalo de tiempo diferente, pero cada uno registra la cantidad de entradas de registro que coinciden con el filtro y que tienen una marca de tiempo que corresponde al intervalo.
Cada minuto, para cada flujo, el backend de Logging usa los valores de los contadores en memoria para determinar cómo actualizar una serie temporal que administra Cloud Monitoring.
Si hay cinco transmisiones, entonces hay cinco series temporales que administra la supervisión. Puedes graficar estas series temporales. También puedes crear políticas de alertas para supervisar estas series temporales.
Ejemplo: Cómo los valores cero pueden causar brechas de datos
Considera la siguiente serie temporal:
Example time series: (T1, -), (T2, -), (T3, 0), (T4, 1), (T5, 0), (T6, -)
En la expresión anterior, (T1, -)
significa que no se escribió ningún valor para el tiempo T1
. Esto corresponde a una brecha en los valores de la serie temporal.
En cambio, (T3, 0)
significa que el valor de la serie temporal en el momento T3
es cero.
Para cada flujo, el sistema de backend de las métricas basadas en registros usa las siguientes reglas para determinar qué valor escribir en las series temporales que almacena Supervisión:
Cuando el recuento agregado de un intervalo no es cero, ese valor se escribe en las series temporales.
En la serie temporal de ejemplo, solo el intervalo
T4
tiene un valor distinto de cero. El valor de1
indica que una entrada de registro con una marca de tiempo que corresponde al intervaloT4
coincidió con el filtro de la métrica basada en registros.Cuando el recuento agregado de un intervalo es cero, se escribe un valor de cero en las series temporales cuando un intervalo adyacente tiene un valor distinto de cero.
En la serie temporal de ejemplo, en el momento
T3
, el recuento agregado es cero. Sin embargo, se escribe un valor de cero porque, en el momentoT4
, el recuento agregado es distinto de cero. De manera similar, en el momentoT5
, el recuento agregado es cero. Se escribe un valor de cero en la serie temporal porque el valor del intervalo anterior no era cero.De lo contrario, la serie temporal no se actualiza y hay una brecha de datos para el intervalo.
En la serie temporal de ejemplo, no hay valores para los intervalos
T1
,T2
yT6
. En estos intervalos, los recuentos agregados fueron cero y los recuentos de los intervalos adyacentes también fueron cero.
Manejo de entradas de registro tardías y futuras
Cuando las entradas de registro llegan con una marca de tiempo para un intervalo que se procesó, el backend de Logging genera datos históricos. Los datos históricos se usan para actualizar los conteos escritos anteriormente.
Cuando las entradas de registro llegan con una marca de tiempo que es en el futuro, el backend de Logging acumula estos recuentos. En las series temporales, estas entradas de registro se cuentan cuando su marca de tiempo corresponde al intervalo actual.
Fuentes de las métricas basadas en registros
Puedes usar las métricas definidas por Cloud Logging para recopilar información general de uso y definir tu propia métrica basada en registros para capturar información específica de tu aplicación o empresa.
Las métricas basadas en registros se pueden aplicar en un solo proyecto Google Cloud o en un bucket de registros. No puedes crear métricas basadas en registros para otros Google Cloud recursos, como organizaciones o cuentas de Facturación de Cloud.
Para obtener información sobre las diferencias entre las métricas basadas en registros de proyectos y las métricas basadas en registros de bucket, consulta Métricas basadas en registros centradas en el bucket.
Métricas definidas por el sistema
El registro proporciona un conjunto de métricas para los valores de uso, como la cantidad de entradas de registro almacenadas en los buckets de registro de tu proyecto o la cantidad de bytes que exportaste. Para obtener una lista completa de las métricas definidas por el sistema, consulta Google Cloud metrics: logging.
Métricas definidas por el usuario
Puedes crear métricas basadas en registros definidas por el usuario para hacer un seguimiento de otras métricas que son importantes para tu proyecto. Por ejemplo, puedes crear una métrica basada en registros para contar la cantidad de entradas de registro que coinciden con un filtro determinado.
De forma predeterminada, las métricas basadas en registros definidas por el usuario se calculan a partir de todos los registros que recibe la API de Logging para el proyecto Google Cloud , independientemente de los filtros de inclusión o filtros de exclusión que puedan aplicarse al proyectoGoogle Cloud .
También puedes crear métricas basadas en registros definidas por el usuario para un bucket de registros específico en un Google Cloud proyecto. Las métricas basadas en registros con permiso de bucket se calculan a partir de todos los registros destinados al bucket, independientemente de dónde se originen. Para obtener más información, consulta Métricas basadas en registros en buckets de registros.
Tipos de datos para las métricas basadas en registros
Las métricas basadas en registros pueden extraer datos de los registros para crear métricas de los siguientes tipos:
- Contador: Estas métricas cuentan la cantidad de entradas de registro que coinciden con un filtro especificado dentro de un período específico. Usa contadores cuando quieras hacer un seguimiento de la cantidad de veces que un valor o una cadena aparecen en tus registros.
- Distribución: Estas métricas también cuentan los valores, pero recopilan los recuentos en rangos de valores (buckets de histograma). Usa distribuciones cuando desees extraer valores como las latencias.
- Booleanas: Estas métricas registran si una entrada de registro coincide o no con un filtro especificado.
Las métricas basadas en registros y definidas por el usuario pueden ser de contador o de distribución. La mayoría de las métricas basadas en registros y definidas por el sistema son contadores, pero algunas son del tipo booleano. Las características de los contadores y las distribuciones se describen con más detalle en las secciones posteriores.
Los datos de una métrica basada en registros definida por el usuario provienen solo de las entradas de registro que se reciben después de crear la métrica. Una métrica no se propaga de forma retroactiva con datos de entradas de registro que ya están en Logging.
Las métricas basadas en registros del sistema se calculan solo a partir de los registros incluidos. Las métricas basadas en registros y definidas por el usuario se calculan a partir de registros incluidos y excluidos.
En las siguientes secciones se describen las características de las métricas de tipo contador y distribución.
Métricas de contador
Las métricas de contador cuentan la cantidad de entradas de registro que coinciden con un filtro determinado. Por ejemplo, puedes hacer lo siguiente:
- Cuenta las entradas de registro que contienen un mensaje de error específico.
Hacer un recuento de las veces que cada usuario invoca una operación mediante la búsqueda de mensajes de registro que coincidan con este patrón:
... user USERNAME called OPERATION ...
Si extraes USERNAME y OPERATION a fin de usarlos como valores para dos etiquetas, más adelante puedes preguntar “¿Cuántas veces llamó
sally
a la operaciónupdate
?”, “¿Cuántas personas llamaron a la operaciónread
?”, “¿Cuántas vecesgeorge
llamó a una operación?”, y así sucesivamente.
Para obtener más información, consulta Configura métricas de contadores.
Métricas de distribución
Las métricas de distribución acumulan datos numéricos de entradas de registro que coinciden con un filtro. Las métricas contienen una serie temporal de objetos de distribución, cada uno de los cuales contiene lo siguiente:
- Un conteo de la cantidad de valores en la distribución
- La media de los valores
- La suma de las desviaciones al cuadrado: Suma i=1..n(x i–media)2
- Un conjunto de bucket s de histogramas con el conteo de valores en cada bucket. Puedes utilizar el diseño predeterminado del bucket o elegir uno propio
Un uso común para las métricas de distribución es para hacer un seguimiento de las latencias. A medida que se reciben las entradas de registro, se extrae un valor de latencia de algún lugar en la entrada de registro y se lo agrega a la distribución. En intervalos periódicos, la distribución acumulada se escribe en Cloud Monitoring.
Para obtener información sobre las distribuciones, incluido su formato dentro de una serie temporal y cómo se visualizan, consulta Crea gráficos de las métricas de distribución.
Si deseas obtener información para crear métricas basadas en registros de distribución, consulta Configura métricas de distribución.
Tipos de recursos
Te recomendamos que tus métricas basadas en registros especifiquen un solo tipo de recurso. Esta especificación garantiza que las series temporales generadas para tu métrica basada en registros coincidan con el modelo de datos que espera Cloud Monitoring. También simplifica el proceso de creación de gráficos y políticas de alertas, ya que no hay ambigüedades sobre qué datos de series temporales se grafican o supervisan.
Considera una métrica basada en registros con el siguiente filtro:
severity>="ERROR"
resource.type="gce_instance"
Cloud Monitoring reconoce que estos datos son de una instancia de VM de Compute Engine. Por lo tanto, cuando creas un gráfico para una instancia de VM, la métrica basada en registros aparece como una opción en los menús. Cuando creas un gráfico para un tipo de recurso diferente, la métrica basada en registros no aparece como una opción.
Si creas una métrica basada en registros sin especificar un tipo de recurso, la supervisión enumerará tu métrica basada en registros como una opción para varios tipos de recursos, aunque no cuentes las entradas de esos recursos.
Etiquetas
Las métricas basadas en registros pueden tener etiquetas, que permiten recopilar varias series temporales para la métrica. Los valores de las etiquetas se extraen de los campos en las entradas de registro que coinciden. Los registros de Logging separan series temporales para cada combinación de valores de etiqueta.
La mayoría de las métricas basadas en registros proporcionan una etiqueta log
predeterminada.
Esta etiqueta contiene el valor de la parte LOG_ID del campo logName
en la entrada de registro, por ejemplo, cloudresourcemanager.googleapis.com%2Factivity
.
Las métricas basadas en registros del sistema tienen etiquetas predefinidas que no se pueden cambiar.
Las métricas basadas en registros definidas por el usuario pueden incluir etiquetas que definas. Por lo general, estas etiquetas extraen valores de las entradas de registro que contribuyen a la métrica basada en registros.
Por ejemplo, puedes usar etiquetas en la métrica basada en registros para registrar la carpeta o la organización desde la que se originó una entrada de registro, aunque no se pueden crear métricasbasadas en registros centradas en el bucket para carpetas o organizaciones. Para obtener más información, consulta Etiquetas de métricas basadas en registros.
Gráficos y políticas de alertas en Cloud Monitoring
En Cloud Monitoring, puedes usar métricas basadas en registros, ya sean las definidas por el sistema o por el usuario, para crear gráficos y políticas de alertas. En el caso de estos gráficos y políticas de alertas, puedes usar etiquetas para filtrar o combinar series temporales. Por ejemplo, puedes establecer un filtro para mostrar solo ciertas series temporales. Para obtener más información, consulta Cómo crear una lista y gráficos de métricas basadas en registros y Cómo crear alertas en métricas basadas en registros.
En Cloud Monitoring, las métricas basadas en registros usan los siguientes patrones de nombres:
- Sistema:
logging.googleapis.com/SYSTEM_METRIC_NAME
- Definido por el usuario:
logging.googleapis.com/user/USER_METRIC_NAME
Ten en cuenta que las métricas basadas en registros definidas por el usuario incluyen la cadena user
.
Visibilidad de los permisos de métricas de supervisión
Cloud Monitoring transfiere las métricas basadas en registros, y la visibilidad de los datos de métricas para un Google Cloud proyecto se determina mediante un permiso de las métricas. Un alcance de métricas es una lista de proyectos que supervisa el proyecto que aloja el permiso de métricas. El proyecto de hosting se denomina proyecto de permisos.
De forma predeterminada, cada proyecto aloja un permiso de métricas que solo se incluye a sí mismo, por lo que un proyecto es un proyecto de permisos para sí mismo. Por lo tanto, tus métricas, incluidas las métricas basadas en registros, solo son visibles para tu proyectoGoogle Cloud .
También puedes crear un permiso de métricas de varios proyectos para el proyecto de delimitación. Con un permiso de métricas de varios proyectos, el proyecto de permisos puede ver las métricas de todos los proyectos en el permiso de métricas. Lo que es visible para los proyectos individuales en un permiso de métricas de varios proyectos se determina según el permiso de métricas que aloja cada uno de esos proyectos. El hecho de que dos proyectos estén en un permiso de métricas de varios proyectos no significa que cada proyecto tenga acceso a las métricas o los datos de configuración del otro proyecto.
Un solo proyecto también puede aparecer en varios permisos de métricas. Las métricas de ese tipo de proyecto son visibles para los proyectos de alcance de cada uno de esos permisos de métricas.
Las métricas, incluidas las basadas en registros, se definen dentro de un proyecto específico. Cuando ese proyecto aparece en varios permisos de métricas, las métricas son visibles para proyectos distintos del que se definieron. Para obtener información sobre cómo interactúan los permisos de las métricas y las métricas basadas en registros centradas en el bucket, consulta Permisos de las métricas y de los proyectos.
Para obtener más información sobre los permisos de las métricas, incluidos los permisos de métricas de varios proyectos, y sobre los proyectos de permisos, consulta lo siguiente:
Precios
Todas las métricas basadas en registros definidas por el usuario son una clase de métricas personalizadas de Cloud Monitoring y son cobrables. Para obtener información sobre los precios, consulta Precios de Cloud Logging: Métricas basadas en registros.
Cuota
Para obtener información sobre las cuotas y los límites asociados con las métricas basadas en registros definidas por el usuario, consulta Cuotas y límites.
Soluciona problemas
Si tienes problemas cuando usas métricas basadas en registros, consulta Soluciona problemas de métricas basadas en registros.