Use W3C tracecontext instead of x-request-id
- Dominant language
- C++
- Stars
- 28.9k
- Forks
- 5.6k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 437
Description
*Title*: Use W3C tracecontext instead of x-request-id
*Description*:
W3C tracecontext (https://www.w3.org/TR/trace-context/) could be used instead of `x-request-id` (https://http.dev/x-request-id) header to carry request ID and sampling decision.
The propagation of the header `x-request-id` is not supported by other ecosystems that implement automatic in-process header propagation e.g. OpenTelmetry auto-instrumentation libraries.
The OpenTelemetry auto-instrumentation simplifies header propagation for tracing capabilities in Envoy. The OTEL SDK has official support for B3 multi (used by envoy), Jaeger and W3C tracecontext.
It seems unlikely that OpenTelemetry will support `x-request-id` header propagators across languages https://github.com/open-telemetry/opentelemetry-specification/issues/2912
[optional *Relevant Links*:]
* https://istio.io/latest/docs/tasks/observability/distributed-tracing/overview/
* https://github.com/envoyproxy/envoy/blob/a9ae08bea8964a4deda789c12578777e7f3657ce/docs/root/intro/arch_overview/observability/tracing.rst#L13
* https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_conn_man/headers#x-client-trace-id
Contributor guide
Assessment
This issue has not been assessed yet.