-
Notifications
You must be signed in to change notification settings - Fork 771
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
Don't record child activities #893
Comments
@alanwest faced the same issue Grpc, which is on top of httpclient. We need to solve the problem in generic way to address both these and other future scenarios. |
Relates to #809 |
@cijothomas is this duplicated with #809 or a different thing? |
same here, try to send trace to Linkerd (OpenCensus Collector) using Zipkin exporter and stuck on 100% CPU because of a loop in trace zipkin call |
Related, yes. But not exact duplicate. 809 is for users to filter early. This issue if more for InstrumentationLibrary authors. |
@cijothomas exactly. I've been looking through the code and I'm not really sure how we could go about this other than some sort of ability for a parent activity to be able to preview and filter out any child activities. Not even sure how that would work since |
There is some discussion at the spec level here open-telemetry/opentelemetry-specification#530. Seems like a natural solution is to do something like what @reyang did in Python by introducing a |
I've been harping on this since November! Glad to see everyone finally coming on board 🤣 |
I've added this to OpenCensus 3 years ago and still having trouble today convincing people it is important 😄 |
Yikes. That doesn't sound promising. |
Ugh, really? Having worked on observability products for over four years now, this just seems like basic functionality to me. @reyang @CodeBlanch Is there a particular github issue or venue (other than the ones already noted here) at the spec-level where we could best be chiming in on this discussion? I'd be more than happy to add my voice. |
open-telemetry/opentelemetry-specification#530 The issue has been tagged as |
Given I have done this several times in different languages, I won't be afraid to do it again in this repo 😄
|
I've attempted to give you all the affirmative emojis github will allow me. |
@reyang sounds good to me. Are you going to do an AsyncLocal context thing? FYI @SergeyKanzhelev sent me this https://github.com/lmolkova/oteps/blob/terminal-context/text/0069-terminal-context.md (by @lmolkova) a while back when we were discussing possible solutions. |
I think it needs to be an abstract interface where people can swap the actual implementation. Something similar to this https://github.com/census-instrumentation/opencensus-python/tree/master/context/opencensus-context#opencensus-runtime-context. |
@rajkumar-rangaraj is working to make this configurage in gRPC client instrumentation. Once done we can review it and make it the recommendation for every instrumentation authors. |
I am trying to create an instrumentation for the Elasticsearch.Net client. Internally, it's using HttpClient. I'd like to only record the Elasticsearch call and the details about it and have it show up as a
db.system
of typeelasticsearch
. I've got that much working, but the problem is that it's also recording the internal HttpClient call. Is there some way I can cancel recording all child activities after starting the Elasticsearch call activity so that it won't capture the HttpClient call? I know that I can provide a filter function for the HttpClient instrumentation, but I was really hoping to not have to do that.The text was updated successfully, but these errors were encountered: