diff --git a/CHANGELOG.md b/CHANGELOG.md index 9e86fed..38f19ad 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,10 +5,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Added + +- New `opentelemetry_sdk` dependency, which inherits the `rt-tokio` feature + +### Changed + +- Bump `opentelemetry` to 0.21 and remove the `rt-tokio` feature +- Bump `opentelemetry-otlp` to 0.14 +- Bump `tracing-opentelemetry` to 0.22 +- Move `rt-tokio-current-thread` to map to `["opentelemetry_sdk/rt-tokio-current-thread"]`, the tokio stuff has been moved to `opentelemetry_sdk` + --- ## [0.7.2] - 2023-10-26 +### Changed + - Bump `tracing-log` to 0.2 --- @@ -102,7 +115,6 @@ If you are using Jaeger to collect traces locally on your machine, you will need COLLECTOR_OTLP_HTTP_HOST_PORT: 55681 ``` - [Unreleased]: https://github.com/primait/prima_tracing.rs/compare/0.7.2...HEAD [0.7.2]: https://github.com/primait/prima_tracing.rs/compare/0.7.1...0.7.2 [0.7.1]: https://github.com/primait/prima_tracing.rs/compare/0.7.0...0.7.1 diff --git a/Cargo.toml b/Cargo.toml index 11f9cea..e2e2c08 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -23,7 +23,7 @@ traces = ["tracing-opentelemetry", "opentelemetry", "opentelemetry-otlp"] dev = ["traces"] live = ["json-logger", "datadog", "traces"] -rt-tokio-current-thread = ["opentelemetry/rt-tokio-current-thread"] +rt-tokio-current-thread = ["opentelemetry_sdk/rt-tokio-current-thread"] [[example]] name = "custom-json-subscriber" @@ -37,11 +37,12 @@ required-features = ["json-logger"] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -opentelemetry = {version = "0.20", features = ["rt-tokio"], optional = true} -opentelemetry-otlp = {version = "0.13", features = ["http-proto", "reqwest-client"], default-features = false, optional = true} +opentelemetry = {version = "0.21", optional = true} +opentelemetry-otlp = {version = "0.14", features = ["http-proto", "reqwest-client"], default-features = false, optional = true} +opentelemetry_sdk = {version = "0.21", features = ["rt-tokio"], optional = true} tracing = {version = "0.1", features = ["max_level_debug", "release_max_level_info"]} tracing-log = {version = "0.2"} -tracing-opentelemetry = {version = "0.21", optional = true} +tracing-opentelemetry = {version = "0.22", optional = true} tracing-subscriber = {version = "0.3", features = ["env-filter"]} # serialization/deserialization @@ -56,4 +57,4 @@ chrono = {version = "^0.4", default-features = false, features = ["serde", "cloc actix-web = "4.0.1" prima_bridge = "0.15" tokio = {version = "1.17", features = ["rt", "macros", "rt-multi-thread"]} -tracing-actix-web = {version = "0.7.0", features = ["opentelemetry_0_20"]} +tracing-actix-web = {version = "0.7.0", features = ["opentelemetry_0_21"]} diff --git a/src/subscriber.rs b/src/subscriber.rs index 5a7721f..c0f2902 100644 --- a/src/subscriber.rs +++ b/src/subscriber.rs @@ -58,7 +58,8 @@ pub fn init_subscriber(subscriber: impl Subscriber + Sync + Send) -> Uninstall { #[cfg(feature = "traces")] { - use opentelemetry::{global, sdk::propagation::TraceContextPropagator}; + use opentelemetry::global; + use opentelemetry_sdk::propagation::TraceContextPropagator; global::set_text_map_propagator(TraceContextPropagator::new()); }; Uninstall diff --git a/src/telemetry.rs b/src/telemetry.rs index dd76e6f..02b1dd7 100644 --- a/src/telemetry.rs +++ b/src/telemetry.rs @@ -1,11 +1,9 @@ -use opentelemetry::{ - sdk::{ - trace::{self, Tracer}, - Resource, - }, - KeyValue, -}; +use opentelemetry::KeyValue; use opentelemetry_otlp::WithExportConfig; +use opentelemetry_sdk::{ + trace::{self, Tracer}, + Resource, +}; use tracing::{span, Subscriber}; use tracing_opentelemetry::OtelData; use tracing_subscriber::{layer::Context, Layer}; @@ -21,11 +19,11 @@ pub fn configure(config: &SubscriberConfig) -> Tracer { let runtime = { #[cfg(feature = "rt-tokio-current-thread")] { - opentelemetry::runtime::TokioCurrentThread + opentelemetry_sdk::runtime::TokioCurrentThread } #[cfg(not(feature = "rt-tokio-current-thread"))] { - opentelemetry::runtime::Tokio + opentelemetry_sdk::runtime::Tokio } };