Um conjunto de dados vinculado do BigQuery em um bucket de registros permite consultar e analisar seus dados de registro usando serviços do BigQuery, como o BigQuery Studio e o Data Studio. Como um conjunto de dados vinculado do BigQuery é um ponteiro somente leitura para seu bucket de registros, é possível mesclar dados de registro com outros conjuntos de dados e criar políticas de alertas baseadas em SQL sem duplicar dados ou pagar por armazenamento separado do BigQuery.
Não é possível criar um conjunto de dados vinculado do BigQuery para uma visualização de análise. Se você não conhece a Análise de Observabilidade, consulte a visão geral.
Quando você precisa de um conjunto de dados vinculado do BigQuery
Não é necessário um conjunto de dados vinculado do BigQuery para consultar dados de registro ou dados de registro e de trace. Nesses cenários, use a página Análise de Observabilidade. Também é possível salvar e compartilhar suas consultas, além de salvar a consulta em um painel personalizado. Para saber como consultar dados de trace, consulte Consultar e analisar traces.
Você precisa de um conjunto de dados do BigQuery vinculado quando quiser fazer o seguinte:
- Mesclar dados de entrada de registro com outros conjuntos de dados do BigQuery.
- Consultar dados de registro de outro serviço, como o BigQuery Studio ou o Data Studio.
- Crie uma política de alertas que monitore o resultado de uma consulta SQL. Para mais informações, consulte Monitorar os resultados da consulta SQL com uma política de alertas.
Um conjunto de dados vinculado do BigQuery para um bucket de registros permite que o BigQuery leia os dados no bucket de registros.
Como os buckets e as visualizações de registros são mapeados para objetos do BigQuery
Quando você cria um conjunto de dados vinculado do BigQuery para um bucket de registros, um novo conjunto de dados fica disponível para o BigQuery. Você especifica o nome do conjunto de dados do BigQuery vinculado durante o processo de vinculação. Todas as visualizações de registro no bucket de registros são mapeadas automaticamente para visualizações virtuais no conjunto de dados. O nome de uma visualização virtual é o mesmo da visualização de registros correspondente.
Por exemplo, suponha que o projeto my_project tenha um bucket de registros chamado
example e que esse bucket tenha uma visualização de registros chamada _AllLogs. Se você
criar um conjunto de dados vinculado do BigQuery para esse bucket de registros com o
nome my_dataset, a
página Explorer do BigQuery vai exibir uma entrada my_project.
Um filho da entrada my_project é um conjunto de dados com o nome my_dataset,
e esse conjunto de dados lista uma visualização virtual chamada _AllLogs.
Implicações do controle de acesso ao usar conjuntos de dados vinculados do BigQuery
Quando um principal consulta uma visualização em um conjunto de dados vinculado do BigQuery, essa consulta é executada pela camada de permissão do BigQuery, não pela camada de permissão do Cloud Logging. Portanto, os papéis e as permissões do BigQuery concedidos ao principal no conjunto de dados vinculado do BigQuery determinam se ele pode consultar o conjunto de dados.
Não é possível restringir um principal a uma visualização virtual específica em um conjunto de dados vinculado. Quando um principal recebe acesso ao conjunto de dados vinculado do BigQuery, ele pode consultar todas as visualizações nesse conjunto.
Ações do sistema que ocorrem quando você cria um conjunto de dados vinculado
Quando você cria um link em um conjunto de dados de observabilidade, ocorre o seguinte:
O Google Cloud Observability pode criar as seguintes contas de serviço ou modificar as concessões de papel do IAM:
Conta de serviço de monitoramento: necessária para criar um link para um conjunto de dados vinculado do BigQuery. A API Cloud Monitoring precisa estar ativada para que o Google Cloud Observability crie essa conta de serviço.
Conta de serviço do Cloud Observability: necessária para criar um link em um conjunto de dados de observabilidade.
Conta de serviço do Cloud Logging: necessária para criar um link em um bucket de registros.
Os registros de auditoria registram a solicitação para criar um link e a solicitação do gerente do agente de serviço para conceder à conta de serviço do Monitoring o papel do IAM de Agente de serviço do Monitoring. Esses registros também registram a conclusão da operação de longa duração.
Antes de começar
- Faça login na sua conta do Google Cloud . Se você começou a usar o Google Cloudagora, crie uma conta para avaliar o desempenho dos nossos produtos em situações reais. Clientes novos também recebem US $300 em créditos para executar, testar e implantar cargas de trabalho sem custos financeiros.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Para receber as permissões necessárias para criar um conjunto de dados vinculado, peça ao administrador para conceder a você o papel do IAM de Gravador de configuração de registros (
roles/logging.configWriter) no projeto. Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.
Verifique se o bucket de registros foi atualizado para usar a Análise de Observabilidade:
-
No console Google Cloud , acesse a página Armazenamento de registros:
Acessar o armazenamento de registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
- Se o bucket de registros exibir Fazer upgrade, clique em Fazer upgrade e conclua a caixa de diálogo.
-
Criar um conjunto de dados vinculado do BigQuery
Quando quiser usar os recursos do BigQuery para analisar seus dados de registro, faça upgrade de um bucket de registros para usar a Análise de Observabilidade e, em seguida, crie um conjunto de dados vinculado. Com essa configuração, o Logging armazena os dados de registro, mas o BigQuery pode ler esses dados.
Console do Google Cloud
Para criar um link para um conjunto de dados do BigQuery em um bucket de registros, faça o seguinte:
-
No console Google Cloud , acesse a página Armazenamento de registros:
Acessar o armazenamento de registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
Localize o bucket de registros e verifique se a coluna Análise de Observabilidade disponível mostra Abrir.
Se essa coluna exibir Fazer upgrade, o bucket de registros não foi atualizado para usar a Análise de Observabilidade. Configurar a Análise de Observabilidade:
- Clique em Fazer upgrade.
- Clique em Confirmar na caixa de diálogo.
Depois que o upgrade for concluído, siga para a próxima etapa.
No bucket de registros, clique em Maismore_vert e em Editar bucket.
A caixa de diálogo Editar bucket de registros será aberta.
Selecione Criar um novo conjunto de dados do BigQuery vinculado a este bucket e insira o nome do novo conjunto de dados.
O nome do conjunto de dados precisa ser exclusivo para cada projeto do Google Cloud . Se você inserir o nome de um conjunto de dados atual, receberá o seguinte erro:
Dataset name must be unique in the selected region.Clique em Concluído e em Atualizar bucket.
Depois que o Logging exibir o nome do conjunto de dados vinculado na página Armazenamento de registros, pode levar vários minutos para que o BigQuery reconheça o conjunto de dados.
gcloud
Para criar um conjunto de dados vinculado para um bucket de registros que foi atualizado
para usar a Análise de Observabilidade, execute o
comando gcloud logging links create:
gcloud logging links create LINK_ID --bucket=BUCKET_ID --location=LOCATION
O LINK_ID fornecido é usado como o nome do conjunto de dados do BigQuery, e o valor desse campo precisa ser exclusivo para o projeto do Google Cloud .
O comando links create é assíncrono. O retorno de um
método assíncrono é um objeto Operation, que
contém informações sobre o progresso do método. Quando o
método é concluído, o objeto Operation contém o status. Para mais
informações, consulte Métodos de API assíncronos.
O comando links create leva alguns minutos para ser concluído.
Por exemplo, o comando a seguir cria um conjunto de dados vinculado chamado
mylink para o bucket de registros chamado my-bucket:
gcloud logging links create mylink --bucket=my-bucket --location=global
O nome do conjunto de dados precisa ser exclusivo para cada projeto do Google Cloud . Se você tentar criar um conjunto de dados com o mesmo nome de um conjunto de dados atual, receberá o seguinte erro:
BigQuery dataset with name "LINK_ID" already exists.
Se você tentar criar um conjunto de dados vinculado para um bucket de registros que não foi atualizado para usar a Análise de Observabilidade, o seguinte erro será informado:
A link can only be created for an analytics-enabled bucket.
REST
Para criar um conjunto de dados vinculado do BigQuery para um bucket de registros atualizado para usar a Análise de Observabilidade, chame o método assíncrono projects.locations.buckets.links.create da API Cloud Logging.
Prepare os argumentos do método da seguinte maneira:
- Crie o corpo da solicitação para o comando
create. O corpo da solicitação é formatado como um objetoLink. - Para o parâmetro de consulta do comando, use
linkId=LINK_ID. O LINK_ID fornecido é usado como o nome do conjunto de dados do BigQuery, e o valor desse campo precisa ser exclusivo para o projeto do Google Cloud .
A resposta aos métodos assíncronos é um
objeto Operation. Esse objeto contém
informações sobre o progresso do método. Quando o
método é concluído, o objeto Operation contém o status. Para mais
informações, consulte Métodos de API assíncronos.
O método links.create leva alguns minutos para ser concluído.
O nome do conjunto de dados precisa ser exclusivo para cada projeto do Google Cloud . Se você tentar criar um conjunto de dados com o mesmo nome de um conjunto de dados atual, receberá o seguinte erro:
BigQuery dataset with name "LINK_ID" already exists.
Se você tentar criar um conjunto de dados vinculado para um bucket de registros que não foi atualizado para usar a Análise de Observabilidade, o seguinte erro será informado:
A link can only be created for an analytics-enabled bucket.
A seguir
- Consultar dados de registro com o BigQuery Studio
- Executar consultas de registro no mecanismo do BigQuery