Skip to content
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

Auto-manual instrumentations integrations in "reactive" frameworks #2776

Closed
iNikem opened this issue Apr 12, 2021 · 0 comments · Fixed by #2850
Closed

Auto-manual instrumentations integrations in "reactive" frameworks #2776

iNikem opened this issue Apr 12, 2021 · 0 comments · Fixed by #2850
Labels
enhancement New feature or request

Comments

@iNikem
Copy link
Contributor

iNikem commented Apr 12, 2021

We have documentation about how manual instrumentation can add extra attributes to a span, created by agent's auto-instrumentation. This works sufficiently well in simple, "single threaded" cases. But if I want to communicate with spans created for more "reactive" frameworks, such as Reactor Netty or Spring WebFlux, how can I be sure that Span.current() will return a correct span to me?

E.g. Reactor Netty provides a lot of callbacks (doOnResolve, doAfterResolve, doAfterRequest). It does not seem that currently those callbacks are executed with the right Otel context.

I can reach to the Netty connection and grab AttributeKey.valueOf("io.opentelemetry.javaagent.shaded.instrumentation.netty.v4_1.AttributeKeys#client-context") from that, if I know with agent's implementation details, but this is certainly a fragile and a bad way forward.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
1 participant