Gráfico de resultados de consultas con Análisis de registros

En este documento, se describe cómo graficar los resultados de las consultas del Análisis de registros, lo que te permite identificar patrones y tendencias en tus datos de registro. El Análisis de registros te permite buscar y agregar registros para generar estadísticas útiles mediante consultas en SQL.

Después de ejecutar una consulta, los resultados se pueden ver en una tabla o convertirse en un gráfico. Por ejemplo, para ver qué tipos de gravedad generan tus registros, crea un gráfico que muestre los recuentos de registros generados en las últimas 12 horas y desglosa los registros por severity. En la siguiente captura de pantalla, se muestran los datos desglosados en diferentes tipos de gravedad:

Gráfico de ejemplo en el que se ilustra un desglose por gravedad.

Antes de comenzar

  • Si quieres obtener los permisos que necesitas para cargar la página Análisis de registros y ejecutar consultas, pídele al administrador que te otorgue el rol de IAM de visualizador de registros (roles/logging.viewer) en Cloud Logging. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.

    Es posible que también puedas obtener los permisos necesarios a través de los roles personalizados o de otros roles predefinidos.

    Los permisos que necesitas para ver las entradas de registro y ejecutar consultas en la página Análisis de registros son los mismos que necesitas si quieres ver los registros en la página Explorador de registros. A fin de obtener información sobre las funciones adicionales que necesitas para consultar vistas en buckets definidos por el usuario o consultar la vista _AllLogs del bucket de registros _Default, consulta Roles de Cloud Logging.

  • Si quieres obtener los permisos que necesitas para crear y administrar paneles con la consola de Google Cloud, pídele a tu administrador que te otorgue el rol de IAM Editor de Monitoring (roles/monitoring.editor) en tu proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.

    Es posible que también puedas obtener los permisos necesarios a través de los roles personalizados o de otros roles predefinidos.

Selecciona los datos que deseas graficar

Para configurar qué datos se mostrarán en un gráfico, crea una consulta con SQL. Cuando seleccionas la pestaña Gráfico, Logging genera automáticamente un gráfico basado en los resultados de la consulta. Después de que se haya ejecutado la consulta y se haya generado un gráfico, puedes personalizar la configuración si cambias el tipo de gráfico y seleccionas las columnas para ver diferentes datos.

Para ver los resultados de tu consulta como un gráfico, ejecuta una consulta de la siguiente manera:

  1. En el panel de navegación de la consola de Google Cloud, selecciona Logging y, luego, Análisis de registros:

    Ir a Análisis de registros

  2. En el panel Consulta, ingresa una consulta y, luego, haz clic en Ejecutar.

  3. Después de completar la consulta, en la pestaña Resultados, selecciona cómo quieres verlos:

    • Tabla: Visualiza solo una tabla de los resultados de la consulta.

    • Gráfico: Visualiza solo un gráfico de los resultados de la consulta.

    • Ambos: Visualiza una tabla y un gráfico en paralelo.

  4. Si seleccionaste las pestañas Gráfico o Ambos, puedes cambiar el tipo de gráfico y personalizar las filas y columnas que se muestran para personalizar su configuración. Para obtener más información sobre la configuración del gráfico, consulta Personaliza la configuración del gráfico.

Personaliza la configuración del gráfico

Para personalizar la configuración del gráfico, cambia el tipo de gráfico, selecciona la dimensión y la medida del gráfico y aplica un desglose. La Dimensión se usa para agrupar o categorizar filas y es el valor del eje X. La medición, o el valor del eje Y, es una serie de datos que se traza en el eje Y.

Cambiar tipo de gráfico

Puedes seleccionar entre los siguientes tipos de gráficos, según el tipo de filas y columnas que hayas seleccionado como dimensión y medición, y cómo deseas que se visualicen esos datos.

  • Gráfico de barras (predeterminado)

    Los gráficos de barras representan datos en dos ejes. Si tu gráfico usa una categoría o una cadena como dimensión, puedes establecer la configuración de un gráfico de barras en horizontal o vertical, donde se intercambian los ejes de dimensión y medición.

  • Gráfico de líneas

    Los gráficos de líneas se pueden usar para mostrar cambios en los datos a lo largo del tiempo. Cuando usas un gráfico de líneas, cada serie temporal se muestra con una línea diferente que corresponde a las mediciones que seleccionaste.

    Si tu eje X se basa en el tiempo, cada dato se coloca al comienzo de un intervalo de tiempo. Cada dato está conectado por interpolación lineal.

  • Gráfico de áreas Un gráfico de áreas se basa en un gráfico de líneas, y el área debajo de cada línea aparece sombreada. En los gráficos de áreas, las series de datos están apiladas. Por ejemplo, si tienes dos series idénticas, la serie se superpone en un gráfico de líneas, pero el área sombreada se apila en un gráfico de áreas.

  • Gráfico circular

    Un gráfico circular muestra cómo las categorías de un conjunto de datos se relacionan con el conjunto de datos completo, mediante el uso de un círculo para representar todo el conjunto de datos y cuñas en el círculo para representar las categorías del conjunto de datos. El tamaño de una cuña indica cuánto contribuye, con frecuencia como porcentaje, la categoría al total.

Cómo cambiar las dimensiones y las medidas

Puedes elegir qué filas y columnas se grafican si seleccionas los campos de dimensión y medición.

  • Dimensión

    La dimensión debe ser una columna de marca de tiempo, numérica o de string. De forma predeterminada, la dimensión se establece en la primera columna basada en la marca de tiempo del esquema. Si no hay una marca de tiempo presente en la consulta, se selecciona la primera columna de string como dimensión. También puedes personalizar la dimensión en el panel Visualización del gráfico. Cuando se selecciona una columna de marca de tiempo como dimensión, el gráfico muestra cómo cambian los datos a lo largo del tiempo.

    El intervalo de las marcas de tiempo se establece automáticamente de forma predeterminada, pero también puedes seleccionar un intervalo personalizado. Los intervalos automáticos cambian los valores según el selector de intervalo de tiempo para mantener grupos de tamaño similar.

    También puedes inhabilitar el intervalo, lo que te permite especificar tus propias agregaciones y rangos de tiempo dentro de la consulta para realizar un análisis más complejo. Cuando inhabilitas el intervalo, se establece la función de agregación de las mediciones en none. Solo se permiten las mediciones numéricas cuando el intervalo de dimensiones está inhabilitado.

  • Medir

    Puedes seleccionar varias mediciones en el panel Visualización del gráfico. Cuando seleccionas una medición, también debes seleccionar la función de agregación para realizar en sus valores agrupados, como count, sum, average y percentile-99. Por ejemplo, count-distinct muestra la cantidad de valores únicos en una columna determinada.

    Si seleccionas la casilla de verificación Inhabilitar intervalo para la dimensión, estará disponible la opción de función de agregación none. Si la dimensión es un valor de cadena, no se muestra la casilla de verificación Inhabilitar intervalo. Sin embargo, configurar las funciones de agregación de una medición en none también inhabilita el intervalo.

Agregar un desglose

Para dividir una sola serie de datos en varias series de datos en función de otra columna, agrega un desglose.

Cuando selecciones un desglose, elige columnas que contengan una pequeña cantidad de etiquetas cortas y significativas, como region_name, en lugar de campos que puedan contener una gran cantidad de strings o strings largas, como textPayload.

Por ejemplo, consulta la siguiente configuración del gráfico, en la que el campo Dimension está configurado como type, el campo Measure está configurado en Count rows y el campo Breakdown se establece en severity:

Ejemplo de configuración de gráfico que agrega un desglose.

El siguiente gráfico es un ejemplo de un gráfico con un desglose agregado:

Gráfico de ejemplo que contiene un desglose por gravedad.

En la captura de pantalla anterior, puedes ver una serie de datos apilados, en la que el tipo de recurso k8s_container se divide en diferentes tipos severity. Esto te permite identificar cuántos registros de cada tipo de gravedad generó un recurso determinado.

Guarda un gráfico en un panel personalizado

Después de que se genera un gráfico a partir de tu consulta, puedes guardarlo en un panel personalizado. Los paneles personalizados te permiten mostrar y organizar la información que te resulta útil mediante una variedad de tipos de widgets. Por ejemplo, puedes crear un panel que proporcione detalles sobre el uso de tus buckets de Cloud Storage:

Panel de ejemplo que muestra el uso de tus buckets de Cloud Storage.

Para guardar el gráfico en un panel, haz lo siguiente:

  1. En el panel de navegación de la consola de Google Cloud, selecciona Logging y, luego, Análisis de registros:

    Ir a Análisis de registros

  2. Ejecuta una consulta para generar un gráfico y, luego, haz clic en Guardar gráfico en la pestaña Gráfico.

  3. En el diálogo Guardar en el panel, ingresa un título para tu gráfico y selecciona el panel en el que deseas guardarlo.

  4. Opcional: Para ver el panel personalizado, en el aviso, haz clic en Ver panel.

Para ver una lista de paneles personalizados que contienen gráficos generados por consultas en SQL del análisis de registros, ve al botón Guardar gráfico y haz clic en el menú .

Cómo editar un gráfico guardado en un panel personalizado

Para editar gráficos generados por consultas en SQL del análisis de registros que se guardan en un panel, consulta Modifica la configuración de un widget. En el diálogo Configurar widget, puedes editar la consulta que se usa para generar un gráfico, o puedes personalizar la configuración del gráfico para visualizar diferentes datos.

Limitaciones

  • Si tu proyecto de Google Cloud está en una carpeta que usa Assured Workloads, los gráficos que generas no se pueden mostrar en un panel personalizado.

  • Los filtros a nivel del panel no se aplican a los gráficos generados a partir de una consulta en SQL del Análisis de registros.

Consultas de muestra

En esta sección, se proporcionan consultas en SQL de muestra para graficar los resultados de la consulta. Para obtener estadísticas más útiles de tus registros, personaliza la configuración del gráfico. Para usar las consultas de muestra, haz lo siguiente:

  1. En el panel de navegación de la consola de Google Cloud, selecciona Logging y, luego, Análisis de registros:

    Ir a Análisis de registros

  2. Identifica el nombre de tabla de una vista de registro ejecutando la consulta predeterminada:

    En la lista Vistas de registro, ubica la vista de registro y, luego, selecciona Consultar. El panel Consulta se propaga con una consulta predeterminada, que incluye el nombre de la tabla que se consulta. El nombre de la tabla tiene el formato project_ID.region.bucket_ID.view_ID.

    Para obtener más información sobre cómo acceder a la consulta predeterminada, lee Consulta una vista de registro.

  3. Reemplaza TABLE por el nombre de la tabla que corresponde a la vista que deseas consultar y, luego, copia la consulta.

  4. Pega la consulta en el panel Consulta y, luego, haz clic en Ejecutar consulta.

Gráfico de las entradas de registro por ubicación y gravedad

En la siguiente consulta, se selecciona location y severity, con la ubicación convertida como una cadena:

SELECT
  CAST(JSON_VALUE(resource.labels.location) AS STRING) AS location,
  severity,
FROM
  `TABLE`

Un gráfico de muestra y su configuración se ven de la siguiente manera:

Gráfico de ejemplo en el que se muestran las entradas de registro de ubicación y gravedad.

En la captura de pantalla anterior, la configuración del gráfico tiene la siguiente configuración:

  • Tipo de gráfico: Gráfico de barras, horizontal
  • Dimensión: location, con un límite de 10
  • Medir: Contar filas
  • Desglose: severity, con un límite de cinco

Crea gráficos de los registros de auditoría de acceso a los datos de BigQuery

Mediante los siguientes filtros de consulta para los registros de auditoría data_access de BigQuery, se seleccionan ciertos campos, como user_email, ip, auth_permission y job_execution_project. Por ejemplo, puedes crear un gráfico en el que se visualice la frecuencia del uso de la API de BigQuery de cada principal a lo largo del tiempo.

SELECT
  timestamp,
  proto_payload.audit_log.authentication_info.principal_email as user_email,
  proto_payload.audit_log.request_metadata.caller_ip as ip,
  auth.permission as auth_permission,
  auth.granted as auth_granted,
  JSON_VALUE(data_access.resource.labels.project_id) AS job_execution_project,
  SPLIT(proto_payload.audit_log.resource_name, '/')[SAFE_OFFSET(1)] AS referenced_project,
  SPLIT(proto_payload.audit_log.resource_name, '/')[SAFE_OFFSET(3)] AS referenced_dataset,
  SPLIT(proto_payload.audit_log.resource_name, '/')[SAFE_OFFSET(5)] AS referenced_table
FROM `TABLE` as data_access,
  UNNEST(proto_payload.audit_log.authorization_info) AS auth
WHERE
  log_id="cloudaudit.googleapis.com/data_access"
  AND data_access.resource.type = 'bigquery_dataset'

Un gráfico de muestra y su configuración se ven de la siguiente manera:

Gráfico de ejemplo de registros de auditoría de acceso a los datos de BigQuery

En la captura de pantalla anterior, la configuración del gráfico tiene la siguiente configuración:

  • Tipo de gráfico: Gráfico de barras, vertical
  • Dimensión: user_email, con un límite de cinco
  • Medir: Contar filas
  • Desglose: auth_permission, con un límite de cinco

Limitaciones

  • Las columnas seleccionadas deben tener al menos una fila con un valor que no sea nulo.

  • Si guardas una consulta y personalizas la configuración del gráfico, esta no se guarda.

  • Si tu consulta ya contiene agregaciones, entonces el gráfico generado puede ser diferente debido a la agregación adicional que el Análisis de registros aplica automáticamente.

  • Las rutas JSON se deben convertir en cadenas y números para que se puedan representar.

¿Qué sigue?