Ver 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 acontece quase em tempo real. Recomendamos o uso do Pub/Sub para integrar registros do Cloud Logging com software de terceiros.

Ao encaminhar 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 encaminhadas geralmente ficam disponíveis em segundos após a chegada ao Logging, com 99% das entradas 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 entradas de registro, consulte Rotear registros para destinos compatíveis.

Como visualizar registros

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

  1. No console Google Cloud , acesse a página Tópicos:

    Acesse Tópicos

    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. O valor data (cerca de 600 caracteres) e o valor ackId (cerca de 200 caracteres) foram reduzidos 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 as entradas de registro ao assinar o mesmo tópico. O Logging é compatível com a integração de registros com terceiros, como o Splunk ou o Datadog. Para uma lista atual de integrações, consulte Parceiros de integrações da observabilidade do Google Cloud.

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

  1. No projeto em que as entradas de registro se originam, crie um tópico do Pub/Sub com uma assinatura padrão:

    1. Ative a API Pub/Sub.

      Roles required to enable APIs

      To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

      Enable the API

    2. No console Google Cloud , acesse a página Tópicos:

      Acesse Tópicos

      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 ID do tópico, insira um ID 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 em que as entradas de registro são criadas, configure o Logging para encaminhar as entradas de registro ao seu 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óxima.
    3. No menu Serviço do coletor, selecione Tópico do Cloud Pub/Sub, selecione o tópico do Pub/Sub e clique em Próxima.
    4. Selecione as entradas de registro a serem incluídas no coletor e clique em Próxima.
    5. Opcional: selecione as entradas de registro a serem excluídas.
    6. Clique em Criar coletor.

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

    7. Conceda o papel de Editor do Pub/Sub (roles/pubsub.publisher) à identidade do gravador do coletor. Para mais informações sobre como obter a identidade do 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ê usar o Dataflow para extrair os dados do tópico do Pub/Sub e enviá-los para o Datadog, será necessário realizar duas etapas:

    1. Crie ou obtenha uma conta de serviço e conceda a ela os papéis do IAM necessários para se inscrever no seu tópico. No mínimo, a conta de serviço precisa dos seguintes papéis:

      Para mais informações, consulte estes documentos:

    2. Crie um job com base em um modelo e execute-o. Neste exemplo, use o modelo do Pub/Sub para o Datadog.

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

Para uma exploração 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 parecerem estar ausentes no destino do coletor ou se você suspeitar que o coletor não está roteando as entradas de registro corretamente, consulte Resolver problemas de roteamento de registros.

Preços

Para informações sobre preços, consulte a página Preços do Google Cloud Observability. Se você rotear dados de registro para outros serviços do Google Cloud , consulte os seguintes documentos: