Veja registos encaminhados para o Pub/Sub

Este documento explica como pode encontrar entradas de registo que encaminhou do Cloud Logging para tópicos do Pub/Sub, o que ocorre praticamente em tempo real. Recomendamos que use o Pub/Sub para integrar registos do Cloud Logging com software de terceiros.

Quando encaminha entradas de registo para um tópico Pub/Sub, o Logging publica cada entrada de registo como uma mensagem Pub/Sub assim que o Logging recebe essa entrada de registo. As entradas de registo encaminhadas estão geralmente disponíveis em segundos após a respetiva chegada ao Logging, com 99% das entradas de registo disponíveis em menos de 60 segundos.

Antes de começar

Para uma discussão conceptual sobre os destinos, consulte o artigo Vista geral dos modelos de encaminhamento e armazenamento: destinos.

Para ver instruções sobre como encaminhar as entradas de registo, consulte o artigo Encaminhe registos para destinos suportados.

Ver registos

Para ver os registos à medida que são transmitidos através do Pub/Sub, faça o seguinte:

  1. Na Google Cloud consola, aceda à página Tópicos:

    Aceda a Tópicos

    Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cujo subtítulo é Pub/Sub.

  2. Encontre ou crie uma subscrição para o tópico usado no destino do registo e extraia uma entrada de registo do mesmo. Pode ter de aguardar a publicação de uma nova entrada de registo.

Organização dos registos

O campo data de cada mensagem é um objeto LogEntry codificado em Base64. Por exemplo, um subscritor do Pub/Sub pode extrair o seguinte objeto de um tópico que está a receber entradas de registo. O objeto apresentado contém uma lista com uma única mensagem, embora o Pub/Sub possa devolver várias mensagens se estiverem disponíveis várias entradas de registo. O valor data (cerca de 600 carateres) e o valor ackId (cerca de 200 carateres) 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"
   }
  }
 ]
}

Se descodificar o campo data e o formatar, 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 com o Pub/Sub

Encaminha as suas entradas de registo para um tópico Pub/Sub. O terceiro recebe as suas entradas de registo subscrevendo o mesmo tópico. O registo suporta a integração de registos com terceiros, como o Splunk ou o Datadog. Para uma lista atual de integrações, consulte Parceiros para integrações do Google Cloud Observability.

Para realizar a integração, espere fazer algo como o seguinte:

  1. No projeto onde as entradas de registo têm origem, crie o tópico Pub/Sub com uma subscrição predefinida:

    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. Na Google Cloud consola, aceda à página Tópicos:

      Aceda a Tópicos

      Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cujo subtítulo é Pub/Sub.

    3. Clique em Criar tópico.

    4. No campo ID do tópico, introduza um ID para o tópico. Por exemplo, projects/my-project-id/topics/my-pubsub-topic.

      Cada mensagem enviada para o tópico inclui a data/hora da entrada de registo encaminhada na mensagem do Pub/Sub attributes; por exemplo:

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

    6. Clique em Criar tópico.

  2. No projeto onde as entradas de registo têm origem, configure o Logging para encaminhar as entradas de registo para o seu tópico:

    1. Na Google Cloud consola, aceda à página Log Router:

      Aceda a Registar router

      Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cuja legenda é Registo.

    2. Clique em Criar destino, introduza um nome e uma descrição para o destino e, de seguida, clique em Seguinte.
    3. No menu Serviço de destino, selecione Tópico do Cloud Pub/Sub, selecione o tópico do Pub/Sub e, de seguida, clique em Seguinte.
    4. Selecione as entradas do registo a incluir no destino e, de seguida, clique em Seguinte.
    5. Opcional: selecione as entradas de registo a excluir.
    6. Clique em Criar destino.

      É apresentada uma caixa de diálogo com a mensagem Sink criado. Esta mensagem indica que o seu destino foi criado com êxito com autorizações para encaminhar entradas de registo de correspondência futuras para o destino que selecionou.

    7. Conceda a função de Publicador do Pub/Sub (roles/pubsub.publisher) à identidade de gravação do destino. Para mais informações sobre como obter a identidade do escritor e conceder uma função, consulte Defina autorizações de destino.

    O Cloud Logging está agora a enviar entradas de registo para o seu tópico do Pub/Sub.

  3. Crie a subscrição.

    Por exemplo, se usar o Dataflow para extrair os dados do seu tópico do Pub/Sub e enviá-los para o Datadog, tem de realizar dois passos:

    1. Crie ou obtenha uma conta de serviço e, em seguida, conceda-lhe as funções do IAM necessárias para subscrever o seu tópico. No mínimo, a conta de serviço requer as seguintes funções:

      Para mais informações, consulte os seguintes documentos:

    2. Crie uma tarefa a partir de um modelo e, em seguida, execute essa tarefa. Para este exemplo, usaria o modelo Pub/Sub para Datadog.

O terceiro deve começar a receber as entradas do registo imediatamente.

Para uma exploração de cenários de encaminhamento de registos comuns com o Pub/Sub, consulte os cenários de exportação de dados do Cloud Logging: Splunk.

Resolução de problemas

Se as entradas do registo parecerem estar em falta no destino do seu coletor ou suspeitar que o coletor não está a encaminhar corretamente as entradas do registo, consulte o artigo Resolva problemas de registos de encaminhamento.

Preços

Para ver informações sobre preços, consulte a página de preços do Google Cloud Observability. Se encaminhar os dados de registo para outros Google Cloud serviços, consulte os seguintes documentos: