-
Notifications
You must be signed in to change notification settings - Fork 10
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
Migrate OpenTracing to OpenTelemetry #19
base: master
Are you sure you want to change the base?
Conversation
Tests to be completed |
@tjiuming We(Asaf and I) discussed this one in yesterday's regular sync meeting. We'd better contribute the Pulsar instrumentation to https://github.com/open-telemetry/opentelemetry-java-instrumentation/tree/main/instrumentation. And the OTel has defined the clear spec for messaging systems https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/trace/semantic_conventions/messaging.md Since this repo is initially based on OpenTracing, we should not continue this project instead of contributing to OTel. It will improve the visibility to users, and we will also get experienced advice from the OTel community. @asafm @tjiuming I will create a product board for this one, since it's not a short-term task for now. So that we can involve the product team to understand the value of this project. |
For OpenTelemetry-java-instrumentation, I had already created a PR for it: open-telemetry/opentelemetry-java-instrumentation#5926 . And it was reviewed by the Otel community, and I think it could be merged in a few days.
Although openTelemetry-java-instrumentation is more powerful than this PR, but I still think we need to provide users with the ability to OTEL tracing, even if they don't use |
@tjiuming I'm not familiar enough with the Java Agent of OTel.
The PR, you have linked, adds support for the JavaAgent version. What @codelipenghui meant is that you will add the standalone library also to Examples I saw: This way you will also gain all the great reviews from OpenTelemetry folks which knows this project its best practices in and out. Also, in the PR you linked you wrote integration tests using Testcontainers, and here there were none. That's the advantage you get when you write in OTel repo, they guide to write in certain way, which includes integration tests. |
I got it. You mean that we can move this repo to https://github.com/open-telemetry/opentelemetry-java-instrumentation as a standalone library. It makes sense. We can maintain the library in OTEL repo |
@tjiuming maintain in OTEL repo and then archive this repo |
@tjiuming @asafm I have contributed the tracing instrumentation to SkyWalking which follow the byte code manipulation. Hmm, IMO, it's not so good. Some method has changed in the Pulsar client, then we need to have new instrumentation in SkyWalking. The Pulsar client interceptor is better for compatibility, but users need to add the dependency. |
@codelipenghui I think In a company, it is very difficult to promote the upgrading of basic components |
Exactly, yes. |
@tjiuming Correct me if I'm wrong, but you need to add the specific dependency for Pulsar even in the case of using the Java Agent right? It's not that the agent packages ALL libraries it supports in agent mode, right? @codelipenghui I don't like byte code manipulation as well. I'm not familiar enough with how the Java Agent motivation. I guess some users wants metrics with 0 effort. Just plug online and that's it. Java Agent allows. Regarding byte code manipulation. It allows hands-free - just add agent and enjoy. In interceptor mode, you have to add that explicitly. Unless @tjiuming you add the interceptor via reflection? |
Wait until open-telemetry/opentelemetry-java-instrumentation#8007 merged to avoid conflicts |
Migrate OpenTracing to OpenTelemetry