Confira os registros roteados para o Pub/Sub

Neste documento, explicamos como encontrar entradas de registro roteadas do Cloud Logging para tópicos do Pub/Sub, o que ocorre quase em tempo real. Recomendamos o uso do Pub/Sub para integrar os registros do Cloud Logging com softwares de terceiros.

Quando você encaminha entradas de registro para um tópico do Pub/Sub, o Logging publica cada entrada de registro como uma mensagem do Pub/Sub assim que a recebe. As entradas de registro roteadas geralmente ficam disponíveis segundos após a chegada ao Logging, com 99% das entradas de registro disponíveis em menos de 60 segundos.

Antes de começar

Para uma discussão conceitual sobre coletores, consulte Visão geral dos modelos de roteamento e armazenamento: coletores.

Para instruções sobre como rotear suas entradas de registro, consulte Rotear registros para destinos compatíveis.

ver registros

Para visualizar os registros conforme eles são transmitidos por meio do Pub/Sub, faça o seguinte:

  1. No console do Google Cloud, acesse a página Topics:

    Acesse Temas

    Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Pub/Sub.

  2. Encontre ou crie uma assinatura no tópico usado no coletor de registros e extraia uma entrada delas. Talvez seja necessário aguardar a publicação de uma nova entrada de registro.

Organização de registros

O campo data de cada mensagem é um objeto LogEntry codificado em base64. Por exemplo, um assinante do Pub/Sub pode receber o seguinte objeto de um tópico que está recebendo entradas de registro. O objeto mostrado contém uma lista com uma única mensagem, embora o Pub/Sub possa retornar várias mensagens se várias entradas de registro estiverem disponíveis. Os valores data (cerca de 600 caracteres) e ackId (cerca de 200 caracteres) foram encurtados para facilitar a leitura do exemplo:

{
 "receivedMessages": [
  {
   "ackId": "dR1JHlAbEGEIBERNK0EPKVgUWQYyODM...QlVWBwY9HFELH3cOAjYYFlcGICIjIg",
   "message": {
    "data": "eyJtZXRhZGF0YSI6eyJzZXZ0eSI6Il...Dk0OTU2G9nIjoiaGVsbG93b3JsZC5sb2cifQ==",
    "attributes": {
     "compute.googleapis.com/resource_type": "instance",
     "compute.googleapis.com/resource_id": "123456"
    },
    "messageId": "43913662360"
   }
  }
 ]
}

Ao decodificar o campo data e formatá-lo, você recebe o seguinte objeto LogEntry:

{
  "log": "helloworld.log",
  "insertId": "2015-04-15|11:41:00.577447-07|10.52.166.198|-1694494956",
  "textPayload": "Wed Apr 15 20:40:51 CEST 2015 Hello, world!",
  "timestamp": "2015-04-15T18:40:56Z",
  "labels": {
    "compute.googleapis.com\/resource_type": "instance",
    "compute.googleapis.com\/resource_id": "123456"
  },
  "severity": "WARNING"
  }
}

Integração de terceiros ao Pub/Sub

Você encaminha as entradas de registro para um tópico do Pub/Sub. O terceiro recebe suas entradas de registro ao se inscrever no mesmo tópico. O Logging oferece suporte à integração da geração de registros com terceiros, como Splunk ou Datadog. Para ver uma lista atual de integrações, consulte Parceiros para integrações do Google Cloud Observability.

Para realizar a integração, faça o seguinte:

  1. No projeto de origem das suas entradas de registro, crie o tópico do Pub/Sub com uma assinatura padrão:

    1. Ative a API Pub/Sub.

      Ative a API

    2. No console do Google Cloud, acesse a página Topics:

      Acesse Temas

      Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Pub/Sub.

    3. Selecione Criar tópico.

    4. No campo Código do tópico, insira um código para o tópico. Por exemplo, projects/my-project-id/topics/my-pubsub-topic.

      Cada mensagem enviada para o tópico inclui o carimbo de data/hora da entrada de registro encaminhada nos attributes da mensagem do Pub/Sub. Por exemplo:

      "attributes": {
        "logging.googleapis.com/timestamp": "2024-07-01T00:00:00Z"
      }
      
    5. Mantenha a opção Adicionar uma assinatura padrão. Não selecione nenhuma outra opção.

    6. Selecione Criar tópico.

  2. No projeto de origem das suas entradas de registro, configure o Logging para roteá-las ao tópico:

    1. No console do Google Cloud, acesse a página Roteador de registros:

      Acessar o roteador de registros

      Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.

    2. Clique em Criar coletor, insira um nome e uma descrição para o coletor e clique em Próximo.
    3. No menu Serviço de coletor, selecione Tópico do Cloud Pub/Sub, escolha o tópico do Pub/Sub e clique em Próximo.
    4. Selecione as entradas de registro a serem incluídas no coletor e clique em Próximo.
    5. Opcional: selecione as entradas de registro que serão excluídas.
    6. Clique em Criar coletor.

      Uma caixa de diálogo com a mensagem Sink created será exibida. Essa mensagem indica que seu coletor foi criado com sucesso com permissões para rotear entradas de registro correspondentes futuras para o destino selecionado.

    7. Conceda o papel de Publicador do Pub/Sub (roles/pubsub.publisher) à identidade de gravador do coletor. Para mais informações sobre como conseguir a identidade de gravador e conceder um papel, consulte Definir permissões de destino.

    O Cloud Logging agora está enviando entradas de registro para seu tópico do Pub/Sub.

  3. Crie a assinatura.

    Por exemplo, se você usa o Dataflow para extrair os dados do tópico do Pub/Sub e enviá-los ao Datadog, será necessário executar duas etapas:

    1. Crie ou receba uma conta de serviço e conceda a ela os papéis do IAM necessários para assinar o tópico. No mínimo, a conta de serviço requer os seguintes papéis:

      Para mais informações, consulte estes documentos:

    2. Criar um job com base em um modelo e executá-lo. Para este exemplo, você usaria o modelo do Pub/Sub para Datadog.

O terceiro começa a receber as entradas de registro de imediato.

Para uma análise detalhada de cenários comuns de roteamento de registros usando o Pub/Sub, consulte Cenários para exportar dados do Cloud Logging: Splunk.

Solução de problemas

Se as entradas de registro estiverem ausentes no destino do coletor ou se você suspeitar que o coletor não está roteando corretamente as entradas de registro, consulte Resolver problemas de registros de roteamento.

Preços

O Cloud Logging não cobra para rotear registros para um destino compatível. No entanto, o destino pode aplicar cobranças. Com exceção do bucket de registros _Required, o Cloud Logging cobra pelo streaming de registros para buckets de registros e por um armazenamento maior que o período de armazenamento padrão do bucket de registros.

O Cloud Logging não cobra pela cópia de registros ou por consultas emitidas pela página Análise de registros ou pela página Análise de registros.

Para mais informações, consulte estes documentos: