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 informen y agregar tu volumen facturable según diferentes dimensiones, como el tipo de recurso o nombre de la aplicación y, luego, graficarás y verás 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 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 incluirlo en las cláusulas SELECT, en 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 Facturación de Cloud usa el volumen facturable para determinar 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 que escriben más entradas de registro. Para obtener información sobre cómo relacionar el volumen facturable con el costo, consulta Resumen de precios de Cloud Logging y Precios de Cloud Logging.

El volumen facturable de una entrada de registro no es el tamaño de 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

  1. Para obtener los permisos que necesitas para usar Log Analytics, pídele a tu administrador que te otorgue los siguientes roles de IAM en tus buckets de registros o vistas de registros:

    • Consulta los buckets de registros _Required y _Default: Visualizador de registros (roles/logging.viewer).
    • Para consultar todas las vistas de registro de un proyecto, usa el Descriptor de acceso de vista de registros (roles/logging.viewAccessor).
    • Para consultar registros en una vista de registro específica, haz lo siguiente: Crea una política de IAM para la vista de registros o restringe el rol Acceso de vista de registros (roles/logging.viewAccessor) a una vista de registro determinada. Para obtener más información, consulta Controla el acceso a una vista de registro.

  2. Para las vistas de registros que deseas consultar, ve a la página Almacenamiento de registros y verificar que los buckets de registros que almacenan esas vistas de registro se actualicen Análisis de registros. Si es necesario, actualiza el bucket de registros.

    Ir al Almacenamiento de registros

  3. Opcional: Si deseas consultar tus datos de registro con un conjunto de datos de BigQuery, por ejemplo, si planeas usar la página BigQuery Studio, crea un conjunto de datos de BigQuery vinculado.

Consultas de muestra

En esta sección, se proporcionan ejemplos de consultas 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 tu entrada de registro con el en la página de Análisis de registros o en cualquier lugar donde puedas consultar conjuntos de datos de BigQuery. que incluye las páginas de BigQuery Studio y Looker Studio, y las 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 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 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.

Cómo consultar el volumen de registro por nombre

Para enumerar la cantidad de bytes almacenados y el nombre del registro de cada de 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 graficas estos datos, puedes visualizar la porción de tus datos de registro como escritos en diferentes registros:

Gráfico de ejemplo que muestra los resultados de las consultas de volumen de registro 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 registro por nombre de registro

Puedes incluir el campo storage_bytes en las consultas que ejecutes a través de BigQuery Studio o a través de 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 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 el Análisis de registros.
  • Tu consulta se ejecuta en la página Análisis de registros o en cualquier lugar en el que puedas consultar conjuntos de datos de BigQuery, lo que incluye las páginas BigQuery Studio y Looker Studio, y la herramienta de línea de comandos de bq.

  • La entrada de registro se escribió a partir del 1 de enero de 2024.