En este documento, se describe cómo crear un conjunto de datos vinculado para un bucket de registros y cómo consultar y ver los registros en ese conjunto de datos. Por ejemplo, puedes crear un conjunto de datos vinculado para ejecutar consultas en el Análisis de registros con tus ranuras reservadas de BigQuery. Del mismo modo, es posible que desees un conjunto de datos vinculado para poder escribir consultas en BigQuery o en Looker Studio que unan tus datos de registro con otros datos de la empresa.
No puedes crear un conjunto de datos vinculado a BigQuery para una vista de Analytics.
Si no conoces Log Analytics, consulta la descripción general de Log Analytics.
Cuándo necesitas un conjunto de datos vinculado
No necesitas un conjunto de datos de BigQuery vinculado para enviar consultas a una vista de registros en la página Log Analytics cuando usas el servicio predeterminado de Cloud Logging. Puedes guardar y compartir tus consultas, y guardar los resultados en un panel personalizado.
Necesitas un conjunto de datos de BigQuery vinculado cuando quieras realizar cualquiera de las siguientes acciones:
- Unir los datos de entrada de registro con otros conjuntos de datos de BigQuery
- Consultar datos de registro de otro servicio, como la página de BigQuery Studio o Looker Studio
- Mejora el rendimiento de las consultas que ejecutas desde Estadísticas de registros ejecutándolas en tus ranuras reservadas de BigQuery.
- Crea una política de alertas que supervise el resultado de una consulta en SQL. Para obtener más información, consulta Supervisa los resultados de tus consulta en SQL con una política de alertas.
Un conjunto de datos de BigQuery vinculado para un bucket de registros permite que BigQuery lea los datos en el bucket de registros.
Si ejecutas tus consultas en ranuras reservadas de BigQuery, estas estarán sujetas a los precios de procesamiento de capacidad. Además, si consultas tus datos con un servicio que no sea Log Analytics, es posible que tus consultas estén sujetas a otros cargos según ese servicio. Consulta la página de precios del servicio que usas.
Cómo se asignan los buckets de registros y las vistas de registros a los objetos de BigQuery
Cuando creas un conjunto de datos de BigQuery vinculado para un bucket de registros, BigQuery dispone de un nuevo conjunto de datos. Especificas el nombre del conjunto de datos vinculado durante el proceso de vinculación. Todas las vistas de registros dentro del bucket de registros se asignan automáticamente a vistas virtuales en el conjunto de datos. El nombre de una vista virtual es el mismo que el de la vista de registros correspondiente.
Por ejemplo, supongamos que el proyecto my_project
tiene un bucket de registros llamado example
y que este bucket de registros tiene una vista de registros llamada _AllLogs
. Si creas un conjunto de datos vinculado para ese bucket de registros con el nombre my_dataset
, la página Explorador de BigQuery mostrará una entrada my_project
.
Un elemento secundario de la entrada my_project
es un conjunto de datos con el nombre my_dataset
, y ese conjunto de datos enumera una vista virtual llamada _AllLogs
.
Implicaciones del control de acceso cuando se usan conjuntos de datos vinculados
Cuando una principal consulta una vista en un conjunto de datos de BigQuery vinculado, esa consulta se ejecuta a través de la capa de permisos de BigQuery, no de la capa de permisos de Cloud Logging. Por lo tanto, los roles y permisos de BigQuery otorgados a la principal en el conjunto de datos vinculado determinan si puede consultar el conjunto de datos.
No puedes restringir un principal a una vista virtual específica dentro de un conjunto de datos vinculado. Cuando se le otorga acceso a un principal al conjunto de datos vinculado, este puede consultar todas las vistas de ese conjunto de datos.
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 en la que desees realizar consultas, asegúrate de que la columna Análisis de registros 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 Log Analytics:
-
Para obtener los permisos que necesitas para usar Log Analytics y consultar vistas de registros, 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 registros de un proyecto, usa el Descriptor de acceso de vista de registros (
roles/logging.viewAccessor
).
Puedes restringir un principal a una vista de registros específica agregando una condición de IAM al otorgamiento del rol 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 registros. 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 consultar los buckets de registros
-
Para obtener los permisos que necesitas para crear y consultar conjuntos de datos vinculados, pídele a tu administrador que te otorgue los siguientes roles de IAM en el proyecto que almacena el bucket de registros:
-
Para crear y ver conjuntos de datos vinculados, obtén el rol Escritor de configuración de registros (
roles/logging.configWriter
). -
Para ejecutar consultas en conjuntos de datos vinculados con ranuras reservadas de BigQuery, haz lo siguiente:
-
Usuario de BigQuery (
roles/bigquery.user
) -
Usuario de trabajo de BigQuery (
roles/bigquery.jobUser
)
-
Usuario de BigQuery (
-
Para ver los conjuntos de datos vinculados en BigQuery Studio, otorga todos los roles mencionados en este paso y el siguiente. Puedes otorgar este rol a un conjunto de datos o a tu proyecto:
Visualizador de datos de BigQuery (
roles/bigquery.dataViewer
)
-
Para crear y ver conjuntos de datos vinculados, obtén el rol Escritor de configuración de registros (
Verifica tu edición de BigQuery
Si deseas consultar tus datos de registro desde la página Análisis de registros con las ranuras reservadas de BigQuery y si usas proyectos con Controles del servicio de nube privada virtual (VPC), asegúrate de usar la edición Enterprise de BigQuery. Para obtener más información, consulta Información sobre las ediciones de BigQuery.
Crea un conjunto de datos vinculado a BigQuery
Cuando desees usar las capacidades de BigQuery para analizar tus datos de registro, actualiza un bucket de registros para usar el Análisis de registros y, luego, crea un conjunto de datos vinculado. Con esta configuración, Logging almacena tus datos de registro, pero BigQuery puede leerlos.
Consola de Google Cloud
Para crear un vínculo a un conjunto de datos de BigQuery para un bucket de registros existente, haz lo siguiente:
-
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.
Ubica el bucket de registros y verifica que la columna Análisis de registros disponibles muestre Abrir.
Si en esta columna se muestra Actualizar, significa que el bucket de registros no se actualizó para usar el Análisis de registros. Configura Log Analytics:
- Haz clic en Actualizar.
- Haz clic en Confirmar en el diálogo.
Una vez que se complete la actualización, continúa con el siguiente paso.
En el bucket de registros, haz clic en Másmore_vert y, luego, en Editar bucket.
Se abrirá el diálogo Editar bucket de registros.
Selecciona Crear un nuevo conjunto de datos de BigQuery que se vincule a este bucket y, luego, ingresa el nombre del nuevo conjunto de datos.
El nombre del conjunto de datos debe ser único para cada Google Cloud proyecto. Si ingresas el nombre de un conjunto de datos existente, recibirás el siguiente error:
Dataset name must be unique in the selected region.
Haz clic en Listo y, luego, en Actualizar bucket.
Después de que Logging muestre el nombre del conjunto de datos vinculado en la página Almacenamiento de registros, es posible que transcurran varios minutos antes de que BigQuery reconozca el conjunto de datos.
gcloud
Para crear un conjunto de datos vinculado para un bucket de registros que se actualizó para usar el Análisis de registros, ejecuta el comando gcloud logging links create
:
gcloud logging links create LINK_ID --bucket=BUCKET_ID --location=LOCATION
El LINK_ID que proporcionas se usa como nombre del conjunto de datos de BigQuery, y el valor de este campo debe ser único para tu proyecto de Google Cloud .
El comando links create
es asíncrono. El valor que devuelve un método asíncrono es un objeto Operation
, que contiene información sobre el progreso del método. Cuando se completa el método, el objeto Operation
contiene el estado. Para obtener más información, consulta Métodos de API asíncronos.
El comando links create
tarda varios minutos en completarse.
Por ejemplo, el siguiente comando crea un conjunto de datos vinculado llamado mylink
para el bucket de registros llamado my-bucket
:
gcloud logging links create mylink --bucket=my-bucket --location=global
El nombre del conjunto de datos debe ser único para cada Google Cloud proyecto. Si intentas crear un conjunto de datos con el mismo nombre que uno existente, recibirás el siguiente error:
BigQuery dataset with name "LINK_ID" already exists.
Si intentas crear un conjunto de datos vinculado para un bucket de registros que no se actualizó para usar el Análisis de registros, se informará el siguiente error:
A link can only be created for an analytics-enabled bucket.
REST
Para crear un conjunto de datos de BigQuery vinculado para un bucket de registros existente que se actualizó para usar el Análisis de registros, llama al método asíncrono projects.locations.buckets.links.create
de la API de Cloud Logging.
Prepara los argumentos del método de la siguiente manera:
- Crea el cuerpo de la solicitud para el comando
create
. El cuerpo de la solicitud tiene el formato de un objetoLink
. - Para el parámetro de consulta del comando, usa
linkId=LINK_ID
. El LINK_ID que proporcionas se usa como el nombre del conjunto de datos de BigQuery, y el valor de este campo debe ser único para tu proyecto de Google Cloud .
La respuesta a los métodos asíncronos es un objeto Operation
. Este objeto contiene información sobre el progreso del método. Cuando se completa el método, el objeto Operation
contiene el estado. Para obtener más información, consulta Métodos de API asíncronos.
El método links.create
tarda varios minutos en completarse.
El nombre del conjunto de datos debe ser único para cada Google Cloud proyecto. Si intentas crear un conjunto de datos con el mismo nombre que uno existente, recibirás el siguiente error:
BigQuery dataset with name "LINK_ID" already exists.
Si intentas crear un conjunto de datos vinculado para un bucket de registros que no se actualizó para usar el Análisis de registros, se informará el siguiente error:
A link can only be created for an analytics-enabled bucket.
Ejecuta consultas desde BigQuery
Cuando tienes un bucket de registros que usa el Análisis de registros y conjuntos de datos vinculados, puedes ver y consultar tus conjuntos de datos vinculados con la página de BigQuery Studio. Con esta configuración, puedes analizar tus conjuntos de datos con comandos, flujos de trabajo y conjuntos de datos disponibles solo en BigQuery Studio.
Para abrir BigQuery desde el Análisis de registros y, luego, consultar el conjunto de datos vinculado, haz lo siguiente:
Asegúrate de que exista un conjunto de datos vinculado para el bucket de registros que aloja la vista de registros que deseas consultar:
-
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.
Ubica el bucket de registros y verifica que la columna Conjunto de datos vinculado a BigQuery muestre una URL. Si la entrada está vacía, debes crear un conjunto de datos vinculado. Para obtener información sobre estos pasos, consulta Crea un conjunto de datos vinculado de BigQuery.
-
-
En la consola de Google Cloud , ve a la página Análisis de registros:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.
En la lista Registrar vistas, busca y selecciona el registro de vistas.
En el panel Esquema, selecciona Consulta.
El panel Consulta se completa con una consulta predeterminada. También puedes ingresar una consulta en el panel Consulta o editar una consulta que se muestre.
En la barra de herramientas, expande el botón etiquetado como Ejecutar consulta o Ejecutar en BigQuery y selecciona Abrir en BigQuery.
Se abrirá la página BigQuery Studio. La instrucción
FROM
de la consulta se modifica para especificar la ruta de acceso a la vista de registros en el conjunto de datos vinculado con la sintaxis de ruta de acceso a la tabla de BigQuery.También puedes editar la búsqueda que se muestra.
En la página BigQuery Studio, haz clic en Ejecutar consulta.
Ejecuta consultas de Log Analytics en tus ranuras reservadas de BigQuery
Si deseas minimizar el tiempo de ejecución de tus consultas de Log Analytics, ejecútalas en tus ranuras reservadas de BigQuery. La página Análisis de registros está preconfigurada para usar el servicio predeterminado de Análisis de registros, lo que significa que tus consultas deben competir por un espacio de ranuras limitado con otras consultas. Cuando no hay ranuras disponibles, se retrasa la ejecución de la consulta. Puedes eliminar estos retrasos ejecutando tus consultas en ranuras reservadas de BigQuery.
Para emitir una consulta en SQL a una vista de registro, haz lo siguiente:
Asegúrate de que exista un conjunto de datos vinculado para el bucket de registros que aloja la vista de registros que deseas consultar:
-
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.
Ubica el bucket de registros y verifica que la columna Conjunto de datos vinculado a BigQuery muestre una URL. Si la entrada está vacía, debes crear un conjunto de datos vinculado. Para obtener información sobre estos pasos, consulta Crea un conjunto de datos vinculado de BigQuery.
-
Asegúrate de haber configurado tus ranuras reservadas de BigQuery:
Configura Análisis de registros para ejecutar tus consultas en las ranuras reservadas de BigQuery:
-
En la consola de Google Cloud , ve a la página Análisis de registros:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.
En la lista Vistas de registros, busca la vista y, luego, selecciona Consulta o ingresa una consulta.
Si el panel de consultas muestra un mensaje de error que hace referencia a la instrucción
FROM
, significa que la tabla no se puede resolver en una vista de registro específica. Para obtener información sobre cómo resolver este error, consulta ErrorFROM clause must contain exactly one log view
.Ve a la barra de herramientas y asegúrate de que se muestre un botón con la etiqueta Ejecutar en BigQuery.
Si en la barra de herramientas se muestra Ejecutar consulta, haz clic en settings Configuración y selecciona BigQuery.
Si el botón Ejecutar en BigQuery está inhabilitado, debes crear un conjunto de datos vinculado.
Ejecuta tu consulta.
Puedes usar las opciones de la barra de herramientas para dar formato a tu consulta, borrarla y abrir la documentación de referencia de BigQuery SQL.
-
¿Qué sigue?
- Cómo guardar y compartir una consulta en SQL
- Consultas en SQL de muestra
- Cómo generar gráficos con los resultados de las consulta en SQL SQL