O Managed Service for OpenTelemetry oferece suporte a diversos formatos de propagação de contexto de rastreamento, como W3C Trace Context, Zipkin B3 e Jaeger. Configure o propagador para manter rastreamentos de ponta a ponta entre serviços que usam bibliotecas de rastreamento diferentes.
Por padrão, o Managed Service for OpenTelemetry usa tracecontext e baggage (padrões W3C). Se seus serviços usarem outros formatos, configure o propagador adequadamente.
Formatos suportados
|
Formato |
Cabeçalho HTTP |
Descrição |
|
|
|
Padrão W3C. Formato padrão. Consulte W3C Trace Context. |
|
|
Definido pela especificação W3C Baggage |
Padrão W3C para propagação de pares chave-valor. Formato padrão. Consulte W3C Baggage. |
|
|
|
Formato de cabeçalho único para sistemas baseados em Zipkin. Consulte OpenZipkin B3. |
|
|
|
Formato de múltiplos cabeçalhos para sistemas baseados em Zipkin. Consulte OpenZipkin B3. |
|
|
|
Para serviços instrumentados com o cliente Jaeger. Consulte Jaeger propagation format. |
|
|
Formato AWS X-Ray |
Para serviços integrados ao AWS X-Ray. |
|
|
Formato OpenTracing |
Formato legado para serviços instrumentados com OpenTracing. |
|
|
Nenhum cabeçalho injetado ou extraído |
Desativa totalmente a propagação de contexto. |
Configure o formato de propagação
Especifique o formato de propagação usando uma propriedade de sistema Java ou uma variável de ambiente.
Usar uma propriedade de sistema Java
Adicione -Dotel.propagators aos argumentos de inicialização da JVM. Separe vários formatos com vírgulas.
java -javaagent:/path/to/opentelemetry-javaagent.jar \
-Dotel.resource.attributes=service.name=<your-service-name> \
-Dotel.exporter.otlp.headers=Authentication=<your-token> \
-Dotel.exporter.otlp.endpoint=<your-endpoint> \
-Dotel.metrics.exporter=none \
-Dotel.propagators=tracecontext,baggage,b3 \
-jar <your-app>.jar
|
Espaço reservado |
Descrição |
|
|
Nome que identifica o serviço nos rastreamentos |
|
|
Token de autenticação do endpoint OTLP |
|
|
URL do endpoint do coletor OTLP |
|
|
Nome do arquivo JAR da aplicação |
Usar uma variável de ambiente
Defina a variável de ambiente OTEL_PROPAGATORS antes de iniciar a aplicação. Separe vários formatos com vírgulas.
export OTEL_PROPAGATORS="b3"
Em seguida, inicie a aplicação normalmente.
Comportamento com múltiplos formatos
Ao especificar vários formatos (por exemplo, tracecontext,baggage,b3), o propagador injeta e extrai cabeçalhos em todos os formatos listados a cada requisição.
Observe os seguintes pontos:
Formatos padrão:
tracecontextebaggagesão padrões W3C compatíveis com a maioria das plataformas modernas de observabilidade. Use-os inicialmente, a menos que seus serviços exijam um formato diferente.Compatibilidade com Zipkin: Use
b3(cabeçalho único) oub3multi(cabeçalhos separados) para sistemas de rastreamento baseados em Zipkin.Compatibilidade com Jaeger: Use
jaegerpara serviços instrumentados com o cliente Jaeger.Desativar propagação: Defina o formato como
nonepara interromper a injeção e a extração de cabeçalhos de contexto de rastreamento.