-
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
Broken trace trees with tracing_instrumentations=request #11294
Comments
@ybasket thank you for reporting this, it does sound like a bug indeed. |
I tested with |
@samugi I had a chance to test now and confirm that Interestingly and visible in the screenshot, the |
@ybasket thank you for confirming that. The behavior you describe is due to the information regarding the root span |
Interesting. Maybe the root span's end could be reported with "ceil" on the rounding, so that it reports the millisecond after, not before? It would be as inaccurate as the current behaviour, but avoid the warning in Jaeger and alike. But I don't know any implementation details, so maybe this is nonsense 🤷 |
Is there an existing issue for this?
Kong version (
$ kong version
)3.3.0
Current Behavior
With
tracing_instrumentations=request
, Kong will only report the request span via the OpenTelemetry plugin. The problem hereby is that it will also inject an invalid parent span ID (maybe the one of the balancer span?) into the balancer request, leading to broken trace graphs like this:With
tracing_instrumentations=all
, the span tree is not broken:Expected Behavior
With
tracing_instrumentations=request
(and any other limited set), Kong should inject the span ID of the request span as parent span ID into the balancer request so that the trace tree is not broken.Steps To Reproduce
Anything else?
If I'm not mistaken, this was working correctly on earlier versions of Kong 3.x and broke with the update to 3.3
The text was updated successfully, but these errors were encountered: