Support for legacy Cloud Trace propagation header #447
Labels
enhancement
New feature or request
general
General issue, not specific to a particular contrib
good first issue
Good for newcomers
help wanted
Extra attention is needed
instrumentation:nginx
Nginx module
Describe your environment
We are using this module as part of ingress-nginx under Global application load balancer on Google Cloud Platform.
What was heavy used feature by us was connection of logged request by LB had connected tracing information.
As GCLB supports right now only legacy trace propagation mechanism and there is no immediate view on updates to WC3 standards we would like to add support for understanding
X-Cloud-Trace-Context
for nginx tracing at least on input.As otel module for nginx does not understood that trace exist on request it create new one and propagated using WC3 headers. Our application are implemented with guidlines to prefere
WC3
over legacy traces and this "disconnects" traces from LB from other system trace.Versios:
Ingress-Nginx helm chart version: 4.10.0
Ingress-Nginx: v1.10.0
Nginx: 1.25.3
k8s: v1.29.1-gke.1589020
opentelemetry-contrib-cpp: aaa51e2
Steps to reproduce
Deploy nginx under Classic Global Load balancer. Traces would differ between request and upstream of it. As consequence logs would also does not appear under same trace.
What is the expected behavior?
Have ability to switch input to understood legacy Cloud Trace Format
What is the actual behavior?
Legacy Cloud Trace propagation header is ignored
Additional context
I put report about
Import/Export
implementation to main library to not duplicate code as probably there are still services that are understood/produce only legacy traces open-telemetry/opentelemetry-cpp#2683The text was updated successfully, but these errors were encountered: