Encaminhar registros para destinos compatíveis

Neste documento, explicamos como criar e gerenciar coletores para rotear entradas de registro para destinos compatíveis.

O Cloud Logging cria e gerencia automaticamente uma conta de serviço para coletores de registros que roteiam registros para um destino que não seja um bucket de registros no projeto atual do Google Cloud. É possível criar e gerenciar uma conta de serviço usada por coletores em vários projetos. Para mais informações, consulte Configurar coletores de registros com contas de serviço gerenciado pelo usuário.

Visão geral

Os coletores controlam como o Cloud Logging encaminha registros. Com os coletores, é possível rotear alguns ou todos os registros para os seguintes destinos:

  • Buckets de registros do Cloud Logging: fornece armazenamento no Cloud Logging. Um bucket de registros pode armazenar registros recebidos por vários projetos do Google Cloud. É possível combinar os dados do Cloud Logging com outros dados fazendo upgrade de um bucket de registros para usar a Análise de dados de registros e, em seguida, criando um conjunto de dados do BigQuery vinculado. Para informações sobre como visualizar registros armazenados em buckets de registros, consulte Visão geral de consulta e visualização de registros e Visualizar registros roteados para buckets do Cloud Logging.
  • Projetos do Google Cloud: roteie entradas de registro para outro projeto do Google Cloud. Quando você encaminha registros para um projeto diferente do Google Cloud, o roteador de registros do projeto de destino recebe e processa os registros. Os coletores no projeto de destino determinam como as entradas de registro recebidas são roteadas. As entradas de registro que são roteadas para um projeto diferente do Google Cloud por buckets de registros não podem ser analisadas pelo Error Reporting.
  • Tópicos do Pub/Sub: fornece suporte para integrações de terceiros, como Splunk. As entradas de registro são formatadas em JSON e roteadas para um tópico do Pub/Sub. Para informações sobre como visualizar registros roteados para o Pub/Sub, consulte Visualizar registros roteados para o Pub/Sub.
  • Conjuntos de dados do BigQuery: fornece armazenamento de entradas de registro nos conjuntos de dados do BigQuery. Você pode usar recursos de análise de Big Data nos registros armazenados. Para combinar os dados do Cloud Logging com outras fontes de dados, recomendamos fazer upgrade dos buckets de registros para usar a Análise de dados de registros e, em seguida, criar um conjunto de dados vinculado do BigQuery. Para mais informações sobre como visualizar registros roteados para o BigQuery, consulte Visualizar registros roteados para o BigQuery.
  • Buckets do Cloud Storage: armazenam dados de registro no Cloud Storage. As entradas de registro são armazenadas como arquivos JSON. Para mais informações sobre como visualizar registros roteados para o Cloud Storage, consulte Visualizar registros roteados para o Cloud Storage.

Os coletores pertencem a um determinado recurso do Google Cloud: projetos, contas de faturamento, pastas e organizações do Google Cloud. Quando o recurso recebe uma entrada de registro, ele encaminha a entrada de acordo com os coletores contidos nele. A entrada de registro é enviada para o destino associado a cada coletor correspondente.

Coletores agregados são um tipo que combina e roteia entradas de registro dos recursos do Google Cloud contidos por uma organização ou pasta. Para mais instruções, consulte Agrupar e rotear registros no nível da organização para destinos compatíveis.

Para criar e gerenciar coletores, use o console do Google Cloud, a API Cloud Logging e a Google Cloud CLI. Usar o console do Google Cloud tem as seguintes vantagens em relação a outros métodos:

  • Visualize e gerencie todos os seus coletores em um só lugar.
  • Visualize quais entradas de registro correspondem ao filtro do coletor antes de criá-lo.
  • Criar e autorizar destinos do coletor para seus coletores.

Antes de começar

As instruções neste documento descrevem como criar e gerenciar coletores no nível do projeto do Google Cloud. Também é possível criar coletores não agregados para contas de faturamento, pastas e organizações.

Para começar, siga estas etapas:

  1. Verifique se você tem um projeto do Google Cloud com registros que possam ser exibidos na Análise de registros.

  2. Ative a API Cloud Logging.

    Ative a API

  3. Para ter as permissões necessárias para criar, modificar ou excluir um coletor, peça ao administrador para conceder a você o papel de IAM Gravador de configuração de registros (roles/logging.configWriter) no seu projeto. Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.

    Também é possível conseguir as permissões necessárias por meio de papéis personalizados ou de outros papéis predefinidos.

    Para informações sobre como conceder papéis do IAM, consulte o Guia de controle de acesso do Logging.

  4. Você tem um recurso em um destino compatível ou pode criar um.

    Para rotear registros a um destino, o destino precisa existir antes da criação do coletor. É possível criar o destino em qualquer projeto do Google Cloud em qualquer organização.

    Algumas limitações podem se aplicar quando você encaminha os registros para outros destinos. Para mais informações, consulte Limitações de destino.

Criar um coletor

Veja a seguir as instruções para criar um coletor em um projeto do Google Cloud. Em vez de um projeto do Google Cloud, é possível especificar uma conta, pasta ou organização de faturamento.

É possível criar até 200 coletores por projeto do Google Cloud.

Depois de criar o coletor, verifique se o Logging tem as permissões apropriadas para gravar registros no destino do coletor. Consulte Definir permissões de destino.

Para criar um coletor, faça o seguinte:

Console

  1. No painel de navegação do console do Google Cloud, selecione Logging e clique em Roteador de registros:

    Acessar o roteador de registros

  2. Selecione um projeto atual do Google Cloud.

  3. Selecione Criar coletor.

  4. No painel Detalhes do coletor, insira os seguintes detalhes:

    • Nome do coletor: forneça um identificador para o coletor. Depois de criar o coletor, não será possível renomeá-lo, mas será possível excluí-lo e criar um novo coletor.

    • Descrição do coletor (opcional): descreva a finalidade ou o caso de uso do coletor.

  5. No painel Destino do coletor, selecione o serviço e o destino do coletor usando o menu Selecionar serviço de coletor.

    1. Para rotear os registros para um serviço que está no mesmo projeto do Google Cloud, selecione uma das seguintes opções:

      • Bucket do Cloud Logging: selecione ou crie um bucket do Logging.
      • Tabela do BigQuery: selecione ou crie o conjunto de dados específico para receber os registros roteados. Você também tem a opção de usar tabelas particionadas.
      • Bucket do Cloud Storage: selecione ou crie o bucket específico do Cloud Storage para receber os registros roteados.
      • Tópico do Pub/Sub: selecione ou crie o tópico específico para receber os registros roteados.
      • Splunk: selecione o tópico do Pub/Sub do serviço Splunk.
      • Outro projeto: preencha o campo Destino do coletor, conforme descrito em Formatos do caminho de destino.
  6. No painel Escolher registros a serem incluídos no coletor, faça o seguinte:

    1. No campo Criar filtro de inclusão, digite uma expressão de filtro que corresponda às entradas de registro que você quer incluir. Para saber mais sobre a sintaxe para escrever filtros, consulte Linguagem de consulta do Logging.

      Se você não definir um filtro, todos os registros do recurso selecionado serão roteados para o destino.

      Por exemplo, é possível criar um filtro para encaminhar todos os registros de acesso a dados para um único bucket do Logging. Esse filtro tem a seguinte aparência:

      log_id("cloudaudit.googleapis.com/data_access") OR log_id("externalaudit.googleapis.com/data_access")
      

      O comprimento de um filtro não pode exceder 20.000 caracteres.

    2. Para conferir se você inseriu o filtro correto, selecione Visualizar registros. Isso abre o Explorador de registros em uma nova guia com o filtro pré-preenchido.

  7. (Opcional) No painel Escolha os registros para filtrar do coletor, faça o seguinte:

    1. No campo Nome do filtro de exclusão, insira um nome.

    2. No campo Criar um filtro de exclusão, insira uma expressão de filtro que corresponda às entradas de registro que você quer excluir. Também é possível usar a função sample para selecionar uma parte das entradas de registro a serem excluídas.

    É possível criar até 50 filtros de exclusão por coletor. O comprimento de um filtro não pode exceder 20.000 caracteres.

  8. Selecione Criar coletor.

API

  1. Para criar um coletor de geração de registros no projeto do Google Cloud, use projects.sinks.create na API Logging. No objeto LogSink, forneça os valores necessários apropriados no corpo da solicitação do método:

    • name: um identificador do coletor. Depois de criar o coletor, não será possível renomear o coletor, mas você poderá excluí-lo e criar um novo coletor.
    • destination: o serviço e o destino para onde você quer que os registros sejam roteados. Para rotear os registros para um projeto diferente ou para um destino que esteja em outro projeto, defina o campo destination com o caminho apropriado, conforme descrito em Formatos do caminho de destino.

      Por exemplo, se o destino do coletor for um conjunto de dados do BigQuery, destination ficará assim:

      bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID
      
  2. No objeto LogSink, forneça as informações opcionais adequadas:

    • filter : defina a propriedade filter de acordo com as entradas de registro que você quer incluir no coletor. Se você não definir um filtro, todos os registros do projeto do Google Cloud serão roteados para o destino. O comprimento de um filtro não pode exceder 20.000 caracteres.
    • exclusions: defina essa propriedade para corresponder às entradas de registro que você quer excluir do coletor. Também é possível usar a função sample para selecionar uma parte das entradas de registro a serem excluídas. É possível criar até 50 filtros de exclusão por coletor.
    • description: defina essa propriedade para descrever a finalidade ou o caso de uso do coletor.
  3. Chame projects.sinks.create para criar o coletor.

  4. Se a resposta da API contiver uma chave JSON rotulada como "writerIdentity", conceda à conta de serviço do coletor a permissão para gravar no destino do coletor. Para mais informações, consulte Definir permissões de destino.

    Não é necessário definir permissões de destino quando a resposta da API não contém uma chave JSON rotulada como "writerIdentity".

Para mais informações sobre como criar coletores usando a API Logging, consulte a referência LogSink.

gcloud

Para criar um coletor, execute o seguinte comando gcloud logging sinks create:

Forneça os valores apropriados às variáveis no comando da seguinte maneira:

  • SINK_NAME: um identificador do coletor. Depois de criar o coletor, não será possível renomeá-lo, mas será possível excluí-lo e criar um novo coletor.
  • SINK_DESTINATION: o serviço e o destino para onde você quer que os registros sejam roteados. Para rotear os registros para um projeto diferente ou para um destino que esteja em outro projeto, defina SINK_DESTINATION com o caminho apropriado, conforme descrito em Formatos do caminho de destino.

    Por exemplo, se o destino do coletor for um conjunto de dados do BigQuery, SINK_DESTINATION será semelhante a este:

    bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID
    
  • OPTIONAL_FLAGS inclui as seguintes sinalizações:

    • --log-filter: use essa sinalização para definir um filtro que corresponda às entradas de registro que você quer incluir no coletor. Se você não definir um filtro, todos os registros do projeto do Google Cloud serão roteados para o destino.
    • --exclusion: use essa sinalização para definir um filtro de exclusão para entradas de registro que você quer excluir do coletor. Também é possível usar a função sample para selecionar uma parte das entradas de registro a serem excluídas. Essa sinalização pode ser repetida. É possível criar até 50 filtros de exclusão por coletor.
    • --description: use esta sinalização para descrever a finalidade ou o caso de uso do coletor.
gcloud logging sinks create SINK_NAME SINK_DESTINATION OPTIONAL_FLAGS

Por exemplo, para criar um coletor para um bucket do Logging, seu comando pode ter esta aparência:

gcloud logging sinks create my-sink logging.googleapis.com/projects/myproject123/locations/global/buckets/my-bucket \
  --log-filter='logName="projects/myproject123/logs/matched"' --description="My first sink"

Para mais informações sobre como criar coletores usando a Google Cloud CLI, incluindo mais sinalizações e exemplos, consulte a referência gcloud logging sinks.

Novos coletores de registros para buckets do Cloud Storage podem levar várias horas para iniciar o roteamento de registros. Os coletores para o Cloud Storage são processados a cada hora, enquanto outros tipos de destino são processados em tempo real.

Os coletores não definem o esquema para conjuntos de dados do BigQuery. Em vez disso, a primeira entrada de registro recebida pelo BigQuery determina o esquema da tabela de destino. Saiba mais em Esquema do BigQuery para registros roteados.

Para informações sobre como visualizar registros nos destinos do coletor, consulte Visualizar registros roteados para buckets do Cloud Logging.

Depois de criar o coletor, é possível visualizar o número e o volume de entradas de registro recebidas usando as métricas logging.googleapis.com/exports/.

Se você receber notificações de erro, consulte Resolver problemas de roteamento e coletores.

Não coloque informações confidenciais em filtros do coletor. Os filtros do coletor são tratados como dados de serviço.

Formatos do caminho de destino

Se você estiver roteando para um destino que está em outro projeto, forneça as informações de destino e o serviço Logging, BigQuery, Cloud Storage ou Pub/Sub:

  • Para rotear entradas de registro para um bucket de registros do Cloud Logging que está em um projeto diferente do Google Cloud, o destino do coletor é este:

    logging.googleapis.com/projects/DESTINATION_PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME
    
  • Para rotear entradas de registro para outro projeto do Google Cloud, o caminho de destino do coletor é o seguinte:

    logging.googleapis.com/projects/DESTINATION_PROJECT_ID
    
  • Para rotear entradas de registro para um conjunto de dados do BigQuery, o destino do coletor é o seguinte:

    bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID
    
  • Para rotear entradas de registro para um bucket do Cloud Storage, o destino do coletor é o seguinte:

    storage.googleapis.com/BUCKET_NAME
    
  • Para rotear entradas de registro para um tópico do Pub/Sub, o destino do coletor é o seguinte:

    pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
    

Gerenciar coletores

Depois que os coletores forem criados, será possível realizar estas ações neles:

  • Mais detalhes do coletor
  • Atualizar coletor
  • Desativar coletor
  • Excluir coletor
  • Resolver problemas de coletor
  • Ver as taxas de erro e volume de registro do coletor

Antes de excluir um coletor, considere o seguinte:

  • Não é possível excluir os coletores _Default e _Required, mas é possível desativar os coletores _Default para interromper o roteamento de registros para buckets _Default do Logging.
  • Depois que um coletor é excluído, ele para de rotear entradas de registro.
  • Se o coletor tiver uma conta de serviço dedicada, excluir esse coletor também excluirá a conta de serviço. Os coletores criados antes de 22 de maio de 2023 têm contas de serviço dedicadas. Os coletores criados a partir de 22 de maio de 2023 têm uma conta de serviço compartilhada. A exclusão do coletor não exclui a conta de serviço compartilhada.

As alterações feitas em um coletor podem levar alguns minutos para serem aplicadas.

Veja a seguir as instruções para gerenciar um coletor em um projeto do Google Cloud. Em vez de um projeto do Google Cloud, é possível especificar uma conta, pasta ou organização de faturamento:

Console

  1. No painel de navegação do console do Google Cloud, selecione Logging e clique em Roteador de registros:

    Acessar o roteador de registros

  2. Selecione o projeto do Google Cloud que contém o coletor usando o seletor de recursos em qualquer lugar no console do Google Cloud:

    Um projeto é selecionado no menu suspenso.

  3. Para visualizar os coletores agregados, selecione a organização, a pasta ou a conta de faturamento que contém o coletor.

A interface Roteador de registros contém um resumo da tabela de coletores. Cada linha da tabela contém informações sobre as propriedades de um coletor:

  • Ativado: indica se o estado do coletor está ativado ou desativado.
  • Tipo: o serviço de destino do coletor. por exemplo, Cloud Logging bucket.
  • Nome: o identificador do coletor, conforme fornecido quando o coletor foi criado. Por exemplo, _Default.
  • Descrição: a descrição do coletor, conforme fornecido quando o coletor foi criado.
  • Destino: o nome completo do destino para onde as entradas de registro roteadas serão enviadas.
  • Criado: a data e hora em que o coletor foi criado.
  • Última atualização: a data e a hora em que o coletor foi editado pela última vez.

Para cada linha da tabela, o menu Mais ações oferece as seguintes opções:

  • Visualizar detalhes do coletor: exibe o nome, a descrição, o serviço de destino, o destino e os filtros de inclusão e exclusão do coletor. Selecione Editar para abrir o painel Editar coletor.
  • Editar coletor: abre o painel Editar coletor em que é possível atualizar os parâmetros do coletor.
  • Desativar coletor: permite desativar o coletor e parar de rotear os registros para o destino do coletor. Para mais informações sobre como desativar coletores, consulte Parar de armazenar registros em buckets de registros.
  • Ativar coletor: permite que você ative um coletor desativado e reinicie os registros de roteamento para o destino do coletor.
  • Excluir coletor: permite excluir o coletor e parar de rotear os registros para o destino do coletor.
  • Resolver problemas do coletor: abre a Análise de registros, onde é possível solucionar erros com o coletor.
  • Visualizar as taxas de erro e volume de registros do coletor: abre o Metrics Explorer em que é possível visualizar e analisar dados do coletor.

Ao clicar em qualquer um dos nomes de coluna, você organiza os dados em ordem crescente ou decrescente.

API

  • Para visualizar os coletores do projeto do Google Cloud, chame projects.sinks.list.

  • Para visualizar os detalhes de um coletor, chame projects.sinks.get.

  • Para atualizar um coletor, chame projects.sink.update.

    É possível atualizar o destino, os filtros e a descrição de um coletor. Também é possível desativar ou reativar o coletor.

  • Para desativar um coletor, chame projects.sink.update e defina a propriedade disabled como true.

    Para reativar o coletor, chame projects.sink.update e defina a propriedade disabled como false.

  • Para excluir um coletor, chame projects.sinks.delete.

    Para mais informações sobre qualquer um desses métodos para gerenciar coletores usando a API Logging, consulte a referência LogSink.

gcloud

  • Para visualizar a lista de coletores do projeto do Google Cloud, use o comando gcloud logging sinks list, que corresponde ao método projects.sinks.list da API Logging:

    gcloud logging sinks list
    

    Para visualizar a lista de coletores agregados, use a sinalização apropriada para especificar o recurso que contém o coletor. Por exemplo, se você criou o coletor no nível da organização, use a sinalização --organization=ORGANIZATION_ID para listar os coletores da organização.

  • Para descrever um coletor, use o comando gcloud logging sinks describe, que corresponde ao método da API Logging projects.sinks.get:

    gcloud logging sinks describe SINK_NAME
    
  • Para atualizar um coletor, use o comando gcloud logging sinks update, que corresponde ao método de API projects.sink.update.

    Atualize um coletor para alterar o destino, os filtros e a descrição, ou para desativar ou reativar o coletor:

    gcloud logging sinks update SINK_NAME NEW_DESTINATION --log-filter=NEW_FILTER

    Omita NEW_DESTINATION ou --log-filter se essas partes não mudarem.

    Por exemplo, para atualizar o destino do coletor denominado my-project-sink para um novo destino de bucket do Cloud Storage chamado my-second-gcs-bucket, o comando é semelhante a este:

    gcloud logging sinks update  my-project-sink  storage.googleapis.com/my-second-gcs-bucket
    
  • Para desativar um coletor, use o comando gcloud logging sinks update, que corresponde ao método de API projects.sink.update, e inclua a sinalização --disabled:

    gcloud logging sinks update _Default  --disabled
    

    Para reativar o coletor, use o comando gcloud logging sinks update, remova a sinalização --disabled e inclua a sinalização --no-disabled:

    gcloud logging sinks update _Default  --no-disabled
    
  • Para excluir um coletor, use o comando gcloud logging sinks delete, que corresponde ao método de API projects.sinks.delete:

    gcloud logging sinks delete SINK_NAME
    

    Para mais informações sobre como gerenciar coletores usando a Google Cloud CLI, consulte a referência gcloud logging sinks.

Parar de armazenar registros em buckets

Para cada projeto do Google Cloud, o Logging cria automaticamente dois buckets de registros: _Required e _Default. A geração de registros cria automaticamente dois coletores de registro, _Required e _Default, que roteiam os registros para os buckets correspondentes.

Não é possível desativar o coletor _Required. É possível desativar o coletor _Default para impedir que os registros sejam armazenados no bucket _Default. Também é possível desativar qualquer coletor definido pelo usuário.

Quando você desativa todos os coletores no projeto do Google Cloud que enviam registros para o bucket _Default, nenhum registro novo é armazenado nesse bucket de registros. O bucket _Default estará vazio quando todos os registros armazenados anteriormente no bucket _Default tiverem cumprido o período de armazenamento do bucket.

Para desativar os coletores de projetos do Google Cloud que encaminham registros para o bucket _Default, siga as etapas a seguir:

Console

  1. No painel de navegação do console do Google Cloud, selecione Logging e clique em Roteador de registros:

    Acessar o roteador de registros

  2. Para encontrar todos os coletores que direcionam registros para o bucket _Default, filtre os coletores por destino e insira _Default.

    Encontrar todos os coletores que encaminham registros para o bucket padrão.

  3. Para cada coletor, selecione Menu e Desativar coletor.

Agora, os coletores estão desativados e os coletores de projeto do Google Cloud não encaminham mais registros para o bucket _Default.

Para reativar um coletor desativado e reiniciar os registros de roteamento, siga estas etapas:

  1. No painel de navegação do console do Google Cloud, selecione Logging e clique em Roteador de registros:

    Acessar o roteador de registros

  2. Para encontrar todos os coletores desativados configurados anteriormente para rotear registros para o bucket _Default, filtre os coletores por destino e digite _Default.

  3. Para cada coletor, selecione Menu e, em seguida, Ativar coletor.

API

  1. Para visualizar os coletores do projeto do Google Cloud, chame o método da API Logging projects.sinks.list.

    Identifique os coletores que estão roteando para o bucket _Default.

  2. Por exemplo, para desativar o coletor _Default, chame projects.sink.update e defina a propriedade disabled como true.

O coletor _Default agora está desativado. Ele não encaminha mais registros para o bucket _Default.

Para desativar os outros coletores no projeto do Google Cloud que estão roteando para o bucket _Default, repita as etapas acima.

Para reativar um coletor, chame projects.sink.update e defina a propriedade disabled como false.

gcloud

  1. Para visualizar a lista de coletores do projeto do Google Cloud, use o comando gcloud logging sinks list, que corresponde ao método projects.sinks.list da API Logging:

    gcloud logging sinks list
    
  2. Identifique os coletores que estão roteando para o bucket _Default. Para descrever um coletor, incluindo a visualização do nome do destino, use o comando gcloud logging sinks describe, que corresponde ao método da API Logging projects.sinks.get:

    gcloud logging sinks describe SINK_NAME
    
  3. Por exemplo, para desativar o coletor _Default, use o comando gcloud logging sinks update e inclua a sinalização --disabled:

    gcloud logging sinks update _Default  --disabled
    

O coletor _Default agora está desativado. Ele não encaminha mais registros para o bucket _Default.

Para desativar os outros coletores no projeto do Google Cloud que estão roteando para o bucket _Default, repita as etapas acima.

Para reativar um coletor, use o comando gcloud logging sinks update, remova a sinalização --disabled e inclua a sinalização --no-disabled:

gcloud logging sinks update _Default  --no-disabled

Definir permissões de destino

Nesta seção, descrevemos como conceder permissões de gerenciamento de identidade e acesso ao Logging para gravar registros no destino do coletor. Para a lista de papéis e permissões do Logging, consulte Controle de acesso.

O Cloud Logging cria uma conta de serviço compartilhada para um recurso quando um coletor de registros é criado, a menos que a conta de serviço necessária já exista. A conta de serviço pode existir porque a mesma conta de serviço é usada para todos os coletores no recurso subjacente. Os recursos podem ser um projeto do Google Cloud, uma organização, uma pasta ou uma conta de faturamento.

A identidade do gravador de um coletor é o identificador da conta de serviço associada a ele. Todos os coletores têm uma identidade de gravador, exceto os coletores que gravam em um bucket de registros no projeto atual do Google Cloud. Quando o destino de um coletor é um bucket de registros no projeto atual do Google Cloud, o coletor não requer outras permissões de destino. Portanto, o valor do campo identidade do gravador é listado como None no console e não é informado pela API e pelos comandos da Google Cloud CLI.

Veja a seguir as instruções para definir permissões no nível do projeto do Google Cloud a fim de que seu coletor seja roteado para o destino. Em vez de um projeto do Google Cloud, é possível especificar uma conta, pasta ou organização de faturamento:

Console

  1. Para conseguir a identidade do gravador do coletor (um endereço de e-mail) do novo coletor, faça o seguinte:

    1. No painel de navegação do console do Google Cloud, selecione Logging e clique em Roteador de registros:

      Acessar o roteador de registros

    2. Selecione Menu e, em seguida, Visualizar detalhes do coletor. A identidade do gravador aparece no painel Detalhes do coletor.

  2. Se o valor do campo writerIdentity contiver um endereço de e-mail, vá para a próxima etapa. Quando o valor for None, não será necessário configurar permissões de destino para o coletor.

  3. Para copiar a identidade do gravador do coletor para a área de transferência, clique em Copiar.

  4. Caso você tenha acesso de Proprietário ao destino, adicione a conta de serviço como um principal do IAM no projeto de destino:

    • Para destinos do Cloud Storage, adicione a identidade do gravador do coletor como principal usando o IAM e, em seguida, conceda o papel Criador de objetos do Storage (roles/storage.objectCreator).
    • Para destinos do BigQuery, adicione a identidade do gravador do coletor como principal usando o IAM e, em seguida, conceda o papel Editor de dados do BigQuery (roles/bigquery.dataEditor).
    • Para destinos do Pub/Sub, incluindo Splunk, adicione a identidade do gravador do coletor como principal usando o IAM e conceda o papel de Editor do Pub/Sub (roles/pubsub.publisher).
    • Para destinos de bucket do Logging em diferentes projetos do Google Cloud, adicione a identidade do gravador do coletor como principal usando o IAM e conceda o papel Gravador de bucket de registros (roles/logging.bucketWriter).
    • Para destinos de projetos do Google Cloud, adicione a identidade de gravador do coletor como principal usando o IAM e conceda a ele o papel de gravador de registros (roles/logging.logWriter). Especificamente, um principal precisa da permissão logging.logEntries.route.
    Se você não tiver acesso de Proprietário ao destino do coletor, peça para um proprietário do projeto adicionar a identidade de gravador como principal.

API

  1. Chame o método de API projects.sinks.list para listar os coletores no seu projeto do Google Cloud.

  2. Localize o coletor com as permissões que você quer modificar e, se os detalhes dele contiverem uma chave JSON rotulada como "writerIdentity", prossiga para a próxima etapa. Quando os detalhes não incluem um campo "writerIdentity", não é necessário configurar permissões de destino para o coletor.

  3. Se você tiver acesso de proprietário do IAM ao destino, adicione a conta de serviço ao destino fazendo o seguinte:

    • Para destinos do Cloud Storage, adicione a identidade do gravador do coletor como principal usando o IAM e, em seguida, conceda o papel Criador de objetos do Storage (roles/storage.objectCreator).
    • Para destinos do BigQuery, adicione a identidade do gravador do coletor como principal usando o IAM e, em seguida, conceda o papel Editor de dados do BigQuery (roles/bigquery.dataEditor).
    • Para destinos do Pub/Sub, incluindo Splunk, adicione a identidade do gravador do coletor como principal usando o IAM e conceda o papel de Editor do Pub/Sub (roles/pubsub.publisher).
    • Para destinos de bucket do Logging em diferentes projetos do Google Cloud, adicione a identidade do gravador do coletor como principal usando o IAM e conceda o papel Gravador de bucket de registros (roles/logging.bucketWriter).
    • Para destinos de projetos do Google Cloud, adicione a identidade de gravador do coletor como principal usando o IAM e conceda a ele o papel de gravador de registros (roles/logging.logWriter). Especificamente, um principal precisa da permissão logging.logEntries.route.
    Se você não tiver acesso de Proprietário ao destino do coletor, peça para um proprietário do projeto adicionar a identidade de gravador como principal.

gcloud

  1. Consiga a conta de serviço do campo writerIdentity no seu coletor:

    gcloud logging sinks describe SINK_NAME
    
  2. Localize o coletor com as permissões que você quer modificar e, se os detalhes do coletor contiverem uma linha com writerIdentity, prossiga para a próxima etapa. Quando os detalhes não incluem um campo writerIdentity, não é necessário configurar permissões de destino para o coletor.

    O valor do campo SERVICE_ACCT_NAME nas etapas a seguir é a identidade do gravador, que é semelhante a esta:

    serviceAccount:service-123456789012@gcp-sa-logging.iam.gserviceaccount.com
    
  3. Se você tiver acesso de proprietário do IAM ao destino, adicione a conta de serviço ao destino fazendo o seguinte:

    • Para destinos do Cloud Storage, adicione a identidade do gravador do coletor como principal usando o IAM e, em seguida, conceda o papel Criador de objetos do Storage (roles/storage.objectCreator).
    • Para destinos do BigQuery, adicione a identidade do gravador do coletor como principal usando o IAM e, em seguida, conceda o papel Editor de dados do BigQuery (roles/bigquery.dataEditor).
    • Para destinos do Pub/Sub, incluindo Splunk, adicione a identidade do gravador do coletor como principal usando o IAM e conceda o papel de Editor do Pub/Sub (roles/pubsub.publisher).
    • Para destinos de bucket do Logging em diferentes projetos do Google Cloud, adicione a identidade do gravador do coletor como principal usando o IAM e conceda o papel Gravador de bucket de registros (roles/logging.bucketWriter).
    • Para destinos de projetos do Google Cloud, adicione a identidade de gravador do coletor como principal usando o IAM e conceda a ele o papel de gravador de registros (roles/logging.logWriter). Especificamente, um principal precisa da permissão logging.logEntries.route.
    Se você não tiver acesso de Proprietário ao destino do coletor, peça para um proprietário do projeto adicionar a identidade de gravador como principal.

    Por exemplo, para conceder o papel de Gravador de registros (roles/logging.logWriter) à conta de serviço service-123456789012@gcp-sa-logging.iam.gserviceaccount.com no projeto my-test-project, execute o seguinte comando:

    gcloud projects add-iam-policy-binding my-test-project --member='serviceAccount:service-123456789012@gcp-sa-logging.iam.gserviceaccount.com' --role='roles/logging.logWriter'
    

Limitações de destino

Dependendo do destino para onde você encaminha os registros, pode haver algumas limitações.

Rotear para buckets de registros em diferentes projetos do Google Cloud

As limitações a seguir se aplicam quando você encaminha os registros para buckets em diferentes projetos do Google Cloud:

  • O Error Reporting é desativado em registros armazenados em buckets de registros que usam chaves de criptografia gerenciadas pelo cliente.

Rotear para diferentes projetos do Google Cloud

As seguintes limitações se aplicam quando você encaminha seus registros para diferentes projetos do Google Cloud:

  • Há um limite de um salto. Por exemplo, se você rotear as entradas de registro do projeto A para o B, não vai conseguir encaminhar as entradas de registro do projeto B para outro projeto.

  • Os registros de auditoria não são roteados para o bucket _Required no projeto de destino. É preciso criar outro coletor ou bucket para armazená-los.

  • Se a organização ou a pasta que contém o projeto do Google Cloud para o qual você está roteando tiver coletores agregados atuais, os registros não serão roteados por esses coletores agregados.

Amostras de código

Para usar o código da biblioteca de cliente para configurar coletores nos idiomas escolhidos, consulte Bibliotecas de cliente do Logging: coletores de registros.

Exemplos de filtros

Veja a seguir alguns exemplos de filtro que são particularmente úteis ao criar coletores.

Para outros exemplos que podem ser úteis ao criar seus filtros de inclusão e de exclusão, consulte Amostra de consultas.

Restaurar o filtro do coletor _Default

Se você editou o filtro para o coletor _Default, talvez queira restaurar o filtro padrão. Para fazer isso, insira o seguinte filtro de inclusão:

  NOT log_id("cloudaudit.googleapis.com/activity") AND NOT \
  log_id("externalaudit.googleapis.com/activity") AND NOT \
  log_id("cloudaudit.googleapis.com/system_event") AND NOT \
  log_id("externalaudit.googleapis.com/system_event") AND NOT \
  log_id("cloudaudit.googleapis.com/access_transparency") AND NOT \
  log_id("externalaudit.googleapis.com/access_transparency")

Excluir registros de contêiner e de pod do Google Kubernetes Engine

Para excluir registros de contêiner e pod do Google Kubernetes Engine para o sistema namespaces do GKE, use o seguinte filtro:

resource.type = ("k8s_container" OR "k8s_pod")
resource.labels.namespace_name = (
"cnrm-system" OR
"config-management-system" OR
"gatekeeper-system" OR
"gke-connect" OR
"gke-system" OR
"istio-system" OR
"knative-serving" OR
"monitoring-system" OR
"kube-system")

Para excluir os registros de nó do Google Kubernetes Engine do sistema GKE logNames, use o filtro a seguir:

resource.type = "k8s_node"
logName:( "logs/container-runtime" OR
"logs/docker" OR
"logs/kube-container-runtime-monitor" OR
"logs/kube-logrotate" OR
"logs/kube-node-configuration" OR
"logs/kube-node-installation" OR
"logs/kubelet" OR
"logs/kubelet-monitor" OR
"logs/node-journal" OR
"logs/node-problem-detector")

Para conferir o volume de registros de , pod e contêiner do Google Kubernetes Engine armazenados em buckets de registros, use o Metrics Explorer no Cloud Monitoring.

Exclua registros de Dataflow que não são necessários para compatibilidade

Para excluir os registros do Dataflow que não são necessários para suporte, use o seguinte filtro:

resource.type="dataflow_step"
labels."dataflow.googleapis.com/log_type"!="system" AND labels."dataflow.googleapis.com/log_type"!="supportability"

Para ver o volume de registros do Dataflow armazenados em buckets de registros, use o Metrics Explorer no Cloud Monitoring.

Compatibilidade

O Cloud Logging oferece a capacidade de excluir registros do armazenamento em um bucket de registros, mas é recomendável manter registros que ajudem com a compatibilidade. O uso desses registros pode ajudar você a solucionar problemas rapidamente e identificar problemas nos seus aplicativos.

Por exemplo, os registros do sistema do GKE são úteis para solucionar problemas de aplicativos e clusters do GKE porque são gerados para eventos que acontecem no cluster. Esses registros podem ajudar você a determinar se o código do aplicativo ou o cluster subjacente do GKE está causando o erro do aplicativo. Os registros do sistema do GKE também incluem o Kubernetes Audit Logging gerado pelo componente servidor da API Kubernetes, que inclui alterações feitas usando o comando kubectl e os eventos do Kubernetes.

Para o Dataflow, recomendamos que você, pelo menos, grave os registros do sistema (labels."dataflow.googleapis.com/log_type"="system") e de suporte (labels."dataflow.googleapis.com/log_type"="supportability") em buckets de registros. Esses registros são essenciais para que os desenvolvedores observem e resolvam problemas de pipelines do Dataflow, e talvez os usuários não consigam usar a página Detalhes do job do Dataflow para visualizar registros do job.

A seguir