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

Move MongoDB Client Tracing to OpenTelemetry #28473

Closed
radcortez opened this issue Oct 10, 2022 · 15 comments
Closed

Move MongoDB Client Tracing to OpenTelemetry #28473

radcortez opened this issue Oct 10, 2022 · 15 comments
Labels
area/housekeeping Issue type for generalized tasks not related to bugs or enhancements area/mongodb area/smallrye area/tracing
Milestone

Comments

@radcortez
Copy link
Member

radcortez commented Oct 10, 2022

Description

The MongoDB Client Extension uses OpenTracing for Tracing. We need to move it to OpenTelemetry because CNCF has archived OpenTracing: https://www.cncf.io/blog/2022/01/31/cncf-archives-the-opentracing-project.

Implementation ideas

No response

@radcortez radcortez added the area/housekeeping Issue type for generalized tasks not related to bugs or enhancements label Oct 10, 2022
@quarkus-bot
Copy link

quarkus-bot bot commented Oct 10, 2022

@evanchooly
Copy link
Member

I'm not opposing the move but, for posterity's sake, perhaps some reasoning would help.

@radcortez
Copy link
Member Author

Sure. Updated the description.

@loicmathieu
Copy link
Contributor

Maybe we should support both not ?
Or does Quarkus plan to drop support to OpenTracing ?

@radcortez
Copy link
Member Author

Yes, the plan is to drop OpenTracing. As pointed out here: https://www.cncf.io/blog/2022/01/31/cncf-archives-the-opentracing-project, OpenTracing is archived by CNCF.

We have problems fixing current issues because no new releases are being cut. In some cases, we had to fork the code and release it in a different GAV. We want to encourage users to move to OpenTelemetry, since OpenTracing is dead now.

@loicmathieu
Copy link
Contributor

@radcortez if we plan to drop support for Quarkus so OK for me to move the current MongoDB support from OpenTracing to OpenTelemetry. There is a command listener used to trace each MongoDB command (request / query) here: https://github.com/quarkusio/quarkus/blob/main/extensions/mongodb-client/runtime/src/main/java/io/quarkus/mongodb/tracing/MongoTracingCommandListener.java it currently delegates to a command listener from the OpenTracing contrib MongoDB instrumentation. If such instrumentation exist for OpenTelemetry it should be updated to use it.

@radcortez
Copy link
Member Author

There is some instrumentation available here: https://github.com/open-telemetry/opentelemetry-java-instrumentation/tree/main/instrumentation/mongo, but I didn't look into it yet.

@loicmathieu
Copy link
Contributor

@radcortez these are based on a Java agent which is a different strategy that should not need anything on our side but as it required JVMTI will not work in native.

@radcortez
Copy link
Member Author

@loicmathieu
Copy link
Contributor

It also uses a command listener so we may be able to use it like we did for OpenTracing, I don't know why it is for 3.1 maybe it can also be used for the version 4, it needs to be tested anyway.

@sifraden
Copy link

sifraden commented Sep 8, 2023

Hi guys, do you have any updates on this one?

@brunobat
Copy link
Contributor

brunobat commented Sep 8, 2023

Not yet but I moved the implementation target to next quarter, @sifraden

@jyemin
Copy link
Contributor

jyemin commented Sep 27, 2023

FYI, I've tested the OpenTelemetry agent's MongoDB driver instrumentation, and it works with the latest release of the driver (4.10 at the time I tested).

CC @evanchooly

@vkn
Copy link
Contributor

vkn commented Apr 23, 2024

Hi @radcortez, since you are the assignee, maybe you could review PR? thx

gsmet pushed a commit to vkn/quarkus that referenced this issue Apr 26, 2024
@loicmathieu
Copy link
Contributor

Fixed by #40191

@loicmathieu loicmathieu added this to the 3.11 - main milestone Apr 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/housekeeping Issue type for generalized tasks not related to bugs or enhancements area/mongodb area/smallrye area/tracing
Projects
Status: Done
Development

No branches or pull requests

7 participants