-
Notifications
You must be signed in to change notification settings - Fork 879
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
http.route
attribue
#442
Comments
I believe it should go on the We already have instrumentation to capture the route as part of the |
@tylerbenson said during last Java SIG meeting that he really dislikes this inter-instrumentation communication, when we modify already existing spans. And I tend to agree with him. If we continue to do this, we HAVE to do that in more explicit and transparent way. Which I don't know yet :) Can we always be sure that SERVER span is still present when we create child spans? Can it happen that in some async processing server span will be already sent out to collector? |
Also, modifying existing spans goes against e.g. #388. Also https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/trace/api.md#span says:
|
The primary reason that (also, see open-telemetry/opentelemetry-specification#468 which is proposing to remove that warning about updating the name of a Span) |
Ok, I see your point. But in this case I think we still need much clearer and more explicit way for any span to find parent/root span. Current approach is too well hidden and non-obvious. |
Nice, #465 will also solve this 👍 |
The absence of the |
A couple of TODOs from #5086:
|
Semantic convention for HTTP server spans defines attribute
http.route
:Currently instrumentations don't create this attribute. I think we should, but I am not quite sure which span should have this attribute. In case of a typical Java web application the first span created will usually come from generic middleware, such as Servlets or similar. It has no notion of route yet, just the full URL. Then, when request processing reaches actual web framework, such as Spring or jax-rs, second span will be created (potentially with
kind=INTERNAL
). At this point instrumentation can get used route information from the framework.Where this attribute should now go? To parent span of kind SERVER (which has all other http attributes like
http.url
andhttp.method
) or to a current span of kind INTERNAL, which has no otherhttp
attributes?The text was updated successfully, but these errors were encountered: