Este documento descreve como pode associar uma entrada de registo a um rastreio. Faz a associação definindo um campo na entrada do registo.
Ao usar os campos de rastreio na estrutura LogEntry
—spanId
, trace
e traceSampled
— pode correlacionar registos e rastreios para permitir uma melhor resolução de problemas distribuída.
Associe manualmente uma entrada do registo a um rastreio ou um intervalo
Se usar a API Cloud Logging para escrever dados de registo ou se escrever dados de registo estruturados, pode associar uma entrada de registo a um rastreio ou a um intervalo. A entrada do registo também pode registar se o rastreio foi amostrado. Para obter informações sobre como o agente do Ops converte dados de registo estruturados em campos num LogEntry
, consulte Campos especiais em payloads estruturados.
Para associar uma entrada de registo a um rastreio, defina o campo trace
no objeto LogEntry
.
O campo trace
tem de ser definido como uma string com o seguinte formato:
projects/PROJECT_ID/traces/TRACE_ID
onde PROJECT_ID
é o ID do projeto e Google Cloud é o identificador de rastreioTRACE_ID
Para associar uma entrada de registo a um intervalo quando usar a Cloud Logging API,
defina o campo spanId
no objeto LogEntry
para a codificação hexadecimal de 16 carateres do ID do intervalo.
Por exemplo, para associar uma entrada de registo a um intervalo com um ID de 74
,
defina o ID do intervalo como 000000000000004a
.
Para indicar que está a usar a amostragem de rastreio e que o rastreio foi amostrado para armazenamento quando a entrada de registo foi escrita, defina o campo traceSampled
no objeto LogEntry
. Quando usa a amostragem de rastreio,
é possível que seja criada uma entrada de registo quando o próprio rastreio não é capturado.
Associe automaticamente uma entrada de registo a um rastreio ou um intervalo
Quando usa bibliotecas do cliente do Cloud Logging, em alguns casos, os campos de rastreio numa entrada de registo podem ser definidos automaticamente. Os valores definidos manualmente têm precedência sobre os valores definidos automaticamente.
Por exemplo, se estiver a usar o OpenTelemetry e a registar a partir de um intervalo do OpenTelemetry ativo, os campos de rastreio na entrada do registo são preenchidos a partir do contexto do OpenTelemetry.
Em alternativa, em alguns casos, quando um pedido HTTP está presente, os campos de rastreio podem ser definidos a partir do campo W3C traceparent
ou do valor X-Cloud-Trace-Context
no pedido HTTP.
Para mais informações sobre o preenchimento automático de campos de rastreio em entradas de registo, consulte a seguinte documentação da biblioteca de cliente específica do idioma:
Ver registos
Pode ver a entrada de registo de um rastreio juntamente com o gráfico de hierarquia de publicação ou no explorador de registos. Quando usa o Explorador de registos, este é automaticamente restrito ao intervalo de data/hora do rastreio. Se não existirem entradas de registo para apresentar,
o Explorador de registos apresenta a mensagem
No entries found matching current filter
.
No painel Detalhes do rastreio, para ver a entrada do registo do rastreio, faça uma das seguintes ações:
Para apresentar as entradas do registo de rastreio juntamente com o gráfico de hierarquia de publicação, aceda ao gráfico de hierarquia de publicação e clique em Mostrar registos. Quando a opção Mostrar registos não é apresentada, não estão disponíveis entradas de registo.
Para ver a entrada do registo no Explorador de registos, clique em Ver junto à etiqueta Registo na secção Detalhes. Tenha em atenção que, quando tem um rastreio do Cloud Load Balancing, clica em Ver junto à etiqueta Registo da VM.
Para mais informações sobre como ver entradas de registo no Cloud Logging, consulte o artigo Usar o Explorador de registos.
Autorizações de visualização de registos
Para ver quaisquer entradas de registo, tem de ter a autorização logging.logEntries.list
no seu projeto. Esta autorização é fornecida pelas funções de gestão de identidade e de acesso (IAM) de Leitor de registos e Leitor de projetos.
Para ver os registos de instâncias de VMs, tem de ter a autorização compute.instances.get
no seu projeto. Esta autorização é fornecida pelas funções do IAM Leitor de rede do Compute Engine e Leitor de projetos.