-
Notifications
You must be signed in to change notification settings - Fork 454
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
Alternate Proposal for OTel Tracing API vs Tokio-Tracing #1705
Comments
What would the donation mean for the tracing project itself? I assume it would have to add first-class support for OpenTelemetry-specific features such as remote contexts and having globally unique span IDs which it currently doesn't have for performance reasons? |
I mentioned this in other contexts, but I don't think that we, as the
And some governance/IP assignment stuff, I assume. |
Thanks for understanding :)
I believe OpenTelemetry GC does acknowledge that performance is key for system languages like C++ and Rust. And OpenTelemetry specification is flexible to scenarios where performance can be achieved by leveraging language-specific constructs or features. In general, it's important to support the OpenTelemetry Data Model, remote context management, and OTLP Export. From Rust's perspective, it is equally important that we support these features without sacrificing performance in any way.
Agree, this issue is only talking about the technical feasibility, so lots of logistics around CNCF and Tokio are ignored :) |
This issue builds upon Option 1 discussed in OTel Tracing vs Tokio-Tracing. The parent issue used the term "deprecate Tokio-Tracing" which is disruptive. However, this proposal seeks a non-disruptive, and more collaborative approach by suggesting that the Tokio organization donates the
tracing
crate to the OpenTelemetry Rust project and joins as maintainers.This approach is very similar to recognizing tracing as the OTel's official API, but it goes a step further by transferring the
tracing
codebase to the OpenTelemetry repository through a donation — a practice not new to OpenTelemetry, as demonstrated here and here.Despite the code's transfer to a CNCF-owned OpenTelemetry-Rust repository, the package name could remain unchanged, continuing its publication on crates.io as usual. This ensures that current users of
tracing
experience no disruption in their existing workflows. It is still possible to change the name to include "opentelemetry" in future, but we can still ensure backward compatibility.Advantages of This Approach
No disruptions to existing users: Users of Tokio-Tracing will experience no changes in how they use the crate. All existing functionalities will remain intact, albeit with the source code hosted under a new umbrella.
Enhanced Development and Stability: With the combined efforts of both the Tokio and OpenTelemetry communities, both
tracing
andopentelemetry
can advance more rapidly towards version 1.0. The collaboration brings more resources and expertise to tackle common challenges more effectively.All the advantages and some of the challenges of recognizing tracing as the OTel's official API applies to this proposal as well.
Note: This was already suggested here and here. Opened a dedicated issue to capture details and get feedback.
The text was updated successfully, but these errors were encountered: