Este documento descreve como vincular uma entrada de registro a um rastreamento. Você realiza a vinculação definindo um campo na entrada de registro.
Ao usar os campos de rastreamento na estrutura LogEntry (spanId, trace e traceSampled), é possível correlacionar registros e rastreamentos para melhorar a solução de problemas distribuídos.
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 rastreamento ou um intervalo. A entrada de registro
também pode registrar se o rastreamento foi amostrado. Para informações sobre como o Agente de operações converte dados de registro estruturados em campos 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:
- Formato preferido:
TRACE_ID - Formato legado:
projects/PROJECT_ID/traces/TRACE_ID
Nas expressões anteriores, PROJECT_ID é o ID do projeto Google Cloud e TRACE_ID é o identificador de rastreamento.
Para associar uma entrada de registro a um intervalo ao usar a API Cloud Logging,
defina o campo spanId no objeto LogEntry
como a codificação hexadecimal de 16 caracteres do ID do intervalo.
Por exemplo, para associar uma entrada de registro a um período com o ID 74,
defina o ID do período como 000000000000004a.
Para indicar que você está usando a amostragem de rastreamento e que o rastreamento foi amostrado
para armazenamento quando a entrada de registro foi gravada, defina o campo traceSampled no
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 é capturado.
Associar automaticamente uma entrada de registro a um trace ou período
Ao usar as bibliotecas de cliente do Cloud Logging, em alguns casos, os campos de rastreamento em uma entrada de registro podem ser definidos automaticamente. Os valores definidos manualmente têm precedência sobre os valores definidos automaticamente.
Por exemplo, se você estiver usando o OpenTelemetry e registrando em um período ativo do OpenTelemetry, os campos de rastreamento na entrada de registro serão preenchidos com o Contexto do OpenTelemetry.
Em alguns casos, quando uma solicitação HTTP está presente, os campos de rastreamento podem ser definidos com base no campo W3C traceparent ou no valor X-Cloud-Trace-Context na solicitação HTTP.
Para mais informações sobre o preenchimento automático de campos de rastreamento em entradas de registro, consulte a documentação da biblioteca de cliente específica da linguagem a seguir:
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.