No Cloud Trace, os traces e períodos formam o modelo de dados usado para rastrear o caminho e a latência das solicitações nos aplicativos distribuídos. Um trace captura como uma solicitação é executada de ponta a ponta nos serviços. Um trace é composto de períodos, que registram as operações individuais, chamadas de função e RPCs que ocorrem durante essa solicitação.
Modelo de dados de trace
Um trace consiste no seguinte:
ID do trace: o identificador exclusivo da operação de ponta a ponta. O ID do trace é propagado no contexto da solicitação em limites de serviço.
Coleção de períodos: um conjunto de períodos que compartilham o mesmo ID de trace. Esses períodos formam uma árvore ou um gráfico acíclico dirigido que representa a hierarquia de chamadas de uma solicitação.
O Cloud Trace usa o ID do trace para identificar quais períodos no repositório estão associados ao mesmo trace.
Modelo de dados de período
Um período representa uma única operação que ocorreu em um período específico. Cada período contém campos que fornecem informações sobre o período e o status da operação:
Os identificadores incluem os seguintes campos:
- ID do trace: o identificador exclusivo da solicitação ou trace geral a que o período pertence.
- ID do período: o identificador exclusivo do período. Se uma operação for invocada várias vezes em um único trace, cada invocação vai gerar um período separado com o mesmo nome, mas um ID de período exclusivo.
- ID do período pai: identifica a operação pai que invocou esse período.
O período "raiz" tem o ID do período pai definido como
null. - Nome: o nome da operação realizada.
- Tipo: o tipo de período fornece informações para ferramentas de rastreamento, como o Trace Explorer, sobre como os períodos estão relacionados entre si. Para mais informações, consulte OpenTelemetry SpanKind.
As informações de execução são fornecidas nos seguintes campos:
- Status: registra o status de conclusão da operação. O valor desse campo é
Unset(padrão),ErrorouOk. O valor padrão não indica um erro. - Hora de início: a hora de início da operação.
- Hora de término: a hora de término da operação.
- Status: registra o status de conclusão da operação. O valor desse campo é
Os períodos podem conter outros campos, como eventos, atributos e links:
- Eventos registram mensagens estruturadas com carimbo de data/hora em um período.
- Atributos armazenam informações adicionais sobre uma operação usando pares de chave-valor. Ao gravar atributos, recomendamos que você siga as convenções semânticas do OpenTelemetry sempre que possível.
- Links permitem relacionar um período a outro.
Para mais informações, consulte OpenTelemetry: Spans.
Recursos
Recursos do OpenTelemetry:
- OpenTelemetry
- Visão geral do trace do OpenTelemetry
- Traces do OpenTelemetry
- OpenTelemetry
trace.proto
A seguir
- Saiba mais sobre o contexto e a propagação de contexto.
- Saiba mais sobre a amostragem.