diff --git a/opentelemetry-otlp/src/lib.rs b/opentelemetry-otlp/src/lib.rs index b57b5bda45..32d6f3b1f6 100644 --- a/opentelemetry-otlp/src/lib.rs +++ b/opentelemetry-otlp/src/lib.rs @@ -153,15 +153,12 @@ //! //! let tracer_provider = opentelemetry_sdk::trace::SdkTracerProvider::builder() //! .with_batch_exporter(exporter) -//! .with_config( -//! trace::Config::default() -//! .with_sampler(Sampler::AlwaysOn) -//! .with_id_generator(RandomIdGenerator::default()) -//! .with_max_events_per_span(64) -//! .with_max_attributes_per_span(16) -//! .with_max_events_per_span(16) -//! .with_resource(Resource::builder_empty().with_attributes([KeyValue::new("service.name", "example")]).build()), -//! ).build(); +//! .with_sampler(Sampler::AlwaysOn) +//! .with_id_generator(RandomIdGenerator::default()) +//! .with_max_events_per_span(64) +//! .with_max_attributes_per_span(16) +//! .with_resource(Resource::builder_empty().with_attributes([KeyValue::new("service.name", "example")]).build()) +//! .build(); //! global::set_tracer_provider(tracer_provider.clone()); //! let tracer = global::tracer("tracer-name"); //! # tracer diff --git a/opentelemetry-sdk/CHANGELOG.md b/opentelemetry-sdk/CHANGELOG.md index 37cd5c9c8a..c58304e727 100644 --- a/opentelemetry-sdk/CHANGELOG.md +++ b/opentelemetry-sdk/CHANGELOG.md @@ -74,6 +74,7 @@ - **Breaking** for custom `LogProcessor` authors: Changed `set_resource` to require mutable ref. `fn set_resource(&mut self, _resource: &Resource) {}` +- **Breaking** Removed deprecated functions and methods related to `trace::Config` ## 0.28.0 diff --git a/opentelemetry-sdk/src/lib.rs b/opentelemetry-sdk/src/lib.rs index 127f9e9094..fc684920b6 100644 --- a/opentelemetry-sdk/src/lib.rs +++ b/opentelemetry-sdk/src/lib.rs @@ -136,7 +136,6 @@ pub mod runtime; #[cfg_attr(docsrs, doc(cfg(any(feature = "testing", test))))] pub mod testing; -#[allow(deprecated)] #[cfg(feature = "trace")] #[cfg_attr(docsrs, doc(cfg(feature = "trace")))] pub mod trace; diff --git a/opentelemetry-sdk/src/trace/config.rs b/opentelemetry-sdk/src/trace/config.rs index 92b570d669..67db9509dc 100644 --- a/opentelemetry-sdk/src/trace/config.rs +++ b/opentelemetry-sdk/src/trace/config.rs @@ -9,12 +9,6 @@ use std::borrow::Cow; use std::env; use std::str::FromStr; -/// Default trace configuration -#[deprecated(since = "0.23.0", note = "Use Config::default() instead")] -pub fn config() -> Config { - Config::default() -} - /// Tracer configuration #[derive(Debug)] #[non_exhaustive] @@ -32,98 +26,6 @@ pub struct Config { pub resource: Cow<'static, Resource>, } -impl Config { - /// Specify the sampler to be used. - #[deprecated( - since = "0.27.1", - note = "Config is becoming private. Please use Builder::with_sampler(...) instead." - )] - pub fn with_sampler(mut self, sampler: T) -> Self { - self.sampler = Box::new(sampler); - self - } - - /// Specify the id generator to be used. - #[deprecated( - since = "0.27.1", - note = "Config is becoming private. Please use Builder::with_id_generator(...) instead." - )] - pub fn with_id_generator(mut self, id_generator: T) -> Self { - self.id_generator = Box::new(id_generator); - self - } - - /// Specify the maximum number of events that can be recorded per span. - #[deprecated( - since = "0.27.1", - note = "Config is becoming private. Please use Builder::with_max_events_per_span(...) instead." - )] - pub fn with_max_events_per_span(mut self, max_events: u32) -> Self { - self.span_limits.max_events_per_span = max_events; - self - } - - /// Specify the maximum number of attributes that can be recorded per span. - #[deprecated( - since = "0.27.1", - note = "Config is becoming private. Please use Builder::with_max_attributes_per_span(...) instead." - )] - pub fn with_max_attributes_per_span(mut self, max_attributes: u32) -> Self { - self.span_limits.max_attributes_per_span = max_attributes; - self - } - - /// Specify the maximum number of links that can be recorded per span. - #[deprecated( - since = "0.27.1", - note = "Config is becoming private. Please use Builder::with_max_links_per_span(...) instead." - )] - pub fn with_max_links_per_span(mut self, max_links: u32) -> Self { - self.span_limits.max_links_per_span = max_links; - self - } - - /// Specify the maximum number of attributes one event can have. - #[deprecated( - since = "0.27.1", - note = "Config is becoming private. Please use Builder::with_max_attributes_per_event(...) instead." - )] - pub fn with_max_attributes_per_event(mut self, max_attributes: u32) -> Self { - self.span_limits.max_attributes_per_event = max_attributes; - self - } - - /// Specify the maximum number of attributes one link can have. - #[deprecated( - since = "0.27.1", - note = "Config is becoming private. Please use Builder::with_max_attributes_per_link(...) instead." - )] - pub fn with_max_attributes_per_link(mut self, max_attributes: u32) -> Self { - self.span_limits.max_attributes_per_link = max_attributes; - self - } - - /// Specify all limit via the span_limits - #[deprecated( - since = "0.27.1", - note = "Config is becoming private. Please use Builder::with_span_limits(...) instead." - )] - pub fn with_span_limits(mut self, span_limits: SpanLimits) -> Self { - self.span_limits = span_limits; - self - } - - /// Specify the attributes representing the entity that produces telemetry - #[deprecated( - since = "0.27.1", - note = "Config is becoming private. Please use Builder::with_resource(...) instead." - )] - pub fn with_resource(mut self, resource: Resource) -> Self { - self.resource = Cow::Owned(resource); - self - } -} - impl Default for Config { /// Create default global sdk configuration. fn default() -> Self { diff --git a/opentelemetry-sdk/src/trace/mod.rs b/opentelemetry-sdk/src/trace/mod.rs index e9e1f82f8e..ad3a18543f 100644 --- a/opentelemetry-sdk/src/trace/mod.rs +++ b/opentelemetry-sdk/src/trace/mod.rs @@ -22,7 +22,7 @@ mod span_processor; pub mod span_processor_with_async_runtime; mod tracer; -pub use config::{config, Config}; +pub use config::Config; pub use error::{TraceError, TraceResult}; pub use events::SpanEvents; pub use export::{SpanData, SpanExporter}; diff --git a/opentelemetry-sdk/src/trace/provider.rs b/opentelemetry-sdk/src/trace/provider.rs index 6d0e01fe9a..2773b8778b 100644 --- a/opentelemetry-sdk/src/trace/provider.rs +++ b/opentelemetry-sdk/src/trace/provider.rs @@ -345,15 +345,6 @@ impl TracerProviderBuilder { TracerProviderBuilder { processors, ..self } } - /// The sdk [`crate::trace::Config`] that this provider will use. - #[deprecated( - since = "0.27.1", - note = "Config is becoming a private type. Use Builder::with_{config_name}(resource) instead. ex: Builder::with_resource(resource)" - )] - pub fn with_config(self, config: crate::trace::Config) -> Self { - TracerProviderBuilder { config, ..self } - } - /// Specify the sampler to be used. pub fn with_sampler(mut self, sampler: T) -> Self { self.config.sampler = Box::new(sampler); @@ -428,7 +419,7 @@ impl TracerProviderBuilder { // Now, we can update the config with the resource. if let Some(resource) = self.resource { - config = config.with_resource(resource); + config.resource = Cow::Owned(resource); }; // Standard config will contain an owned [`Resource`] (either sdk default or use supplied) diff --git a/opentelemetry-sdk/src/trace/sampler/jaeger_remote/sampler.rs b/opentelemetry-sdk/src/trace/sampler/jaeger_remote/sampler.rs index a24fb13b75..7f6ce1dde0 100644 --- a/opentelemetry-sdk/src/trace/sampler/jaeger_remote/sampler.rs +++ b/opentelemetry-sdk/src/trace/sampler/jaeger_remote/sampler.rs @@ -234,7 +234,7 @@ impl JaegerRemoteSampler { .unwrap(); let resp = client - .send(request) + .send_bytes(request) .await .map_err(|err| format!("the request is failed to send {}", err))?; diff --git a/opentelemetry-semantic-conventions/src/resource.rs b/opentelemetry-semantic-conventions/src/resource.rs index 6fd093e3da..ca297d6190 100644 --- a/opentelemetry-semantic-conventions/src/resource.rs +++ b/opentelemetry-semantic-conventions/src/resource.rs @@ -15,7 +15,7 @@ //! //! ```rust //! use opentelemetry::KeyValue; -//! use opentelemetry_sdk::{trace::{config, SdkTracerProvider}, Resource}; +//! use opentelemetry_sdk::{trace::SdkTracerProvider, Resource}; //! use opentelemetry_semantic_conventions as semconv; //! //! let _tracer = SdkTracerProvider::builder()