Analiza el volumen de registros con el Análisis de registros

En este documento, se describe cómo puedes usar el Análisis de registros para estimar el volumen facturable de tus entradas de registro. Puedes escribir consultas que generen informes y agreguen tu volumen facturable según diferentes dimensiones, como el tipo de recurso o el nombre de la aplicación, y, luego, generar gráficos y ver los resultados de la consulta.

Cómo consultar el volumen facturable

El volumen facturable de una entrada de registro, que es el tamaño que se informa a Facturación de Cloud, está disponible a través del campo storage_bytes. En tus consultas, puedes usar el campo storage_bytes de la misma manera en que usas cualquier campo de esquema cuyo tipo de datos sea INTEGER. Por ejemplo, puedes incluirla en cláusulas SELECT, en instrucciones CASE y en expresiones de tabla comunes. Para obtener más información para consultar tus registros, consulta los siguientes documentos:

Dado que la Facturación de Cloud usa el volumen facturable cuando determina tus costos, puedes escribir consultas que te ayuden a comprender las fuentes de tus costos. Por ejemplo, puedes escribir consultas que te ayuden a determinar qué aplicaciones escriben la mayor cantidad de entradas de registro. Para obtener información sobre cómo relacionar el volumen facturable con el costo, consulta las secciones de Cloud Logging en la página Precios de Google Cloud Observability.

El volumen facturable de una entrada de registro no es el tamaño del objeto LogEntry que se envió a la API de Cloud Logging. El volumen facturable incluye los bytes necesarios para la serialización y los metadatos.

Antes de comenzar

En esta sección, se describen los pasos que debes completar antes de poder usar Log Analytics.

Configura buckets de registros

Asegúrate de que tus buckets de registros se hayan actualizado para usar el Análisis de registros:

  1. En la consola de Google Cloud , ve a la página Explorador de registros:

    Ir al Almacenamiento de registros

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.

  2. Para cada bucket de registros que tenga una vista de registros en la que desees realizar consultas, asegúrate de que la columna Análisis de registros disponibles muestre Abrir. Si se muestra Actualizar, haz clic en Actualizar y completa el diálogo.

Configura roles y permisos de IAM

En esta sección, se describen los roles o permisos de IAM que se requieren para usar Log Analytics:

  • Para obtener los permisos que necesitas para usar Log Analytics y consultar vistas de registros, pídele a tu administrador que te otorgue los siguientes roles de IAM en tu proyecto:

    Puedes restringir un principal a una vista de registros específica agregando una condición de IAM al otorgamiento del rol de Acceso a la vista de registros realizado a nivel del proyecto o agregando una vinculación de IAM al archivo de política de la vista de registros. Para obtener más información, consulta Controla el acceso a una vista de registros.

    Estos son los mismos permisos que necesitas para ver las entradas de registro en la página del Explorador de registros. Para obtener información sobre los roles adicionales que necesitas para consultar vistas en buckets definidos por el usuario o para consultar la vista _AllLogs del bucket de registros _Default, consulta Roles de Cloud Logging.

  • Para obtener los permisos que necesitas para consultar vistas de Analytics, pídele a tu administrador que te otorgue el rol de IAM de Usuario de Observability Analytics (roles/observability.analyticsUser) en tu proyecto.

Consultas de muestra

En esta sección, se proporcionan ejemplos de consultas que analizan datos de una sola vista de registros. Si almacenas datos en varias vistas de registros y deseas calcular valores agregados para los datos almacenados en esas vistas, debes usar la instrucción UNION.

Puedes consultar tu entrada de registro en la página Log Analytics o en cualquier lugar donde puedas consultar conjuntos de datos de BigQuery, incluidas las páginas BigQuery Studio y Looker Studio, y la herramienta de línea de comandos de bq.

Para usar las consultas de muestra, haz lo siguiente:

Consulta sobre el volumen de registros por app

Para calcular la cantidad total de bytes por día y por app de las entradas de registro que se escribieron en un recurso de Google Kubernetes Engine y que tienen una carga útil JSON, usa la siguiente consulta:

SELECT
  timestamp_trunc(timestamp,DAY) as day,
  JSON_VALUE(labels["k8s-pod/app"]) as app_id,
  SUM(storage_bytes) as total_bytes
FROM
  `TABLE_NAME_OF_LOG_VIEW`
WHERE
  json_payload IS NOT NULL
  AND resource.type="k8s_container"
GROUP BY ALL

Para visualizar los datos, puedes crear un gráfico.

En el siguiente ejemplo, los datos se muestran como un gráfico de barras apiladas. Cada barra del gráfico muestra la cantidad total de bytes almacenados, organizados por app. En este ejemplo, la app de frontend genera la mayor cantidad de datos de registro:

Ejemplo de un gráfico que muestra los resultados de la consulta del volumen de registros por app.

Consulta el volumen de registros por nombre de registro

Para enumerar la cantidad de bytes almacenados y el nombre del registro de cada entrada de registro que tiene una carga útil JSON y que se escribió en un recurso de Google Kubernetes Engine, usa la siguiente consulta:

SELECT
  log_id AS log_name,
  storage_bytes
FROM
  `TABLE_NAME_OF_LOG_VIEW`
WHERE
  json_payload IS NOT NULL
  AND resource.type="k8s_container"

La consulta anterior no agrega los resultados, sino que hay una fila para cada entrada de registro, y esa fila contiene un nombre de registro y la cantidad de bytes almacenados. Si representas estos datos en un gráfico, podrás visualizar la parte de tus datos de registro que se escribió en diferentes registros:

Ejemplo de un gráfico que muestra los resultados de la consulta del volumen de registros por nombre de registro.

El gráfico anterior muestra que la mayoría de los datos de registro se escriben en el registro llamado stdout.

Usa la herramienta de línea de comandos de bq para consultar el volumen de registros por nombre de registro

Puedes incluir el campo storage_bytes en las consultas que ejecutes a través de la página de BigQuery Studio o con la herramienta de línea de comandos de bq.

La siguiente consulta informa el nombre del registro y la cantidad de bytes almacenados para cada entrada de registro:

bq query --use_legacy_sql=false  'SELECT log_id as log_name,
  storage_bytes FROM `TABLE_NAME_OF_LOG_VIEW`'

El resultado de esta consulta es similar al siguiente:

+----------+---------------+
| log_name | storage_bytes |
+----------+---------------+
| stdout   |           716 |
| stdout   |           699 |
| stdout   |           917 |
| stdout   |           704 |

Cada fila corresponde a una entrada de registro. El valor de la columna storage_bytes es el volumen facturable para esa entrada de registro.

Limitaciones

El campo storage_bytes solo está disponible cuando se cumplen las siguientes condiciones:

  • El bucket de registros se actualizó para usar el Análisis de registros.
  • Tu consulta se ejecuta en la página Análisis de registros o en cualquier lugar donde puedas consultar conjuntos de datos de BigQuery, incluidas las páginas de BigQuery Studio y Looker Studio, y la herramienta de línea de comandos de bq.

  • La entrada de registro se escribió el 1 de enero de 2024 o después de esa fecha.