-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tracing headers not propagated when x-ot-span-context header is omitted #1364
Comments
I was about to report the same thing. To resolve the overwritten If that sounds good, I could put that on my queue (but I can't give an estimate of when I could deliver at the moment). |
@adriancole if you have a bit of time do you think you could help advise us on what the appropriate behavior here should be? I think given that we can find someone to work on a fix. |
@mattklein123 I believe it is possible to rework the entire implementation so as to obviate the need for the |
The problem and behavior description of what should happen sounds legit to me |
Could I suggest a slightly different fix - the However this causes problems if the application itself is instrumented, as the changes to the trace context are not propagated to the egress proxy. If both the However if a zipkin compatible tracer is being used by the application, it would take and build upon the B3 headers, and would eventually only pass the B3 headers to the egress proxy - thus the proxy knowing that the trace context must have been updated within the application. So caters for simplified context passing, while still allowing the app to add its own internal tracing if required. |
Is there any update on this issue? I seem to have run into this as well. |
I'm marking this issue "help wanted." Someone just needs to step up and fix this. @objectiser any interest? |
@mattklein123 will have a look early next week and let you know. |
Resolves envoyproxy#1364 Signed-off-by: Gary Brown <[email protected]>
…1702) Resolves #1364 Signed-off-by: Gary Brown <[email protected]>
…oxy#1364) Automatic merge from submit-queue. Remove JWT headers consumed by Istio authn and mixer filters **What this PR does / why we need it**: This PR removes the JWT headers after they have been consumed by Istio authn and mixer filters. **Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes envoyproxy#1363 **Special notes for your reviewer**: **Release note**: ```release-note ```
Signed-off-by: Jose Nino <[email protected]> Signed-off-by: JP Simard <[email protected]>
Signed-off-by: Jose Nino <[email protected]> Signed-off-by: JP Simard <[email protected]>
Within Zipkin, there isn't a concept of an 'x-ot-span-context' header. However, the initial version of the Zipkin support within Envoy requires this header to be present for Envoy to propagate the B3 headers downstream. The following is an example of a service making an inter-service call through Envoy.
Current behavior:
Notice in the current behavior that the x-b3-traceid does not match the existing trace identifier. It is dropped, and essentially a new trace is created. Also note, the parentspanid has an erroneous value. If Envoy decided to initiate a new and independent trace, the parent should be absent or null, and not use the parent of an unrelated trace.
Expected behavior:
Notice in the expected behavior, x-b3-traceid remains the same as the initial request. parentspanid becomes the spanid from the upstream request, and spanid is a newly generated identifier.
Without Envoy, Trace T has one root span called X, Service A calls Service B. Service A annotates span X with CS CR. Optional: Service B annotates span X with SR SS.
When using Envoy, Trace T has one root span Y, and one child span Y. Service A calls Service B via Envoy. Service A annotates span X with CS CR. Envoy annotates span X with SR SS. Envoy injects span Y and annotates with CS CR. Optional: Service B annotates span Y with SR SS.
@mattklein123 @fabolive @rshriram @adriancole
The text was updated successfully, but these errors were encountered: