-
Notifications
You must be signed in to change notification settings - Fork 744
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
opentelemetry: Update otel to 0.17.0 #1853
Conversation
## Motivation Support the latest OpenTelemetry specification. ## Solution Update `opentelemetry` to the latest `0.17.x` release. Breaking changes upstream in the tracking of parent contexts in otel's `SpanBuilder` have necessitated a new `OtelData` struct to continue pairing tracing spans with their associated otel `Context`.
For what it’s worth, |
Looks like CI is failing because Since the tracing/.github/workflows/check_msrv.yml Lines 49 to 63 in 7eb6005
We'll also have to add tracing/.github/workflows/check_msrv.yml Line 46 in 7eb6005
In order to increase the crate's MSRV, we'll have to update the tracing/tracing-opentelemetry/Cargo.toml Line 20 in 7eb6005
README and lib.rs documentation.
@jtescher, can I get you to update the MSRV so that we can get CI to pass? Then, I think this should probably be good to merge. Thanks! |
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.
overall, this looks good to me, but we'll need to fix the MSRV issues I mentioned before we can merge this. I commented on a couple other small things.
|
||
/// Per-span OpenTelemetry data tracked by this crate. | ||
#[derive(Debug, Clone)] | ||
pub struct OtelData { |
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.
Am I correct that this needs to be public because it's used in the PreSampledTracer
trait, but it's totally opaque to user code? Is there any reason user code might need to access or mutate this type's fields?
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.
Good point, fields need to be pub for althernate sdk implementations. Will fix.
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.
Added quick comment as well to clarify purpose a bit. Should be opaque to everyone who is not trying to implement PreSampledTracer
directly.
@hawkw ok great all passing now ✅ |
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.
lgtm
Tracing is built against the latest stable release. The minimum supported | ||
version is 1.42. The current Tracing version is not guaranteed to build on Rust | ||
versions earlier than the minimum supported version. | ||
Tracing Opentelemetry is built against the latest stable release. The minimum |
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.
nit: should this be
Tracing Opentelemetry is built against the latest stable release. The minimum | |
Tracing OpenTelemetry is built against the latest stable release. The minimum |
@@ -111,6 +111,8 @@ pub use subscriber::{subscriber, OpenTelemetrySubscriber}; | |||
pub use tracer::PreSampledTracer; | |||
|
|||
/// Per-span OpenTelemetry data tracked by this crate. | |||
/// | |||
/// Useful for implementing [PreSampledTracer] in alternate otel SDKs. |
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.
nit
/// Useful for implementing [PreSampledTracer] in alternate otel SDKs. | |
/// Useful for implementing [`PreSampledTracer`] in alternate otel SDKs. |
I'm just wondering whether a new release can be made so that downstream projects can update their dependencies accordingly. |
## Motivation Support the latest OpenTelemetry specification. ## Solution Update `opentelemetry` to the latest `0.17.x` release. Breaking changes upstream in the tracking of parent contexts in otel's `SpanBuilder` have necessitated a new `OtelData` struct to continue pairing tracing spans with their associated otel `Context`. # Conflicts: # .github/workflows/check_msrv.yml # tracing-opentelemetry/Cargo.toml # tracing-opentelemetry/benches/trace.rs # tracing-opentelemetry/src/layer.rs # tracing-opentelemetry/src/span_ext.rs # tracing-opentelemetry/tests/trace_state_propagation.rs
## Motivation Support the latest OpenTelemetry specification. ## Solution Update `opentelemetry` to the latest `0.17.x` release. Breaking changes upstream in the tracking of parent contexts in otel's `SpanBuilder` have necessitated a new `OtelData` struct to continue pairing tracing spans with their associated otel `Context`. # Conflicts: # .github/workflows/check_msrv.yml # tracing-opentelemetry/Cargo.toml # tracing-opentelemetry/benches/trace.rs # tracing-opentelemetry/src/layer.rs # tracing-opentelemetry/src/span_ext.rs # tracing-opentelemetry/tests/trace_state_propagation.rs
## Motivation Support the latest OpenTelemetry specification. ## Solution Update `opentelemetry` to the latest `0.17.x` release. Breaking changes upstream in the tracking of parent contexts in otel's `SpanBuilder` have necessitated a new `OtelData` struct to continue pairing tracing spans with their associated otel `Context`. # Conflicts: # .github/workflows/check_msrv.yml # tracing-opentelemetry/Cargo.toml # tracing-opentelemetry/benches/trace.rs # tracing-opentelemetry/src/layer.rs # tracing-opentelemetry/src/span_ext.rs # tracing-opentelemetry/tests/trace_state_propagation.rs
Breaking changes in this release: - Upgrade to `v0.17.0` of `opentelemetry` (#1853) For list of breaking changes in OpenTelemetry, see the [v0.17.0 changelog](https://github.com/open-telemetry/opentelemetry-rust/blob/main/opentelemetry/CHANGELOG.md#v0170).
Breaking changes in this release: - Upgrade to `v0.17.0` of `opentelemetry` (#1853) For list of breaking changes in OpenTelemetry, see the [v0.17.0 changelog](https://github.com/open-telemetry/opentelemetry-rust/blob/main/opentelemetry/CHANGELOG.md#v0170).
Breaking changes in this release: - Upgrade to `v0.17.0` of `opentelemetry` (#1853) For list of breaking changes in OpenTelemetry, see the [v0.17.0 changelog](https://github.com/open-telemetry/opentelemetry-rust/blob/main/opentelemetry/CHANGELOG.md#v0170).
Breaking changes in this release: - Upgrade to `v0.17.0` of `opentelemetry` (#1853) For list of breaking changes in OpenTelemetry, see the [v0.17.0 changelog](https://github.com/open-telemetry/opentelemetry-rust/blob/main/opentelemetry/CHANGELOG.md#v0170).
Breaking changes in this release: - Upgrade to `v0.17.0` of `opentelemetry` (#1853) For list of breaking changes in OpenTelemetry, see the [v0.17.0 changelog](https://github.com/open-telemetry/opentelemetry-rust/blob/main/opentelemetry/CHANGELOG.md#v0170).
Breaking changes in this release: - Upgrade to `v0.17.0` of `opentelemetry` (#1853) For list of breaking changes in OpenTelemetry, see the [v0.17.0 changelog](https://github.com/open-telemetry/opentelemetry-rust/blob/main/opentelemetry/CHANGELOG.md#v0170).
## Motivation Support the latest OpenTelemetry specification. ## Solution Update `opentelemetry` to the latest `0.17.x` release. Breaking changes upstream in the tracking of parent contexts in otel's `SpanBuilder` have necessitated a new `OtelData` struct to continue pairing tracing spans with their associated otel `Context`. # Conflicts: # .github/workflows/check_msrv.yml # tracing-opentelemetry/Cargo.toml # tracing-opentelemetry/benches/trace.rs # tracing-opentelemetry/src/layer.rs # tracing-opentelemetry/src/span_ext.rs # tracing-opentelemetry/tests/trace_state_propagation.rs
Breaking changes in this release: - Upgrade to `v0.17.0` of `opentelemetry` (tokio-rs#1853) For list of breaking changes in OpenTelemetry, see the [v0.17.0 changelog](https://github.com/open-telemetry/opentelemetry-rust/blob/main/opentelemetry/CHANGELOG.md#v0170).
Motivation
Support the latest OpenTelemetry specification. Resolves #1857.
Solution
Update
opentelemetry
to the latest0.17.x
release. Breaking changes upstream in the tracking of parent contexts in otel'sSpanBuilder
have necessitated a newOtelData
struct to continue pairing tracing spans with their associated otelContext
.