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:
-
No console Google Cloud , acesse a página Tópicos:
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Pub/Sub.
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:
No projeto em que as entradas de registro se originam, crie o tópico do Pub/Sub com uma assinatura padrão:
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 theserviceusage.services.enablepermission. Learn how to grant roles.-
No console Google Cloud , acesse a página Tópicos:
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Pub/Sub.
Selecione Criar tópico.
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
attributesda mensagem do Pub/Sub. Por exemplo:"attributes": { "logging.googleapis.com/timestamp": "2024-07-01T00:00:00Z" }Mantenha a opção Adicionar uma assinatura padrão. Não selecione nenhuma outra opção.
Selecione Criar tópico.
No projeto em que as entradas de registro são criadas, configure o Logging para encaminhar as entradas de registro ao seu tópico:
-
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.
- Clique em Criar coletor, insira um nome e uma descrição para o coletor e clique em Próxima.
- 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.
- Selecione as entradas de registro a serem incluídas no coletor e clique em Próxima.
- Opcional: selecione as entradas de registro a serem excluídas.
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.
Conceda ao principal especificado na identidade do gravador do coletor os seguintes papéis do IAM:
Gravador de registros (
roles/logging.logWriter)Publicador do Pub/Sub (
roles/pubsub.publisher)
Para mais informações sobre como receber a identidade do gravador e conceder uma função, consulte Definir permissões de destino.
O Cloud Logging agora está enviando entradas de registro para seu tópico do Pub/Sub.
-
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:
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:
- Assinante do Pub/Sub (
roles/pubsub.subscriber) - Administrador do Dataflow (
roles/dataflow.admin) - Worker do Dataflow (
roles/dataflow.worker)
Para mais informações, consulte estes documentos:
- Assinante do Pub/Sub (
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 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: