En este documento, se describe cómo puedes usar Log Analytics para estimar el volumen facturable de tus entradas de registro. Puedes escribir consultas que informen y agreguen tu volumen facturable por diferentes dimensiones, como el tipo de recurso o nombre de la aplicación, y, luego, graficar y ver los resultados de las consultas.
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 incluirlo 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 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 están escribiendo la mayor cantidad de 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 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:
-
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.
- Para cada bucket de registros que tenga una vista de registros que deseas consultar, asegúrate de que la columna Log Analytics disponible muestre Abierto. Si aparece Upgrade, haz clic en Upgrade y completa el diálogo.
Configura roles y permisos de IAM
En esta sección, se describen los roles o los permisos de IAM necesarios para usar Log Analytics:
-
Para obtener los permisos que necesitas para usar Log Analytics y consultar vistas de registro, pídele a tu administrador que te otorgue los siguientes roles de IAM en tu proyecto:
-
Para consultar los buckets de registros
_Required
y_Default
, usa el 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
).
Puedes restringir un principal a una vista de registro específica agregando una condición de IAM al otorgamiento de rol de acceso a la vista de registros que se realiza 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 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 buckets definidos por el usuario o para consultar la vista
_AllLogs
del bucket de registros_Default
, consulta Roles de Cloud Logging. -
Para consultar los buckets de registros
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 la página Log Analytics o en cualquier lugar donde 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.
Para usar las consultas de muestra, haz lo siguiente:
Página Log Analytics: Reemplaza TABLE_NAME_OF_LOG_VIEW por el nombre de la vista de registro. El formato es
project_ID.region.bucket_ID.view_ID
.Conjuntos de datos de BigQuery: Reemplaza TABLE_NAME_OF_LOG_VIEW por la ruta de acceso a la tabla en el conjunto de datos vinculado.
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:
Cómo consultar el volumen de registro por nombre
Para mostrar una lista de la cantidad 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 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, puedes visualizar la parte de los datos de registro que se escribieron en diferentes registros:
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
Puedes incluir el campo storage_bytes
en las consultas que ejecutas a través de la página
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 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 donde 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.