Criar um conjunto de dados vinculado do BigQuery em um bucket de registros

Para analisar dados de registro usando os serviços do BigQuery, como o BigQuery Studio ou o Data Studio, crie um conjunto de dados vinculado do BigQuery no bucket de registros. Esse conjunto de dados permite mesclar os dados de registro com outros conjuntos de dados. Também é possível criar políticas de alertas que monitoram os resultados de uma consulta SQL.

Um conjunto de dados vinculado do BigQuery é um ponteiro somente leitura para o bucket de registros. Ele permite usar os serviços do BigQuery para consultar os dados de registro sem duplicar os dados ou pagar pelo armazenamento separado no BigQuery.

Não é possível criar um conjunto de dados vinculado do BigQuery para uma visualização de análise.

Se você não estiver familiarizado com a Análise de observabilidade, consulte a visão geral da Análise de observabilidade.

Quando você precisa de um conjunto de dados vinculado do BigQuery

Não é necessário um conjunto de dados vinculado do BigQuery quando você quer consultar os dados de registro ou os dados de registro e de trace. Para esses cenários, use a página Análise de observabilidade. Também é possível salvar e compartilhar consultas, além de salvar a consulta em um painel personalizado. Para informações sobre como consultar os dados de trace, consulte Consultar e analisar traces.

Você precisa de um conjunto de dados vinculado do BigQuery quando quiser fazer o seguinte:

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 de registros 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 vinculado do BigQuery durante o processo de conexão. Todas as visualizações de registros no bucket de registros são automaticamente mapeadas 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 de registros 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 mostrar 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 na camada de permissão do BigQuery, não na camada de permissão do Cloud Logging. Portanto, os papéis e 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 de dados.

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, o seguinte ocorre:

  • O Google Cloud Observability pode criar as seguintes contas de serviço ou modificar as concessões de papéis do IAM delas:

  • Os registros de auditoria registram a solicitação para criar um link e a solicitação do gerenciador de agentes 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

  1. Faça login na sua Google Cloud conta do. Se você é novo no Google Cloud, crie uma conta para avaliar o desempenho dos nossos produtos em cenários reais. Clientes novos também recebem US $300 em créditos para executar, testar e implantar cargas de trabalho.
  2. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. Para ter 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 seu 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 com papéis personalizados ou outros papéis predefinidos.

  7. Confira se o bucket de registros foi atualizado para usar a Análise de observabilidade:

    1. No Google Cloud console, 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.

    2. Se o bucket de registros mostrar Upgrade, clique em Upgrade e conclua a caixa de diálogo.

Quando quiser usar os recursos do BigQuery para analisar os dados de registro, faça upgrade de um bucket de registros para usar a Análise de observabilidade e crie um conjunto de dados vinculado. Com essa configuração, o Logging armazena os dados de registro, mas o BigQuery pode ler os dados de registro.

Google Cloud Console do

Para criar um link para um conjunto de dados do BigQuery para um bucket de registros atual, faça o seguinte:

  1. No Google Cloud console, 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.

  2. Localize o bucket de registros e verifique se a coluna Análise de observabilidade disponível mostra Abrir.

    Se essa coluna mostrar Upgrade, o bucket de registros não foi atualizado para usar a Análise de observabilidade. Configure a Análise de observabilidade:

    1. Clique em Fazer upgrade.
    2. Clique em Confirmar na caixa de diálogo.

    Depois que o upgrade for concluído, siga para a próxima etapa.

  3. No bucket de registros, clique em Mais, e em Editar bucket.

    A caixa de diálogo Editar bucket de registros será aberta.

  4. Selecione Criar um novo conjunto de dados do BigQuery vinculado a esse bucket e insira o nome do novo conjunto de dados.

    O nome do conjunto de dados precisa ser exclusivo para cada Google Cloud projeto. Se você inserir o nome de um conjunto de dados atual, vai receber o seguinte erro: Dataset name must be unique in the selected region.

  5. Clique em Concluído e em Atualizar bucket.

    Depois que o Logging mostrar o nome do conjunto de dados vinculado na página Armazenamento de registros, pode levar vários minutos até que o BigQuery reconheça o conjunto de dados.

gcloud

Para criar um conjunto de dados vinculado para um bucket de registros atualizado para usar a Análise de observabilidade, execute o gcloud logging links create comando:

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 seu Google Cloud projeto.

O comando links create é assíncrono. O retorno de um método assíncrono é um Operation objeto, 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íncrona.

O comando links create leva vários 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 Google Cloud projeto. Se você tentar criar um conjunto de dados com o mesmo nome de um conjunto de dados atual, vai 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 atual que foi 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:

  1. Construa o corpo da solicitação para o comando create. O corpo da solicitação é formatado como um Link objeto.
  2. 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 seu Google Cloud projeto.

A resposta aos métodos assíncronos é um Operation objeto. 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íncrona.

O método links.create leva vários minutos para ser concluído.

O nome do conjunto de dados precisa ser exclusivo para cada Google Cloud projeto. Se você tentar criar um conjunto de dados com o mesmo nome de um conjunto de dados atual, vai 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