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 registros do Cloud Logging a softwares 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 recebe essa entrada de registro. As entradas de registro roteadas geralmente estão 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 as entradas de registro, consulte Rotear registros para destinos compatíveis.
Ver registros
Para conferir os registros conforme eles são transmitidos pelo Pub/Sub, faça o seguinte:
-
No console do 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 e formatar o campo data
, 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 depois de assinar o mesmo tópico. A geração de registros é 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 são originadas, crie o tópico do Pub/Sub com uma assinatura padrão:
Ative a API Pub/Sub.
-
No console do 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
attributes
da 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 originadas, configure o Logging para encaminhar as entradas de registro ao 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, digite 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 o papel de Editor do Pub/Sub (
roles/pubsub.publisher
) à identidade do gravador do coletor. Para mais informações sobre como conseguir a identidade do gravador e conceder um papel, consulte Definir permissões de destino.
O Cloud Logging agora envia 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 seu tópico do Pub/Sub e enviá-los ao Datadog, será necessário realizar duas etapas:
Crie ou receba 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 usando 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 ausentes no destino do coletor ou se você suspeitar que o coletor não está roteando entradas de registro corretamente, consulte Resolver problemas de registros de roteamento.
Preços
O Cloud Logging não cobra pelo encaminhamento de registros para um destino compatível, mas o destino pode aplicar cobranças.
Com exceção do bucket de registros _Required
,
o Cloud Logging cobra para transmitir registros em buckets de registro e
para armazenamento por mais tempo do que o período de armazenamento padrão do bucket de registros.
O Cloud Logging não cobra pela cópia de registros, pela definição de escopos de registro ou por consultas emitidas nas páginas Explorer de registros ou Análise de dados de registros.
Para mais informações, consulte estes documentos:
- Resumo dos preços do Cloud Logging
Custos de destino:
- Cobranças de geração de registros de fluxo da VPC são aplicadas quando você envia e exclui seus registros de fluxo da nuvem privada virtual do Cloud Logging.