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 no Logging segundos após a respetiva chegada, 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 que seja publicada 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 seu 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 Registo 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 Sincronização criada. 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 o artigo 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 comuns de encaminhamento de registos através do Pub/Sub, consulte Cenários para exportar dados do Cloud Logging: Splunk.

Resolução de problemas

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

Preços

O Cloud Logging não cobra o encaminhamento de registos para um destino suportado. No entanto, o destino pode aplicar cobranças. Com exceção do contentor de registos _Required, o Cloud Logging cobra taxas para transmitir registos para contentores de registos e para armazenamento durante um período superior ao período de retenção predefinido do contentor de registos.

O Cloud Logging não cobra pela cópia de registos, pela criação de âmbitos de registo ou vistas de estatísticas, nem por consultas emitidas através das páginas do Explorador de registos ou Log Analytics.

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