Analiza el volumen de registros con Observability Analytics

Las Estadísticas de observabilidad te permiten estimar el volumen facturable de tus entradas de registro para que puedas comprender y administrar tus costos de registro. Puedes escribir consultas en SQL para agregar el volumen de registros por dimensiones, como el tipo de recurso o el nombre de la aplicación, y, luego, ver o graficar los resultados.

Cómo consultar el volumen facturable

El volumen facturable de una entrada de registro, que es el tamaño que se informa a la 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 que usas cualquier campo de esquema cuyo tipo de datos sea INTEGER. Por ejemplo, puedes incluirla en cláusulas SELECT, en sentencias CASE y en expresiones de tabla comunes. Para obtener más información para consultar tus registros, consulta los siguientes documentos:

Debido a 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 aprender a relacionar el volumen facturable con el costo, consulta las secciones de Cloud Logging de 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 que se requieren 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 las Estadísticas de observabilidad.

Configura buckets de registros

Asegúrate de que tus buckets de registros se hayan actualizado para usar Estadísticas de observabilidad:

  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 registro que quieras consultar, asegúrate de que la columna Estadísticas de observabilidad 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 las Estadísticas de observabilidad:

  • Para obtener los permisos que necesitas para usar las Estadísticas de observabilidad y consultar las vistas de registro, pídele a tu administrador que te otorgue los siguientes roles de IAM en tu proyecto:

    Puedes restringir una principal a una vista de registro específica agregando una condición de IAM al otorgamiento del rol de descriptor 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 registro. 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 análisis, pídele a tu administrador que te otorgue el rol de IAM de Usuario de Estadísticas de observabilidad (roles/observability.analyticsUser) en tu proyecto.

Consultas de muestra

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

Puedes consultar tus entradas de registro con la página Estadísticas de observabilidad o en cualquier lugar en el que puedas consultar conjuntos de datos de BigQuery, lo que incluye las páginas de 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 el volumen de registros por app

Para calcular el total de bytes por día, por app, de las entradas de registro que se escribieron en un recurso de Google Kubernetes Engine y que tienen una carga útil de 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
  `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 frontend genera la mayor cantidad de datos de registro:

Gráfico de ejemplo 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 de 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
  `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 graficas estos datos, puedes visualizar la parte de tus datos de registro como se escriben en diferentes registros:

Gráfico de ejemplo que muestra los resultados de la consulta del volumen de registros por nombre de registro.

En el gráfico anterior, se 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.

En la siguiente consulta, se 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 `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 de esa entrada de registro.

Limitaciones

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

  • El bucket de registros se actualiza para usar Estadísticas de observabilidad.
  • La consulta se ejecuta en la página Estadísticas de observabilidad o en cualquier lugar en el que puedas consultar conjuntos de datos de BigQuery, lo que incluye 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.