Integrar com o Cloud Logging

Neste documento, descrevemos como associar um trace a um Cloud Logging a uma entrada de registro. Usando os campos de rastreamento no LogEntry spanId, trace e traceSampled, é possível correlacionar registros e traces para possibilitar uma melhor solução de problemas distribuída.

Associar manualmente uma entrada de registro a um trace ou período

Se você usa a API Cloud Logging para gravar dados de registro ou se grava dados de registro estruturados, é possível associar uma entrada de registro a um rastro ou a um período. A entrada de registro também pode registrar se o rastro foi amostrado. Para mais informações sobre como o O Agente de operações converte dados de registros em um LogEntry, consulte Campos especiais em payloads estruturados.

Para associar uma entrada de registro a um trace, defina o campo trace no objeto LogEntry. O campo trace precisa ser definido como uma string com o seguinte formato:

   projects/PROJECT_ID/traces/TRACE_ID

em que PROJECT_ID é o código do projeto do Google Cloud e TRACE_ID é o identificador de trace

Para associar uma entrada de registro a um período ao usar a API Cloud Logging, Defina o campo spanId no objeto LogEntry. à codificação hexadecimal de 16 caracteres do ID do período. Por exemplo, para associar uma entrada de registro a um período com um ID de 74, defina o ID do período como 000000000000004a.

Para indicar que você está usando amostragem de trace e que o trace foi amostrado para armazenamento quando a entrada de registro foi gravada, defina o campo traceSampled em o objeto LogEntry. Quando você usa a amostragem de traces, é possível que uma entrada de registro seja criada quando o próprio trace não for capturado.

Associar automaticamente uma entrada de registro a um trace ou período

Ao usar o cliente do Cloud Logging bibliotecas, em alguns casos, os campos de rastreamento em uma entrada de registro podem ser definidos automaticamente. Valores definidos manualmente têm precedência sobre valores definidos automaticamente.

Por exemplo, se você estiver usando o OpenTelemetry e geração de registros de um período ativo do OpenTelemetry, e os campos de rastreamento na entrada de registro são preenchidas usando o OpenTelemetry Contexto.

Como alternativa, em alguns casos, quando há uma solicitação HTTP, os campos de trace podem ser definidos no W3C traceparent ou o X-Cloud-Trace-Context na solicitação HTTP.

Para mais informações sobre o preenchimento automático de campos de rastreamento no registro entradas, consulte a seguinte documentação da biblioteca de cliente específica da linguagem:

Como ver registros

É possível ver a entrada de registro de um trace ao lado do gráfico de cascata ou no Explorador de registros. Quando você usa o Explorador de registros, ele é automaticamente restrito ao intervalo de carimbo de data/hora do trace. Se não houver entradas de registro a serem exibidas, o Explorador de registros exibirá a mensagem No entries found matching current filter.

No painel Detalhes do trace, para visualizar a entrada de registro do trace, siga um destes procedimentos:

  • Para exibir as entradas de registro de trace ao lado do gráfico de cascata, acesse o gráfico de cascata e clique em Mostrar registros. Quando Mostrar registros não for exibido, nenhuma entrada de registro estará disponível.

  • Para visualizar a entrada de registro no Explorador de registros, clique em Visualizar ao lado do rótulo Registro na seção Detalhes. Quando você tiver um trace do Cloud Load Balancing, clique em Visualizar ao lado do rótulo Registro da VM.

Para mais informações sobre como visualizar entradas de registro no Cloud Logging, consulte Como usar o Explorador de registros.

Permissões para visualização de registros

Para ver as entradas de registro, você precisa ter a permissão logging.logEntries.list no projeto. Essa permissão é fornecida pelos papéis de gerenciamento de identidade e acesso (IAM) do Visualizador de registros e do Visualizador do projeto.

Para ver os registros da instância de VM, você precisa ter a permissão compute.instances.get no projeto. Essa permissão é oferecida pelos papéis do IAM do Visualizador de rede do Compute Engine e do Visualizador do projeto.