Analizar el volumen de registros con Analíticas de registros

En este documento se describe cómo puede usar Log Analytics para estimar el volumen facturable de sus entradas de registro. Puedes escribir consultas que informen y agreguen tu volumen facturable por diferentes dimensiones, como el tipo de recurso o el nombre de la aplicación, y, a continuación, representar en un gráfico 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 comunica a Cloud Billing, está disponible en el campo storage_bytes. En tus consultas, puedes usar el campo storage_bytes de la misma forma que 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 sobre cómo consultar tus registros, consulta los siguientes documentos:

Como Facturación de Cloud usa el volumen facturable para determinar los costes, puedes escribir consultas que te ayuden a entender las fuentes de tus costes. Por ejemplo, puedes escribir consultas que te ayuden a determinar qué aplicaciones escriben la mayoría de las entradas de registro. Para saber cómo relacionar el volumen facturable con el coste, consulta las secciones de Cloud Logging de la página Precios de Observabilidad de Google Cloud.

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

Antes de empezar

En esta sección se describen los pasos que debe completar para poder usar Log Analytics.

Configurar segmentos de registros

Comprueba que tus contenedores de registros se hayan actualizado para usar Analíticas de registros:

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

    Ve a Almacenamiento de registros.

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Registro.

  2. En cada contenedor de registros que tenga una vista de registro que quieras consultar, comprueba que en la columna Analíticas de registros disponibles se muestre Abrir. Si se muestra Cambiar a plan superior, haz clic en Cambiar a plan superior y completa el cuadro de diálogo.

Configurar roles y permisos de gestión de identidades y accesos

En esta sección se describen los roles o permisos de gestión de identidades y accesos que se necesitan para usar Log Analytics:

  • Para obtener los permisos que necesitas para usar Log Analytics y consultar vistas de registro, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en tu proyecto:

    Puede restringir un principal a una vista de registro específica añadiendo una condición de IAM a la concesión del rol de acceso a la vista de registros que se haya hecho a nivel de proyecto o añadiendo un enlace de IAM al archivo de política de la vista de registro. Para obtener más información, consulta Controlar el acceso a una vista de registro.

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

  • Para obtener los permisos que necesitas para consultar vistas de analíticas, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Usuario de Observabilidad Analytics (roles/observability.analyticsUser) en tu proyecto.

Consultas de ejemplo

En esta sección se proporcionan consultas de ejemplo que analizan datos de una sola vista de registro. Si almacena datos en varias vistas de registro y quiere calcular valores agregados de los datos almacenados en esas vistas, debe usar la instrucción UNION.

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

Para usar las consultas de ejemplo, siga estos pasos:

  • Página Log Analytics (Analíticas de registros): sustituya TABLE_NAME_OF_LOG_VIEW por el nombre de la vista de registro. El formato es project_ID.region.bucket_ID.view_ID.

    Vaya a Analíticas de registros.

  • Conjuntos de datos de BigQuery: sustituye TABLE_NAME_OF_LOG_VIEW por la ruta a la tabla del conjunto de datos vinculado.

    Ve a BigQuery Studio.

Consultar el volumen de registros por aplicación

Para calcular el total de bytes por día y por aplicación 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 en un gráfico de barras apiladas. Cada barra del gráfico muestra el número total de bytes almacenados, organizados por aplicación. En este ejemplo, la aplicación frontend genera la mayor cantidad de datos de registro:

Gráfico de ejemplo que muestra los resultados de una consulta sobre el volumen de registros por aplicación.

Consultar el volumen de registros por nombre de registro

Para enumerar el número de bytes almacenados y el nombre del registro de cada entrada de registro que tenga una carga útil JSON y que se haya escrito 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 por cada entrada de registro. Esa fila contiene un nombre de registro y el número de bytes almacenados. Si representa estos datos en un gráfico, podrá visualizar la parte de sus datos de registro que se ha escrito en diferentes registros:

Gráfico de ejemplo que muestra los resultados de una consulta sobre el 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.

Usar la herramienta de línea de comandos 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 BigQuery Studio o con la herramienta de línea de comandos bq.

La siguiente consulta muestra el nombre del registro y el número de bytes almacenados de 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 estas condiciones:

  • El contenedor de registros se actualiza para usar Analíticas de registros.
  • Tu consulta se ejecuta en la página Analíticas de registros o en cualquier lugar en el que puedas consultar conjuntos de datos de BigQuery, como las páginas BigQuery Studio y Looker Studio, y la herramienta de línea de comandos bq.

  • La entrada de registro se escribió el 1 de enero del 2024 o en una fecha posterior.