diff --git a/README.md b/README.md index 38098c1bbc..fbd0fe8c56 100644 --- a/README.md +++ b/README.md @@ -68,9 +68,9 @@ Project versioning information and stability guarantees can be found use opentelemetry::trace::{ TraceContextExt, Tracer, - TracerProvider as _, + TracerProvider, }; -use opentelemetry_sdk::trace::TracerProvider; +use opentelemetry_sdk::trace::SdkTracerProvider; fn main() { // Create a new trace pipeline that prints to stdout diff --git a/examples/tracing-grpc/src/client.rs b/examples/tracing-grpc/src/client.rs index 2247aa846f..727cdb3c5f 100644 --- a/examples/tracing-grpc/src/client.rs +++ b/examples/tracing-grpc/src/client.rs @@ -9,10 +9,10 @@ use opentelemetry::{ Context, KeyValue, }; -fn init_tracer() -> sdktrace::TracerProvider { +fn init_tracer() -> sdktrace::SdkTracerProvider { global::set_text_map_propagator(TraceContextPropagator::new()); // Install stdout exporter pipeline to be able to retrieve the collected spans. - let provider = sdktrace::TracerProvider::builder() + let provider = sdktrace::SdkTracerProvider::builder() .with_batch_exporter(SpanExporter::default()) .build(); diff --git a/examples/tracing-grpc/src/server.rs b/examples/tracing-grpc/src/server.rs index 13d10804ce..6e417f7369 100644 --- a/examples/tracing-grpc/src/server.rs +++ b/examples/tracing-grpc/src/server.rs @@ -5,14 +5,14 @@ use opentelemetry::{ propagation::Extractor, trace::{Span, SpanKind, Tracer}, }; -use opentelemetry_sdk::{propagation::TraceContextPropagator, trace::TracerProvider}; +use opentelemetry_sdk::{propagation::TraceContextPropagator, trace::SdkTracerProvider}; use opentelemetry_stdout::SpanExporter; use tonic::{transport::Server, Request, Response, Status}; -fn init_tracer() -> TracerProvider { +fn init_tracer() -> SdkTracerProvider { global::set_text_map_propagator(TraceContextPropagator::new()); // Install stdout exporter pipeline to be able to retrieve the collected spans. - let provider = TracerProvider::builder() + let provider = SdkTracerProvider::builder() .with_batch_exporter(SpanExporter::default()) .build(); diff --git a/examples/tracing-http-propagator/src/client.rs b/examples/tracing-http-propagator/src/client.rs index e0936fd46b..35d0b34be3 100644 --- a/examples/tracing-http-propagator/src/client.rs +++ b/examples/tracing-http-propagator/src/client.rs @@ -6,14 +6,14 @@ use opentelemetry::{ Context, KeyValue, }; use opentelemetry_http::{Bytes, HeaderInjector}; -use opentelemetry_sdk::{propagation::TraceContextPropagator, trace::TracerProvider}; +use opentelemetry_sdk::{propagation::TraceContextPropagator, trace::SdkTracerProvider}; use opentelemetry_stdout::SpanExporter; fn init_tracer() { global::set_text_map_propagator(TraceContextPropagator::new()); // Install stdout exporter pipeline to be able to retrieve the collected spans. // For the demonstration, use `Sampler::AlwaysOn` sampler to sample all traces. - let provider = TracerProvider::builder() + let provider = SdkTracerProvider::builder() .with_simple_exporter(SpanExporter::default()) .build(); diff --git a/examples/tracing-http-propagator/src/server.rs b/examples/tracing-http-propagator/src/server.rs index bbfa5556cb..bc38649196 100644 --- a/examples/tracing-http-propagator/src/server.rs +++ b/examples/tracing-http-propagator/src/server.rs @@ -7,7 +7,7 @@ use opentelemetry::{ Context, KeyValue, }; use opentelemetry_http::{Bytes, HeaderExtractor}; -use opentelemetry_sdk::{propagation::TraceContextPropagator, trace::TracerProvider}; +use opentelemetry_sdk::{propagation::TraceContextPropagator, trace::SdkTracerProvider}; use opentelemetry_semantic_conventions::trace; use opentelemetry_stdout::SpanExporter; use std::{convert::Infallible, net::SocketAddr}; @@ -93,7 +93,7 @@ fn init_tracer() { // Setup tracerprovider with stdout exporter // that prints the spans to stdout. - let provider = TracerProvider::builder() + let provider = SdkTracerProvider::builder() .with_simple_exporter(SpanExporter::default()) .build(); diff --git a/examples/tracing-jaeger/src/main.rs b/examples/tracing-jaeger/src/main.rs index f28eddec5e..a47ebfa5d8 100644 --- a/examples/tracing-jaeger/src/main.rs +++ b/examples/tracing-jaeger/src/main.rs @@ -3,17 +3,17 @@ use opentelemetry::{ trace::{TraceContextExt, TraceError, Tracer}, KeyValue, }; -use opentelemetry_sdk::trace::TracerProvider; +use opentelemetry_sdk::trace::SdkTracerProvider; use opentelemetry_sdk::Resource; use std::error::Error; -fn init_tracer_provider() -> Result { +fn init_tracer_provider() -> Result { let exporter = opentelemetry_otlp::SpanExporter::builder() .with_tonic() .build()?; - Ok(TracerProvider::builder() + Ok(SdkTracerProvider::builder() .with_batch_exporter(exporter) .with_resource( Resource::builder() diff --git a/opentelemetry-appender-tracing/src/layer.rs b/opentelemetry-appender-tracing/src/layer.rs index cf410f8226..b26f83d106 100644 --- a/opentelemetry-appender-tracing/src/layer.rs +++ b/opentelemetry-appender-tracing/src/layer.rs @@ -230,13 +230,13 @@ const fn severity_of_level(level: &Level) -> Severity { mod tests { use crate::layer; use opentelemetry::logs::Severity; - use opentelemetry::trace::TracerProvider as _; + use opentelemetry::trace::TracerProvider; use opentelemetry::trace::{TraceContextExt, TraceFlags, Tracer}; use opentelemetry::{logs::AnyValue, Key}; use opentelemetry_sdk::logs::InMemoryLogExporter; use opentelemetry_sdk::logs::{LogBatch, LogExporter}; use opentelemetry_sdk::logs::{LogRecord, LogResult, SdkLoggerProvider}; - use opentelemetry_sdk::trace::{Sampler, TracerProvider}; + use opentelemetry_sdk::trace::{Sampler, SdkTracerProvider}; use tracing::{error, warn}; use tracing_subscriber::prelude::__tracing_subscriber_SubscriberExt; use tracing_subscriber::util::SubscriberInitExt; @@ -424,7 +424,7 @@ mod tests { let _guard = tracing::subscriber::set_default(subscriber); // setup tracing as well. - let tracer_provider = TracerProvider::builder() + let tracer_provider = SdkTracerProvider::builder() .with_sampler(Sampler::AlwaysOn) .build(); let tracer = tracer_provider.tracer("test-tracer"); @@ -528,7 +528,7 @@ mod tests { // setup tracing layer to compare trace/span IDs against let span_exporter = InMemorySpanExporterBuilder::new().build(); - let tracer_provider = TracerProvider::builder() + let tracer_provider = SdkTracerProvider::builder() .with_simple_exporter(span_exporter.clone()) .build(); let tracer = tracer_provider.tracer("test-tracer"); @@ -657,7 +657,7 @@ mod tests { drop(tracing_log::LogTracer::init()); // setup tracing as well. - let tracer_provider = TracerProvider::builder() + let tracer_provider = SdkTracerProvider::builder() .with_sampler(Sampler::AlwaysOn) .build(); let tracer = tracer_provider.tracer("test-tracer"); diff --git a/opentelemetry-otlp/examples/basic-otlp-http/src/main.rs b/opentelemetry-otlp/examples/basic-otlp-http/src/main.rs index 38dc282234..557e679d9e 100644 --- a/opentelemetry-otlp/examples/basic-otlp-http/src/main.rs +++ b/opentelemetry-otlp/examples/basic-otlp-http/src/main.rs @@ -11,7 +11,7 @@ use opentelemetry_otlp::{LogExporter, MetricExporter, Protocol, SpanExporter}; use opentelemetry_sdk::{ logs::SdkLoggerProvider, metrics::{MetricError, SdkMeterProvider}, - trace::{self as sdktrace, TracerProvider}, + trace::{self as sdktrace, SdkTracerProvider}, }; use opentelemetry_sdk::{ logs::{self as sdklogs}, @@ -41,14 +41,14 @@ fn init_logs() -> Result Result { +fn init_traces() -> Result { let exporter = SpanExporter::builder() .with_http() .with_protocol(Protocol::HttpBinary) //can be changed to `Protocol::HttpJson` to export in JSON format .with_endpoint("http://localhost:4318/v1/traces") .build()?; - Ok(TracerProvider::builder() + Ok(SdkTracerProvider::builder() .with_batch_exporter(exporter) .with_resource(RESOURCE.clone()) .build()) diff --git a/opentelemetry-otlp/examples/basic-otlp/src/main.rs b/opentelemetry-otlp/examples/basic-otlp/src/main.rs index e453568caa..295e2c99d8 100644 --- a/opentelemetry-otlp/examples/basic-otlp/src/main.rs +++ b/opentelemetry-otlp/examples/basic-otlp/src/main.rs @@ -20,12 +20,12 @@ static RESOURCE: Lazy = Lazy::new(|| { .build() }); -fn init_traces() -> Result { +fn init_traces() -> Result { let exporter = SpanExporter::builder() .with_tonic() .with_endpoint("http://localhost:4317") .build()?; - Ok(sdktrace::TracerProvider::builder() + Ok(sdktrace::SdkTracerProvider::builder() .with_resource(RESOURCE.clone()) .with_batch_exporter(exporter) .build()) diff --git a/opentelemetry-otlp/src/lib.rs b/opentelemetry-otlp/src/lib.rs index 60b9d4c44c..43d79be5b5 100644 --- a/opentelemetry-otlp/src/lib.rs +++ b/opentelemetry-otlp/src/lib.rs @@ -39,7 +39,7 @@ //! // First, create a OTLP exporter builder. Configure it as you need. //! let otlp_exporter = opentelemetry_otlp::SpanExporter::builder().with_tonic().build()?; //! // Then pass it into provider builder -//! let _ = opentelemetry_sdk::trace::TracerProvider::builder() +//! let _ = opentelemetry_sdk::trace::SdkTracerProvider::builder() //! .with_simple_exporter(otlp_exporter) //! .build(); //! let tracer = global::tracer("my_tracer"); @@ -73,7 +73,7 @@ //! // First, create a OTLP exporter builder. Configure it as you need. //! let otlp_exporter = opentelemetry_otlp::SpanExporter::builder().with_tonic().build()?; //! // Then pass it into provider builder -//! let _ = opentelemetry_sdk::trace::TracerProvider::builder() +//! let _ = opentelemetry_sdk::trace::SdkTracerProvider::builder() //! .with_batch_exporter(otlp_exporter) //! .build(); //! let tracer = global::tracer("my_tracer"); @@ -123,7 +123,7 @@ //! Generally there are two parts of configuration. One is the exporter, the other is the provider. //! Users can configure the exporter using [SpanExporter::builder()] for traces, //! and [MetricExporter::builder()] + [opentelemetry_sdk::metrics::PeriodicReader::builder()] for metrics. -//! Once you have an exporter, you can add it to either a [opentelemetry_sdk::trace::TracerProvider::builder()] for traces, +//! Once you have an exporter, you can add it to either a [opentelemetry_sdk::trace::SdkTracerProvider::builder()] for traces, //! or [opentelemetry_sdk::metrics::SdkMeterProvider::builder()] for metrics. //! //! ```no_run @@ -151,7 +151,7 @@ //! .with_metadata(map) //! .build()?; //! -//! let tracer_provider = opentelemetry_sdk::trace::TracerProvider::builder() +//! let tracer_provider = opentelemetry_sdk::trace::SdkTracerProvider::builder() //! .with_batch_exporter(exporter) //! .with_config( //! trace::Config::default() diff --git a/opentelemetry-otlp/tests/integration_test/tests/traces.rs b/opentelemetry-otlp/tests/integration_test/tests/traces.rs index 65f42402e8..86bffd6e73 100644 --- a/opentelemetry-otlp/tests/integration_test/tests/traces.rs +++ b/opentelemetry-otlp/tests/integration_test/tests/traces.rs @@ -20,7 +20,7 @@ use std::os::unix::fs::MetadataExt; use std::time::Duration; use tokio::time::sleep; -fn init_tracer_provider() -> Result { +fn init_tracer_provider() -> Result { let exporter_builder = SpanExporter::builder(); #[cfg(feature = "tonic-client")] let exporter_builder = exporter_builder.with_tonic(); @@ -34,7 +34,7 @@ fn init_tracer_provider() -> Result { let exporter = exporter_builder.build()?; - Ok(opentelemetry_sdk::trace::TracerProvider::builder() + Ok(opentelemetry_sdk::trace::SdkTracerProvider::builder() .with_batch_exporter(exporter) .with_resource( Resource::builder_empty() diff --git a/opentelemetry-otlp/tests/smoke.rs b/opentelemetry-otlp/tests/smoke.rs index e9cd0da165..910bb281ac 100644 --- a/opentelemetry-otlp/tests/smoke.rs +++ b/opentelemetry-otlp/tests/smoke.rs @@ -83,7 +83,7 @@ async fn smoke_tracer() { println!("Installing tracer provider..."); let mut metadata = tonic::metadata::MetadataMap::new(); metadata.insert("x-header-key", "header-value".parse().unwrap()); - let tracer_provider = opentelemetry_sdk::trace::TracerProvider::builder() + let tracer_provider = opentelemetry_sdk::trace::SdkTracerProvider::builder() .with_batch_exporter( #[cfg(feature = "gzip-tonic")] opentelemetry_otlp::SpanExporter::builder() diff --git a/opentelemetry-sdk/CHANGELOG.md b/opentelemetry-sdk/CHANGELOG.md index 3667180f87..7cda112797 100644 --- a/opentelemetry-sdk/CHANGELOG.md +++ b/opentelemetry-sdk/CHANGELOG.md @@ -295,7 +295,7 @@ limit. `Logger::create_log_record()` method. - Rename `opentelemetry_sdk::logs::Builder` to `opentelemetry_sdk::logs::LoggerProviderBuilder`. -- Rename `opentelemetry_sdk::trace::Builder` to `opentelemetry_sdk::trace::TracerProviderBuilder`. +- Rename `opentelemetry_sdk::trace::Builder` to `opentelemetry_sdk::trace::SdkTracerProviderBuilder`. - *Breaking*: Rename namespaces for InMemoryExporters. (The module is still under "testing" feature flag) before: @@ -395,6 +395,11 @@ let processor = BatchSpanProcessor::builder(exporter) `SdkLogger` respectively to avoid name collision with public API types. [#2612](https://github.com/open-telemetry/opentelemetry-rust/pull/2612) +- **Breaking** Renamed `TracerProvider` and `Tracer` to `SdkTracerProvider` and + `SdkTracer` to avoid name collision with public API types. `Tracer` is still + type-aliased to `SdkTracer` to keep back-compat with tracing-opentelemetry. + [#2614](https://github.com/open-telemetry/opentelemetry-rust/pull/2614) + ## 0.27.1 Released 2024-Nov-27 diff --git a/opentelemetry-sdk/Cargo.toml b/opentelemetry-sdk/Cargo.toml index 56491c6ac2..cf3e14e836 100644 --- a/opentelemetry-sdk/Cargo.toml +++ b/opentelemetry-sdk/Cargo.toml @@ -42,7 +42,7 @@ temp-env = { workspace = true } pprof = { version = "0.14", features = ["flamegraph", "criterion"] } [features] -default = ["trace", "metrics", "logs", "internal-logs"] +default = ["trace", "metrics", "logs", "internal-logs", "experimental_trace_batch_span_processor_with_async_runtime", "experimental_async_runtime"] trace = ["opentelemetry/trace", "rand", "percent-encoding"] jaeger_remote_sampler = ["trace", "opentelemetry-http", "http", "serde", "serde_json", "url"] logs = ["opentelemetry/logs", "serde_json"] diff --git a/opentelemetry-sdk/benches/context.rs b/opentelemetry-sdk/benches/context.rs index 71cd341d12..2f43c23ac2 100644 --- a/opentelemetry-sdk/benches/context.rs +++ b/opentelemetry-sdk/benches/context.rs @@ -4,13 +4,13 @@ use opentelemetry::{ global::BoxedTracer, trace::{ noop::NoopTracer, SpanContext, SpanId, TraceContextExt, TraceFlags, TraceId, TraceState, - TracerProvider as _, + TracerProvider, }, Context, ContextGuard, }; use opentelemetry_sdk::{ error::OTelSdkResult, - trace::{Sampler, SpanData, SpanExporter, TracerProvider}, + trace::{Sampler, SdkTracerProvider, SpanData, SpanExporter}, }; #[cfg(not(target_os = "windows"))] use pprof::criterion::{Output, PProfProfiler}; @@ -94,7 +94,7 @@ impl Environment { } } - fn setup(&self) -> (Option, BoxedTracer, Option) { + fn setup(&self) -> (Option, BoxedTracer, Option) { match self { Environment::InContext => { let guard = Context::current() @@ -124,8 +124,8 @@ impl Display for Environment { } } -fn parent_sampled_tracer(inner_sampler: Sampler) -> (TracerProvider, BoxedTracer) { - let provider = TracerProvider::builder() +fn parent_sampled_tracer(inner_sampler: Sampler) -> (SdkTracerProvider, BoxedTracer) { + let provider = SdkTracerProvider::builder() .with_sampler(Sampler::ParentBased(Box::new(inner_sampler))) .with_simple_exporter(NoopExporter) .build(); diff --git a/opentelemetry-sdk/benches/log.rs b/opentelemetry-sdk/benches/log.rs index 83bc5f98a8..674eaba86b 100644 --- a/opentelemetry-sdk/benches/log.rs +++ b/opentelemetry-sdk/benches/log.rs @@ -22,10 +22,10 @@ use criterion::{criterion_group, criterion_main, Criterion}; use opentelemetry::logs::{AnyValue, LogRecord as _, Logger, LoggerProvider, Severity}; use opentelemetry::trace::Tracer; -use opentelemetry::trace::TracerProvider as _; +use opentelemetry::trace::TracerProvider; use opentelemetry::{InstrumentationScope, Key}; use opentelemetry_sdk::logs::{LogProcessor, LogRecord, LogResult, SdkLogger, SdkLoggerProvider}; -use opentelemetry_sdk::trace::{Sampler, TracerProvider}; +use opentelemetry_sdk::trace::{Sampler, SdkTracerProvider}; #[derive(Debug)] struct NoopProcessor; @@ -63,7 +63,7 @@ fn log_benchmark_group(c: &mut Criterion, name: &str, f: F) { let logger = provider.logger("with-context"); // setup tracing as well. - let tracer_provider = TracerProvider::builder() + let tracer_provider = SdkTracerProvider::builder() .with_sampler(Sampler::AlwaysOn) .build(); let tracer = tracer_provider.tracer("bench-tracer"); diff --git a/opentelemetry-sdk/benches/span_builder.rs b/opentelemetry-sdk/benches/span_builder.rs index 39d6735a17..e46fc7862f 100644 --- a/opentelemetry-sdk/benches/span_builder.rs +++ b/opentelemetry-sdk/benches/span_builder.rs @@ -53,8 +53,8 @@ fn span_builder_benchmark_group(c: &mut Criterion) { group.finish(); } -fn not_sampled_provider() -> (sdktrace::TracerProvider, sdktrace::Tracer) { - let provider = sdktrace::TracerProvider::builder() +fn not_sampled_provider() -> (sdktrace::SdkTracerProvider, sdktrace::SdkTracer) { + let provider = sdktrace::SdkTracerProvider::builder() .with_sampler(sdktrace::Sampler::AlwaysOff) .with_simple_exporter(NoopExporter) .build(); diff --git a/opentelemetry-sdk/benches/trace.rs b/opentelemetry-sdk/benches/trace.rs index 2581566e62..95f98541d9 100644 --- a/opentelemetry-sdk/benches/trace.rs +++ b/opentelemetry-sdk/benches/trace.rs @@ -65,11 +65,11 @@ impl SpanExporter for VoidExporter { } } -fn trace_benchmark_group(c: &mut Criterion, name: &str, f: F) { +fn trace_benchmark_group(c: &mut Criterion, name: &str, f: F) { let mut group = c.benchmark_group(name); group.bench_function("always-sample", |b| { - let provider = sdktrace::TracerProvider::builder() + let provider = sdktrace::SdkTracerProvider::builder() .with_sampler(sdktrace::Sampler::AlwaysOn) .with_simple_exporter(VoidExporter) .build(); @@ -79,7 +79,7 @@ fn trace_benchmark_group(c: &mut Criterion, name: &str }); group.bench_function("never-sample", |b| { - let provider = sdktrace::TracerProvider::builder() + let provider = sdktrace::SdkTracerProvider::builder() .with_sampler(sdktrace::Sampler::AlwaysOff) .with_simple_exporter(VoidExporter) .build(); diff --git a/opentelemetry-sdk/src/lib.rs b/opentelemetry-sdk/src/lib.rs index bc57acff9f..b51e8f8ea4 100644 --- a/opentelemetry-sdk/src/lib.rs +++ b/opentelemetry-sdk/src/lib.rs @@ -11,8 +11,8 @@ //! ```no_run //! # #[cfg(feature = "trace")] //! # { -//! use opentelemetry::{global, trace::{Tracer, TracerProvider as _}}; -//! use opentelemetry_sdk::trace::TracerProvider; +//! use opentelemetry::{global, trace::{Tracer, TracerProvider}}; +//! use opentelemetry_sdk::trace::SdkTracerProvider; //! //! fn main() { //! // Choose an exporter like `opentelemetry_stdout::SpanExporter` diff --git a/opentelemetry-sdk/src/logs/logger_provider.rs b/opentelemetry-sdk/src/logs/logger_provider.rs index c65613fcf4..31abe837e8 100644 --- a/opentelemetry-sdk/src/logs/logger_provider.rs +++ b/opentelemetry-sdk/src/logs/logger_provider.rs @@ -337,13 +337,13 @@ mod tests { resource::{ SERVICE_NAME, TELEMETRY_SDK_LANGUAGE, TELEMETRY_SDK_NAME, TELEMETRY_SDK_VERSION, }, - trace::TracerProvider, + trace::SdkTracerProvider, Resource, }; use super::*; use opentelemetry::logs::{AnyValue, LogRecord as _, Logger, LoggerProvider}; - use opentelemetry::trace::{SpanId, TraceId, Tracer as _, TracerProvider as _}; + use opentelemetry::trace::{SpanId, TraceId, Tracer as _, TracerProvider}; use opentelemetry::{Key, KeyValue, Value}; use std::fmt::{Debug, Formatter}; use std::sync::atomic::AtomicU64; @@ -520,7 +520,7 @@ mod tests { let logger = logger_provider.logger("test-logger"); - let tracer_provider = TracerProvider::builder().build(); + let tracer_provider = SdkTracerProvider::builder().build(); let tracer = tracer_provider.tracer("test-tracer"); diff --git a/opentelemetry-sdk/src/trace/mod.rs b/opentelemetry-sdk/src/trace/mod.rs index 948ce42588..81b2a843d6 100644 --- a/opentelemetry-sdk/src/trace/mod.rs +++ b/opentelemetry-sdk/src/trace/mod.rs @@ -2,10 +2,10 @@ //! //! The tracing SDK consist of a few main structs: //! -//! * The [`Tracer`] struct which performs all tracing operations. +//! * The [`SdkTracer`] struct which performs all tracing operations. //! * The [`Span`] struct with is a mutable object storing information about the //! current operation execution. -//! * The [`TracerProvider`] struct which configures and produces [`Tracer`]s. +//! * The [`SdkTracerProvider`] struct which configures and produces [`SdkTracer`]s. mod config; mod events; mod export; @@ -35,7 +35,7 @@ pub use in_memory_exporter::{InMemorySpanExporter, InMemorySpanExporterBuilder}; pub use id_generator::{IdGenerator, RandomIdGenerator}; pub use links::SpanLinks; -pub use provider::{TracerProvider, TracerProviderBuilder}; +pub use provider::{SdkTracerProvider, TracerProviderBuilder}; pub use sampler::{Sampler, ShouldSample}; pub use span::Span; pub use span_limit::SpanLimits; @@ -44,7 +44,8 @@ pub use span_processor::{ SimpleSpanProcessor, SpanProcessor, }; -pub use tracer::Tracer; +pub use tracer::SdkTracer; +pub use tracer::SdkTracer as Tracer; // for back-compat else tracing-opentelemetry won't build #[cfg(feature = "jaeger_remote_sampler")] pub use sampler::{JaegerRemoteSampler, JaegerRemoteSamplerBuilder}; @@ -68,7 +69,7 @@ mod tests { use opentelemetry::{ trace::{ Event, Link, Span, SpanBuilder, SpanContext, SpanId, TraceFlags, TraceId, Tracer, - TracerProvider as _, + TracerProvider, }, Context, KeyValue, }; @@ -77,7 +78,7 @@ mod tests { fn tracer_in_span() { // Arrange let exporter = InMemorySpanExporterBuilder::new().build(); - let provider = TracerProvider::builder() + let provider = SdkTracerProvider::builder() .with_span_processor(SimpleSpanProcessor::new(Box::new(exporter.clone()))) .build(); @@ -111,7 +112,7 @@ mod tests { fn tracer_start() { // Arrange let exporter = InMemorySpanExporterBuilder::new().build(); - let provider = TracerProvider::builder() + let provider = SdkTracerProvider::builder() .with_span_processor(SimpleSpanProcessor::new(Box::new(exporter.clone()))) .build(); @@ -147,7 +148,7 @@ mod tests { fn tracer_span_builder() { // Arrange let exporter = InMemorySpanExporterBuilder::new().build(); - let provider = TracerProvider::builder() + let provider = SdkTracerProvider::builder() .with_span_processor(SimpleSpanProcessor::new(Box::new(exporter.clone()))) .build(); @@ -183,7 +184,7 @@ mod tests { fn exceed_span_links_limit() { // Arrange let exporter = InMemorySpanExporterBuilder::new().build(); - let provider = TracerProvider::builder() + let provider = SdkTracerProvider::builder() .with_span_processor(SimpleSpanProcessor::new(Box::new(exporter.clone()))) .build(); @@ -219,7 +220,7 @@ mod tests { fn exceed_span_events_limit() { // Arrange let exporter = InMemorySpanExporterBuilder::new().build(); - let provider = TracerProvider::builder() + let provider = SdkTracerProvider::builder() .with_span_processor(SimpleSpanProcessor::new(Box::new(exporter.clone()))) .build(); @@ -254,7 +255,7 @@ mod tests { #[test] fn trace_state_for_dropped_sampler() { let exporter = InMemorySpanExporterBuilder::new().build(); - let provider = TracerProvider::builder() + let provider = SdkTracerProvider::builder() .with_sampler(Sampler::AlwaysOff) .with_span_processor(SimpleSpanProcessor::new(Box::new(exporter.clone()))) .build(); @@ -307,7 +308,7 @@ mod tests { #[test] fn trace_state_for_record_only_sampler() { let exporter = InMemorySpanExporterBuilder::new().build(); - let provider = TracerProvider::builder() + let provider = SdkTracerProvider::builder() .with_sampler(TestRecordOnlySampler::default()) .with_span_processor(SimpleSpanProcessor::new(Box::new(exporter.clone()))) .build(); @@ -341,7 +342,7 @@ mod tests { #[test] fn tracer_attributes() { - let provider = TracerProvider::builder().build(); + let provider = SdkTracerProvider::builder().build(); let scope = InstrumentationScope::builder("basic") .with_attributes(vec![KeyValue::new("test_k", "test_v")]) .build(); @@ -356,8 +357,8 @@ mod tests { #[tokio::test(flavor = "multi_thread", worker_threads = 1)] async fn empty_tracer_name_retained() { async fn tracer_name_retained_helper( - tracer: super::Tracer, - provider: TracerProvider, + tracer: super::SdkTracer, + provider: SdkTracerProvider, exporter: InMemorySpanExporter, ) { // Act @@ -380,7 +381,7 @@ mod tests { let exporter = InMemorySpanExporter::default(); let span_processor = SimpleSpanProcessor::new(Box::new(exporter.clone())); - let tracer_provider = TracerProvider::builder() + let tracer_provider = SdkTracerProvider::builder() .with_span_processor(span_processor) .build(); diff --git a/opentelemetry-sdk/src/trace/provider.rs b/opentelemetry-sdk/src/trace/provider.rs index 57d0fe5527..bda5e4b0c8 100644 --- a/opentelemetry-sdk/src/trace/provider.rs +++ b/opentelemetry-sdk/src/trace/provider.rs @@ -36,7 +36,7 @@ use crate::error::{OTelSdkError, OTelSdkResult}; /// /// ``` /// use opentelemetry::global; -/// use opentelemetry_sdk::trace::TracerProvider; +/// use opentelemetry_sdk::trace::SdkTracerProvider; /// use opentelemetry::trace::Tracer; /// /// fn init_tracing() -> TracerProvider { @@ -64,7 +64,8 @@ use crate::error::{OTelSdkError, OTelSdkResult}; /// } /// ``` use crate::trace::{ - BatchSpanProcessor, Config, RandomIdGenerator, Sampler, SimpleSpanProcessor, SpanLimits, Tracer, + BatchSpanProcessor, Config, RandomIdGenerator, Sampler, SdkTracer, SimpleSpanProcessor, + SpanLimits, }; use crate::Resource; use crate::{trace::SpanExporter, trace::SpanProcessor}; @@ -80,11 +81,11 @@ static PROVIDER_RESOURCE: OnceLock = OnceLock::new(); // a no nop tracer provider used as placeholder when the provider is shutdown // TODO Replace with LazyLock once it is stable -static NOOP_TRACER_PROVIDER: OnceLock = OnceLock::new(); +static NOOP_TRACER_PROVIDER: OnceLock = OnceLock::new(); #[inline] -fn noop_tracer_provider() -> &'static TracerProvider { +fn noop_tracer_provider() -> &'static SdkTracerProvider { NOOP_TRACER_PROVIDER.get_or_init(|| { - TracerProvider { + SdkTracerProvider { inner: Arc::new(TracerProviderInner { processors: Vec::new(), config: Config { @@ -142,7 +143,7 @@ impl Drop for TracerProviderInner { } } -/// Creator and registry of named [`Tracer`] instances. +/// Creator and registry of named [`SdkTracer`] instances. /// /// `TracerProvider` is a container holding pointers to `SpanProcessor` and other components. /// Cloning a `TracerProvider` instance and dropping it will not stop span processing. To stop span processing, users @@ -150,25 +151,25 @@ impl Drop for TracerProviderInner { /// to be dropped. When the last reference is dropped, the shutdown process will be automatically triggered /// to ensure proper cleanup. #[derive(Clone, Debug)] -pub struct TracerProvider { +pub struct SdkTracerProvider { inner: Arc, } -impl Default for TracerProvider { +impl Default for SdkTracerProvider { fn default() -> Self { - TracerProvider::builder().build() + SdkTracerProvider::builder().build() } } -impl TracerProvider { +impl SdkTracerProvider { /// Build a new tracer provider pub(crate) fn new(inner: TracerProviderInner) -> Self { - TracerProvider { + SdkTracerProvider { inner: Arc::new(inner), } } - /// Create a new [`TracerProvider`] builder. + /// Create a new [`SdkTracerProvider`] builder. pub fn builder() -> TracerProviderBuilder { TracerProviderBuilder::default() } @@ -195,7 +196,7 @@ impl TracerProvider { /// /// ``` /// use opentelemetry::global; - /// use opentelemetry_sdk::trace::TracerProvider; + /// use opentelemetry_sdk::trace::SdkTracerProvider; /// /// fn init_tracing() -> TracerProvider { /// let provider = TracerProvider::default(); @@ -264,9 +265,9 @@ impl TracerProvider { } } -impl opentelemetry::trace::TracerProvider for TracerProvider { +impl opentelemetry::trace::TracerProvider for SdkTracerProvider { /// This implementation of `TracerProvider` produces `Tracer` instances. - type Tracer = Tracer; + type Tracer = SdkTracer; fn tracer(&self, name: impl Into>) -> Self::Tracer { let scope = InstrumentationScope::builder(name).build(); @@ -275,12 +276,12 @@ impl opentelemetry::trace::TracerProvider for TracerProvider { fn tracer_with_scope(&self, scope: InstrumentationScope) -> Self::Tracer { if self.inner.is_shutdown.load(Ordering::Relaxed) { - return Tracer::new(scope, noop_tracer_provider().clone()); + return SdkTracer::new(scope, noop_tracer_provider().clone()); } if scope.name().is_empty() { otel_info!(name: "TracerNameEmpty", message = "Tracer name is empty; consider providing a meaningful name. Tracer will function normally and the provided name will be used as-is."); }; - Tracer::new(scope, self.clone()) + SdkTracer::new(scope, self.clone()) } } @@ -401,10 +402,10 @@ impl TracerProviderBuilder { self } - /// Associates a [Resource] with a [TracerProvider]. + /// Associates a [Resource] with a [SdkTracerProvider]. /// /// This [Resource] represents the entity producing telemetry and is associated - /// with all [Tracer]s the [TracerProvider] will create. + /// with all [Tracer]s the [SdkTracerProvider] will create. /// /// By default, if this option is not used, the default [Resource] will be used. /// @@ -417,7 +418,7 @@ impl TracerProviderBuilder { } /// Create a new provider from this configuration. - pub fn build(self) -> TracerProvider { + pub fn build(self) -> SdkTracerProvider { let mut config = self.config; // Standard config will contain an owned [`Resource`] (either sdk default or use supplied) @@ -445,7 +446,7 @@ impl TracerProviderBuilder { } let is_shutdown = AtomicBool::new(false); - TracerProvider::new(TracerProviderInner { + SdkTracerProvider::new(TracerProviderInner { processors, config, is_shutdown, @@ -543,7 +544,7 @@ mod tests { #[test] fn test_force_flush() { - let tracer_provider = super::TracerProvider::new(TracerProviderInner { + let tracer_provider = super::SdkTracerProvider::new(TracerProviderInner { processors: vec![ Box::from(TestSpanProcessor::new(true)), Box::from(TestSpanProcessor::new(false)), @@ -558,7 +559,7 @@ mod tests { #[test] fn test_tracer_provider_default_resource() { - let assert_resource = |provider: &super::TracerProvider, + let assert_resource = |provider: &super::SdkTracerProvider, resource_key: &'static str, expect: Option<&'static str>| { assert_eq!( @@ -570,7 +571,7 @@ mod tests { expect.map(|s| s.to_string()) ); }; - let assert_telemetry_resource = |provider: &super::TracerProvider| { + let assert_telemetry_resource = |provider: &super::SdkTracerProvider| { assert_eq!( provider .config() @@ -593,7 +594,7 @@ mod tests { // If users didn't provide a resource and there isn't a env var set. Use default one. temp_env::with_var_unset("OTEL_RESOURCE_ATTRIBUTES", || { - let default_config_provider = super::TracerProvider::builder().build(); + let default_config_provider = super::SdkTracerProvider::builder().build(); assert_resource( &default_config_provider, SERVICE_NAME, @@ -603,7 +604,7 @@ mod tests { }); // If user provided config, use that. - let custom_config_provider = super::TracerProvider::builder() + let custom_config_provider = super::SdkTracerProvider::builder() .with_resource( Resource::builder_empty() .with_service_name("test_service") @@ -618,7 +619,7 @@ mod tests { "OTEL_RESOURCE_ATTRIBUTES", Some("key1=value1, k2, k3=value2"), || { - let env_resource_provider = super::TracerProvider::builder().build(); + let env_resource_provider = super::SdkTracerProvider::builder().build(); assert_resource( &env_resource_provider, SERVICE_NAME, @@ -636,7 +637,7 @@ mod tests { "OTEL_RESOURCE_ATTRIBUTES", Some("my-custom-key=env-val,k2=value2"), || { - let user_provided_resource_config_provider = super::TracerProvider::builder() + let user_provided_resource_config_provider = super::SdkTracerProvider::builder() .with_resource( Resource::builder() .with_attributes([ @@ -678,7 +679,7 @@ mod tests { ); // If user provided a resource, it takes priority during collision. - let no_service_name = super::TracerProvider::builder() + let no_service_name = super::SdkTracerProvider::builder() .with_resource(Resource::empty()) .build(); @@ -689,7 +690,7 @@ mod tests { fn test_shutdown_noops() { let processor = TestSpanProcessor::new(false); let assert_handle = processor.assert_info(); - let tracer_provider = super::TracerProvider::new(TracerProviderInner { + let tracer_provider = super::SdkTracerProvider::new(TracerProviderInner { processors: vec![Box::from(processor)], config: Default::default(), is_shutdown: AtomicBool::new(false), @@ -704,7 +705,7 @@ mod tests { assert!(assert_handle.started_span_count(2)); - let shutdown = |tracer_provider: super::TracerProvider| { + let shutdown = |tracer_provider: super::SdkTracerProvider| { let _ = tracer_provider.shutdown(); // shutdown once }; @@ -773,10 +774,10 @@ mod tests { }); { - let tracer_provider1 = super::TracerProvider { + let tracer_provider1 = super::SdkTracerProvider { inner: shared_inner.clone(), }; - let tracer_provider2 = super::TracerProvider { + let tracer_provider2 = super::SdkTracerProvider { inner: shared_inner.clone(), }; @@ -812,10 +813,10 @@ mod tests { // Create a scope to test behavior when providers are dropped { - let tracer_provider1 = super::TracerProvider { + let tracer_provider1 = super::SdkTracerProvider { inner: shared_inner.clone(), }; - let tracer_provider2 = super::TracerProvider { + let tracer_provider2 = super::SdkTracerProvider { inner: shared_inner.clone(), }; diff --git a/opentelemetry-sdk/src/trace/runtime_tests.rs b/opentelemetry-sdk/src/trace/runtime_tests.rs index 4edf3d4b3a..30b837d628 100644 --- a/opentelemetry-sdk/src/trace/runtime_tests.rs +++ b/opentelemetry-sdk/src/trace/runtime_tests.rs @@ -47,21 +47,21 @@ impl SpanCountExporter { fn build_batch_tracer_provider( exporter: SpanCountExporter, runtime: R, -) -> crate::trace::TracerProvider { - use crate::trace::TracerProvider; +) -> crate::trace::SdkTracerProvider { + use crate::trace::SdkTracerProvider; let processor = crate::trace::span_processor_with_async_runtime::BatchSpanProcessor::builder( exporter, runtime, ) .build(); - TracerProvider::builder() + SdkTracerProvider::builder() .with_span_processor(processor) .build() } #[cfg(any(feature = "rt-tokio", feature = "rt-tokio-current-thread"))] -fn build_simple_tracer_provider(exporter: SpanCountExporter) -> crate::trace::TracerProvider { - use crate::trace::TracerProvider; - TracerProvider::builder() +fn build_simple_tracer_provider(exporter: SpanCountExporter) -> crate::trace::SdkTracerProvider { + use crate::trace::SdkTracerProvider; + SdkTracerProvider::builder() .with_simple_exporter(exporter) .build() } @@ -69,7 +69,7 @@ fn build_simple_tracer_provider(exporter: SpanCountExporter) -> crate::trace::Tr #[cfg(any(feature = "rt-tokio", feature = "rt-tokio-current-thread"))] async fn test_set_provider_in_tokio( runtime: R, -) -> (Arc, crate::trace::TracerProvider) { +) -> (Arc, crate::trace::SdkTracerProvider) { let exporter = SpanCountExporter::new(); let span_count = exporter.span_count.clone(); let tracer_provider = build_batch_tracer_provider(exporter, runtime); diff --git a/opentelemetry-sdk/src/trace/span.rs b/opentelemetry-sdk/src/trace/span.rs index db73ee305e..9cb8b88045 100644 --- a/opentelemetry-sdk/src/trace/span.rs +++ b/opentelemetry-sdk/src/trace/span.rs @@ -19,7 +19,7 @@ use std::time::SystemTime; pub struct Span { span_context: SpanContext, data: Option, - tracer: crate::trace::Tracer, + tracer: crate::trace::SdkTracer, span_limits: SpanLimits, } @@ -52,7 +52,7 @@ impl Span { pub(crate) fn new( span_context: SpanContext, data: Option, - tracer: crate::trace::Tracer, + tracer: crate::trace::SdkTracer, span_limit: SpanLimits, ) -> Self { Span { @@ -249,7 +249,7 @@ impl Drop for Span { fn build_export_data( data: SpanData, span_context: SpanContext, - tracer: &crate::trace::Tracer, + tracer: &crate::trace::SdkTracer, ) -> crate::trace::SpanData { crate::trace::SpanData { span_context, @@ -281,8 +281,8 @@ mod tests { use std::time::Duration; use std::vec; - fn init() -> (crate::trace::Tracer, SpanData) { - let provider = crate::trace::TracerProvider::default(); + fn init() -> (crate::trace::SdkTracer, SpanData) { + let provider = crate::trace::SdkTracerProvider::default(); let tracer = provider.tracer("opentelemetry"); let data = SpanData { parent_span_id: SpanId::from_u64(0), @@ -531,7 +531,7 @@ mod tests { fn exceed_span_attributes_limit() { let exporter = NoopSpanExporter::new(); let provider_builder = - crate::trace::TracerProvider::builder().with_simple_exporter(exporter); + crate::trace::SdkTracerProvider::builder().with_simple_exporter(exporter); let provider = provider_builder.build(); let tracer = provider.tracer("opentelemetry-test"); @@ -570,7 +570,7 @@ mod tests { fn exceed_event_attributes_limit() { let exporter = NoopSpanExporter::new(); let provider_builder = - crate::trace::TracerProvider::builder().with_simple_exporter(exporter); + crate::trace::SdkTracerProvider::builder().with_simple_exporter(exporter); let provider = provider_builder.build(); let tracer = provider.tracer("opentelemetry-test"); @@ -606,7 +606,7 @@ mod tests { fn exceed_link_attributes_limit() { let exporter = NoopSpanExporter::new(); let provider_builder = - crate::trace::TracerProvider::builder().with_simple_exporter(exporter); + crate::trace::SdkTracerProvider::builder().with_simple_exporter(exporter); let provider = provider_builder.build(); let tracer = provider.tracer("opentelemetry-test"); @@ -638,7 +638,7 @@ mod tests { fn exceed_span_links_limit() { let exporter = NoopSpanExporter::new(); let provider_builder = - crate::trace::TracerProvider::builder().with_simple_exporter(exporter); + crate::trace::SdkTracerProvider::builder().with_simple_exporter(exporter); let provider = provider_builder.build(); let tracer = provider.tracer("opentelemetry-test"); @@ -680,7 +680,7 @@ mod tests { fn exceed_span_events_limit() { let exporter = NoopSpanExporter::new(); let provider_builder = - crate::trace::TracerProvider::builder().with_simple_exporter(exporter); + crate::trace::SdkTracerProvider::builder().with_simple_exporter(exporter); let provider = provider_builder.build(); let tracer = provider.tracer("opentelemetry-test"); @@ -707,7 +707,7 @@ mod tests { #[test] fn test_span_exported_data() { - let provider = crate::trace::TracerProvider::builder() + let provider = crate::trace::SdkTracerProvider::builder() .with_simple_exporter(NoopSpanExporter::new()) .build(); let tracer = provider.tracer("test"); diff --git a/opentelemetry-sdk/src/trace/tracer.rs b/opentelemetry-sdk/src/trace/tracer.rs index b17dd37717..2dfc09e86d 100644 --- a/opentelemetry-sdk/src/trace/tracer.rs +++ b/opentelemetry-sdk/src/trace/tracer.rs @@ -8,7 +8,7 @@ //! //! Docs: use crate::trace::{ - provider::TracerProvider, + provider::SdkTracerProvider, span::{Span, SpanData}, IdGenerator, ShouldSample, SpanEvents, SpanLimits, SpanLinks, }; @@ -20,12 +20,12 @@ use std::fmt; /// `Tracer` implementation to create and manage spans #[derive(Clone)] -pub struct Tracer { +pub struct SdkTracer { scope: InstrumentationScope, - provider: TracerProvider, + provider: SdkTracerProvider, } -impl fmt::Debug for Tracer { +impl fmt::Debug for SdkTracer { /// Formats the `Tracer` using the given formatter. /// Omitting `provider` here is necessary to avoid cycles. fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { @@ -36,14 +36,14 @@ impl fmt::Debug for Tracer { } } -impl Tracer { +impl SdkTracer { /// Create a new tracer (used internally by `TracerProvider`s). - pub(crate) fn new(scope: InstrumentationScope, provider: TracerProvider) -> Self { - Tracer { scope, provider } + pub(crate) fn new(scope: InstrumentationScope, provider: SdkTracerProvider) -> Self { + SdkTracer { scope, provider } } /// TracerProvider associated with this tracer. - pub(crate) fn provider(&self) -> &TracerProvider { + pub(crate) fn provider(&self) -> &SdkTracerProvider { &self.provider } @@ -166,7 +166,7 @@ impl Tracer { } } -impl opentelemetry::trace::Tracer for Tracer { +impl opentelemetry::trace::Tracer for SdkTracer { /// This implementation of `Tracer` produces `sdk::Span` instances. type Span = Span; @@ -326,7 +326,7 @@ mod tests { fn allow_sampler_to_change_trace_state() { // Setup let sampler = TestSampler {}; - let tracer_provider = crate::trace::TracerProvider::builder() + let tracer_provider = crate::trace::SdkTracerProvider::builder() .with_sampler(sampler) .build(); let tracer = tracer_provider.tracer("test"); @@ -350,7 +350,7 @@ mod tests { #[test] fn drop_parent_based_children() { let sampler = Sampler::ParentBased(Box::new(Sampler::AlwaysOn)); - let tracer_provider = crate::trace::TracerProvider::builder() + let tracer_provider = crate::trace::SdkTracerProvider::builder() .with_sampler(sampler) .build(); @@ -364,7 +364,7 @@ mod tests { #[test] fn uses_current_context_for_builders_if_unset() { let sampler = Sampler::ParentBased(Box::new(Sampler::AlwaysOn)); - let tracer_provider = crate::trace::TracerProvider::builder() + let tracer_provider = crate::trace::SdkTracerProvider::builder() .with_sampler(sampler) .build(); let tracer = tracer_provider.tracer("test"); diff --git a/opentelemetry-stdout/examples/basic.rs b/opentelemetry-stdout/examples/basic.rs index f07b956b30..0f593c5600 100644 --- a/opentelemetry-stdout/examples/basic.rs +++ b/opentelemetry-stdout/examples/basic.rs @@ -10,7 +10,7 @@ use opentelemetry::trace::Tracer; use opentelemetry_sdk::metrics::{PeriodicReader, SdkMeterProvider}; #[cfg(feature = "trace")] -use opentelemetry_sdk::trace::TracerProvider; +use opentelemetry_sdk::trace::SdkTracerProvider; use opentelemetry_sdk::Resource; static RESOURCE: Lazy = Lazy::new(|| { @@ -20,9 +20,9 @@ static RESOURCE: Lazy = Lazy::new(|| { }); #[cfg(feature = "trace")] -fn init_trace() -> TracerProvider { +fn init_trace() -> SdkTracerProvider { let exporter = opentelemetry_stdout::SpanExporter::default(); - let provider = TracerProvider::builder() + let provider = SdkTracerProvider::builder() .with_simple_exporter(exporter) .with_resource(RESOURCE.clone()) .build(); diff --git a/opentelemetry-stdout/src/lib.rs b/opentelemetry-stdout/src/lib.rs index 6821ad8db4..ecaa990a48 100644 --- a/opentelemetry-stdout/src/lib.rs +++ b/opentelemetry-stdout/src/lib.rs @@ -17,11 +17,11 @@ //! # #[cfg(all(feature = "metrics", feature = "trace", feature = "logs"))] //! { //! use opentelemetry::metrics::MeterProvider; -//! use opentelemetry::trace::{Span, Tracer, TracerProvider as _}; +//! use opentelemetry::trace::{Span, Tracer, TracerProvider}; //! use opentelemetry::{Context, KeyValue}; //! //! use opentelemetry_sdk::metrics::{SdkMeterProvider, PeriodicReader}; -//! use opentelemetry_sdk::trace::TracerProvider; +//! use opentelemetry_sdk::trace::SdkTracerProvider; //! //! use opentelemetry_sdk::logs::LoggerProvider; //! diff --git a/opentelemetry-zipkin/examples/zipkin.rs b/opentelemetry-zipkin/examples/zipkin.rs index 0b29f828ca..c600264c0a 100644 --- a/opentelemetry-zipkin/examples/zipkin.rs +++ b/opentelemetry-zipkin/examples/zipkin.rs @@ -3,7 +3,7 @@ use opentelemetry::{ trace::{Span, TraceError, Tracer}, InstrumentationScope, KeyValue, }; -use opentelemetry_sdk::trace::TracerProvider; +use opentelemetry_sdk::trace::SdkTracerProvider; use opentelemetry_zipkin::ZipkinExporter; use std::thread; use std::time::Duration; @@ -15,12 +15,12 @@ fn bar() { span.end() } -fn init_traces() -> Result { +fn init_traces() -> Result { let exporter = ZipkinExporter::builder() .with_service_name("trace-demo") .build()?; - Ok(TracerProvider::builder() + Ok(SdkTracerProvider::builder() .with_simple_exporter(exporter) .build()) } diff --git a/opentelemetry-zipkin/src/lib.rs b/opentelemetry-zipkin/src/lib.rs index 30180a9060..a3d09f1021 100644 --- a/opentelemetry-zipkin/src/lib.rs +++ b/opentelemetry-zipkin/src/lib.rs @@ -23,7 +23,7 @@ //! ```no_run //! use opentelemetry::global; //! use opentelemetry::trace::{Tracer, TraceError}; -//! use opentelemetry_sdk::trace::TracerProvider; +//! use opentelemetry_sdk::trace::SdkTracerProvider; //! use opentelemetry_zipkin::ZipkinExporter; //! //! fn main() -> Result<(), TraceError> { diff --git a/stress/src/traces.rs b/stress/src/traces.rs index ca7803b429..312c4c2f5d 100644 --- a/stress/src/traces.rs +++ b/stress/src/traces.rs @@ -11,7 +11,7 @@ use lazy_static::lazy_static; use opentelemetry::{ - trace::{Span, SpanBuilder, TraceResult, Tracer, TracerProvider as _}, + trace::{Span, SpanBuilder, TraceResult, Tracer, TracerProvider}, Context, KeyValue, }; use opentelemetry_sdk::{ @@ -22,11 +22,11 @@ use opentelemetry_sdk::{ mod throughput; lazy_static! { - static ref PROVIDER: sdktrace::TracerProvider = sdktrace::TracerProvider::builder() + static ref PROVIDER: sdktrace::SdkTracerProvider = sdktrace::SdkTracerProvider::builder() .with_sampler(sdktrace::Sampler::AlwaysOn) .with_span_processor(NoOpSpanProcessor {}) .build(); - static ref TRACER: sdktrace::Tracer = PROVIDER.tracer("stress"); + static ref TRACER: sdktrace::SdkTracer = PROVIDER.tracer("stress"); } #[derive(Debug)]