Conferir registros roteados para o Cloud Storage

Neste documento, explicamos como encontrar entradas de registro encaminhadas do Cloud Logging para buckets do Cloud Storage.

As entradas de registro são salvas em lotes a cada hora nos buckets do Cloud Storage. Pode ser necessário aguardar de duas a três horas até que as primeiras entradas comecem a aparecer.

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 os registros, consulte Rotear registros para destinos compatíveis.

Mostrar registros

Para visualizar seus registros roteados para o Cloud Storage, faça o seguinte:

  1. No painel de navegação do console do Google Cloud, selecione Cloud Storage e clique em Buckets:

    Acesse Buckets

  2. Selecione o bucket do Cloud Storage que você está usando como destino de roteamento.

Organização de registros

Ao encaminhar registros para um bucket do Cloud Storage, o Logging grava um conjunto de arquivos no bucket.

Eles são organizados em hierarquias de diretório por data e tipo de registro. O tipo de registro, conhecido como [LOG_ID] na referência LogEntry, pode ser um nome simples, como syslog, ou um nome composto, como appengine.googleapis.com/request_log. Se esses registros fossem armazenados em um bucket chamado my-gcs-bucket, os diretórios seriam nomeados como no exemplo a seguir:

my-gcs-bucket/syslog/YYYY/MM/DD/
my-gcs-bucket/appengine.googleapis.com/request_log/YYYY/MM/DD/

Um único bucket do Cloud Storage pode conter registros de vários tipos de recursos. O tamanho máximo do arquivo é de 3,5 GiB.

O Logging não garante a eliminação de duplicação de entradas de registro de coletores que contêm consultas idênticas ou sobrepostas. As entradas de registro desses coletores podem ser gravadas várias vezes em um bucket do Cloud Storage.

Os diretórios de folha (DD/) contêm vários arquivos. Cada um deles contém as entradas de registro encaminhadas para um período de tempo especificado no nome do arquivo. Os arquivos são fragmentados e os nomes deles terminam em um número de fragmento, Sn ou An (n=0, 1, 2 ...). Por exemplo, estes são dois arquivos que podem ser armazenados no diretório my-gcs-bucket/syslog/2015/01/13/:

08:00:00_08:59:59_S0.json
08:00:00_08:59:59_S1.json

Juntos, esses dois arquivos contêm as entradas de registro syslog de todas as instâncias durante a hora que começa às 08:00:00 UTC e termina às 8:59:59 UTC. Os carimbos de data/hora da entrada de registro são mostrados em UTC (Tempo Universal Coordenado).

As entradas de registro que chegam com um receiveTimestamp dentro da janela alinhada de 60 minutos de timestamp são gravadas nos arquivos de fragmento principal. Por exemplo, uma entrada de registro com timestamp de 08:00:00 e receiveTimestamp de 08:10:00 é armazenada no arquivo de fragmento principal.

Esses arquivos incluem um fragmento principal numerado no sufixo: _Sn.json.

As entradas de registro que chegam com um timestamp em uma janela alinhada de 60 minutos diferente da receiveTimestamp são gravadas em arquivos de fragmento de adendo. Por exemplo, uma entrada de registro com timestamp de 08:00:00 e receiveTimestamp de 09:10:00 é armazenada em um arquivo de fragmento de adendo.

Esses arquivos incluem um fragmento de adendo numerado com o sufixo: _An:Unix_timestamp.json.

Por exemplo, uma entrada de registro que tem um timestamp entre 08:00:00 e 08:59:59, mas uma receiveTimestamp em uma janela alinhada de 60 minutos diferente é gravada em um arquivo. pelo sufixo _An:Unix_timestamp.json, em que o carimbo de data/hora Unix identifica a hora em que o arquivo foi roteado para o Cloud Storage. Se uma entrada de registro tivesse um timestamp de 08:50:00 e um receiveTimestamp de 09:10:00 e fosse roteada às 09:15:00 em 25 de março de 2021, o arquivo de adendo seria escrito da seguinte maneira:

08:00:00_08:59:59_A0:1616681700.json

Para conseguir todas as entradas de registro, você lerá todos os fragmentos para cada período de tempo. Neste caso, são os fragmentos do arquivo 0 e 1. O número de fragmentos gravados pode mudar para cada período.

Nos arquivos fragmentados individuais, as entradas de registro são armazenadas como uma lista de objetos LogEntry. Para ver um exemplo de uma entrada syslog, consulte Organização das entradas de registro.

A ordem de classificação das entradas de registro nos arquivos não é uniforme nem garantida de outra forma.

Entradas de registro atrasadas

As entradas de registro encaminhadas são salvas em lotes a cada hora nos buckets do Cloud Storage. Pode ser necessário aguardar de duas a três horas até que as primeiras entradas comecem a aparecer. Os fragmentos do arquivo de registro encaminhado com o sufixo An ("Append") mantêm as entradas de registro que chegaram atrasadas.

Se o destino do encaminhamento sofrer uma interrupção, o Cloud Logging armazenará os dados em buffer até que a interrupção termine.

Se não houver registros no destino do coletor, verifique as métricas do sistema de exportação. As métricas do sistema de exportação indicam quantas entradas de registro são roteadas e quantas são descartadas devido a erros. Se as métricas do sistema de exportação indicarem que nenhuma entrada de registro foi roteada para o destino, verifique seu filtro para verificar se as entradas de registro correspondentes ao filtro chegaram recentemente ao Logging.

No painel de navegação do console do Google Cloud, selecione Logging e clique em Roteador de registros:

Acessar o roteador de registros

Entradas de registro do App Engine

Além disso, o App Engine combina várias subentradas do tipo google.appengine.logging.v1.LogLine (também chamadas de AppLog ou AppLogLine) em uma entrada de registro principal do tipo google.appengine.logging.v1.RequestLog para a solicitação que causa a atividade de registro. Cada linha de registro tem um "código de solicitação" que identifica a entrada principal. O Explorador de registros exibe as linhas com a entrada de registro da solicitação. O Logging tenta colocar todas as linhas do registro no lote com a solicitação original, mesmo que elas sejam colocadas no próximo lote pelos carimbos de data/hora. Se isso não for possível, a entrada de registro da solicitação pode ficar sem algumas linhas de registro, e pode haver linhas de registro órfãs sem uma solicitação no próximo lote. Se essa possibilidade for importante para você, prepare-se para reconectar as partes da solicitação quando processar os registros.

Solução de problemas

Se os registros parecerem ausentes no destino do coletor ou você suspeitar que o coletor não está roteando os registros corretamente, consulte Resolver problemas de registros de roteamento.

Preços

O Cloud Logging não cobra para rotear os registros para um destino compatível. No entanto, o destino pode aplicar cobranças. Com exceção do bucket de registros _Required, o Cloud Logging cobra para transmitir registros para buckets de registros e para armazenamento mais longo que o período de armazenamento padrão do bucket de registros.

O Cloud Logging não cobra pela cópia de registros ou por consultas emitidas na página Análise de registros ou na Análise de registros.

Para mais informações, consulte estes documentos: