-
Notifications
You must be signed in to change notification settings - Fork 833
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
Store SpanShim/Baggage in the Context. #2982
Store SpanShim/Baggage in the Context. #2982
Conversation
opentracing-shim/src/main/java/io/opentelemetry/opentracingshim/ScopeManagerShim.java
Outdated
Show resolved
Hide resolved
Codecov Report
@@ Coverage Diff @@
## main #2982 +/- ##
===========================================
+ Coverage 0 90.86% +90.86%
- Complexity 0 3234 +3234
===========================================
Files 0 368 +368
Lines 0 9954 +9954
Branches 0 1006 +1006
===========================================
+ Hits 0 9045 +9045
- Misses 0 597 +597
- Partials 0 312 +312
Continue to review full report at Codecov.
|
opentracing-shim/src/main/java/io/opentelemetry/opentracingshim/ScopeManagerShim.java
Outdated
Show resolved
Hide resolved
@open-telemetry/java-approvers Please review again, as this is ready to go in ;) PS - I decided to not try to make the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Curious what people think about moving OpenTracing / OpenCensus shims into auto instrumentation and not having actual libraries.
Aren't there non-autoinstrumentation users who might want these as well? |
I dunno - I recall hearing OpenCensus Shim not being a priority anymore, and I wonder if it's because of the ease of auto instrumentation for most users. |
@anuraaga and I are also a bit concerned about two layers of bridging at once if someone uses the OpenTracing shim (bridge) + the Javaagent (bridge) |
@anuraaga Also, most OT users used to be manual instrumentation users, and the ones who used the OT SpecialAgent have so far simply moved directly to OTel auto-instrumentation, no need for the OT Shim. |
@carlosalberto I won't try to make any recommendation for OT I just want to make sure all the options are taken into account. In this case, I recommend thinking not only of the manual/auto axis but OT/OTel axis. By making our "OT shim" be a shim introduced by the java agent, we will have a good story of getting users onto OTel, in fact any instrumentation supported by OTel would be using it with the shim for custom frameworks instrumentation (this requires work on the auto instrumentation side of course to suppress overlapping instrumentation if we happen to go with it). Or if a user loves library instrumentation they can make the code change - it's what I'd probably do for my own frameworks and my understanding is this is where OC is going where they've found that library users tend to not mind just switching over, both agents and shims are off limits for this sort of persona. It doesn't mean it applies for OT but I don't think we've actually done user research to know the shim needs to live outside a java agent. |
Actually doing some OT research is not a bad idea. As I said, what I've seen is manual instrumentation for OT mostly, but it would be interesting to see the experience of other companies. I will open an issue in this repo for now, so we don't forget about that possibility. |
Store both the
SpanShim
andBaggage
no make the OT Shim Specification compliant:SpanShim
is stored in theContext
to avoid creating disposableSpanShim
objects when returning the active OTSpan
.Baggage
of theSpan
is stored in theContext
as well, if there's any defined for it.