Skip to content

Commit a53a0d5

Browse files
committed
refactor: move trace::Config methods to provider Builder
making this more consistent with the other signal providers #2294
1 parent d477a29 commit a53a0d5

File tree

16 files changed

+114
-60
lines changed

16 files changed

+114
-60
lines changed

examples/tracing-jaeger/src/main.rs

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ use opentelemetry::{
55
KeyValue,
66
};
77
use opentelemetry_sdk::trace::TracerProvider;
8-
use opentelemetry_sdk::{runtime, trace as sdktrace, Resource};
8+
use opentelemetry_sdk::{runtime, Resource};
99
use opentelemetry_semantic_conventions::resource::SERVICE_NAME;
1010

1111
use std::error::Error;
@@ -17,12 +17,10 @@ fn init_tracer_provider() -> Result<opentelemetry_sdk::trace::TracerProvider, Tr
1717

1818
Ok(TracerProvider::builder()
1919
.with_batch_exporter(exporter, runtime::Tokio)
20-
.with_config(
21-
sdktrace::Config::default().with_resource(Resource::new(vec![KeyValue::new(
22-
SERVICE_NAME,
23-
"tracing-jaeger",
24-
)])),
25-
)
20+
.with_resource(Resource::new(vec![KeyValue::new(
21+
SERVICE_NAME,
22+
"tracing-jaeger",
23+
)]))
2624
.build())
2725
}
2826

opentelemetry-appender-tracing/src/layer.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,6 @@ mod tests {
217217
use opentelemetry_sdk::export::logs::{LogBatch, LogExporter};
218218
use opentelemetry_sdk::logs::{LogRecord, LogResult, LoggerProvider};
219219
use opentelemetry_sdk::testing::logs::InMemoryLogExporter;
220-
use opentelemetry_sdk::trace;
221220
use opentelemetry_sdk::trace::{Sampler, TracerProvider};
222221
use tracing::{error, warn};
223222
use tracing_subscriber::prelude::__tracing_subscriber_SubscriberExt;
@@ -402,7 +401,7 @@ mod tests {
402401

403402
// setup tracing as well.
404403
let tracer_provider = TracerProvider::builder()
405-
.with_config(trace::Config::default().with_sampler(Sampler::AlwaysOn))
404+
.with_sampler(Sampler::AlwaysOn)
406405
.build();
407406
let tracer = tracer_provider.tracer("test-tracer");
408407

@@ -579,7 +578,7 @@ mod tests {
579578

580579
// setup tracing as well.
581580
let tracer_provider = TracerProvider::builder()
582-
.with_config(trace::Config::default().with_sampler(Sampler::AlwaysOn))
581+
.with_sampler(Sampler::AlwaysOn)
583582
.build();
584583
let tracer = tracer_provider.tracer("test-tracer");
585584

opentelemetry-otlp/examples/basic-otlp-http/src/main.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ use opentelemetry_sdk::{
1212
logs::LoggerProvider,
1313
metrics::{MetricError, PeriodicReader, SdkMeterProvider},
1414
runtime,
15-
trace::{self as sdktrace, Config, TracerProvider},
15+
trace::{self as sdktrace, TracerProvider},
1616
};
1717
use opentelemetry_sdk::{
1818
logs::{self as sdklogs},
@@ -52,7 +52,7 @@ fn init_tracer_provider() -> Result<sdktrace::TracerProvider, TraceError> {
5252

5353
Ok(TracerProvider::builder()
5454
.with_batch_exporter(exporter, runtime::Tokio)
55-
.with_config(Config::default().with_resource(RESOURCE.clone()))
55+
.with_resource(RESOURCE.clone())
5656
.build())
5757
}
5858

opentelemetry-otlp/examples/basic-otlp/src/main.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ use opentelemetry_sdk::logs::LogError;
88
use opentelemetry_sdk::logs::LoggerProvider;
99
use opentelemetry_sdk::metrics::MetricError;
1010
use opentelemetry_sdk::metrics::{PeriodicReader, SdkMeterProvider};
11-
use opentelemetry_sdk::trace::Config;
1211
use opentelemetry_sdk::{runtime, trace as sdktrace, Resource};
1312
use std::error::Error;
1413
use tracing::info;
@@ -28,7 +27,7 @@ fn init_tracer_provider() -> Result<sdktrace::TracerProvider, TraceError> {
2827
.with_endpoint("http://localhost:4317")
2928
.build()?;
3029
Ok(sdktrace::TracerProvider::builder()
31-
.with_config(Config::default().with_resource(RESOURCE.clone()))
30+
.with_resource(RESOURCE.clone())
3231
.with_batch_exporter(exporter, runtime::Tokio)
3332
.build())
3433
}

opentelemetry-otlp/tests/integration_test/tests/traces.rs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,10 @@ fn init_tracer_provider() -> Result<sdktrace::TracerProvider, TraceError> {
2121
.build()?;
2222
Ok(opentelemetry_sdk::trace::TracerProvider::builder()
2323
.with_batch_exporter(exporter, runtime::Tokio)
24-
.with_config(
25-
sdktrace::Config::default().with_resource(Resource::new(vec![KeyValue::new(
26-
opentelemetry_semantic_conventions::resource::SERVICE_NAME,
27-
"basic-otlp-tracing-example",
28-
)])),
29-
)
24+
.with_resource(Resource::new(vec![KeyValue::new(
25+
opentelemetry_semantic_conventions::resource::SERVICE_NAME,
26+
"basic-otlp-tracing-example",
27+
)]))
3028
.build())
3129
}
3230

opentelemetry-sdk/benches/context.rs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ use opentelemetry::{
1010
};
1111
use opentelemetry_sdk::{
1212
export::trace::{ExportResult, SpanData, SpanExporter},
13-
trace,
1413
trace::{Sampler, TracerProvider},
1514
};
1615
#[cfg(not(target_os = "windows"))]
@@ -127,9 +126,7 @@ impl Display for Environment {
127126

128127
fn parent_sampled_tracer(inner_sampler: Sampler) -> (TracerProvider, BoxedTracer) {
129128
let provider = TracerProvider::builder()
130-
.with_config(
131-
trace::Config::default().with_sampler(Sampler::ParentBased(Box::new(inner_sampler))),
132-
)
129+
.with_sampler(Sampler::ParentBased(Box::new(inner_sampler)))
133130
.with_simple_exporter(NoopExporter)
134131
.build();
135132
let tracer = provider.tracer(module_path!());

opentelemetry-sdk/benches/log.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ use opentelemetry::trace::Tracer;
2525
use opentelemetry::trace::TracerProvider as _;
2626
use opentelemetry::{InstrumentationScope, Key};
2727
use opentelemetry_sdk::logs::{LogProcessor, LogRecord, LogResult, Logger, LoggerProvider};
28-
use opentelemetry_sdk::trace;
2928
use opentelemetry_sdk::trace::{Sampler, TracerProvider};
3029

3130
#[derive(Debug)]
@@ -65,7 +64,7 @@ fn log_benchmark_group<F: Fn(&Logger)>(c: &mut Criterion, name: &str, f: F) {
6564

6665
// setup tracing as well.
6766
let tracer_provider = TracerProvider::builder()
68-
.with_config(trace::Config::default().with_sampler(Sampler::AlwaysOn))
67+
.with_sampler(Sampler::AlwaysOn)
6968
.build();
7069
let tracer = tracer_provider.tracer("bench-tracer");
7170

opentelemetry-sdk/benches/span_builder.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ fn span_builder_benchmark_group(c: &mut Criterion) {
5454

5555
fn not_sampled_provider() -> (sdktrace::TracerProvider, sdktrace::Tracer) {
5656
let provider = sdktrace::TracerProvider::builder()
57-
.with_config(sdktrace::Config::default().with_sampler(sdktrace::Sampler::AlwaysOff))
57+
.with_sampler(sdktrace::Sampler::AlwaysOff)
5858
.with_simple_exporter(NoopExporter)
5959
.build();
6060
let tracer = provider.tracer("not-sampled");

opentelemetry-sdk/benches/trace.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ fn trace_benchmark_group<F: Fn(&sdktrace::Tracer)>(c: &mut Criterion, name: &str
7070

7171
group.bench_function("always-sample", |b| {
7272
let provider = sdktrace::TracerProvider::builder()
73-
.with_config(sdktrace::Config::default().with_sampler(sdktrace::Sampler::AlwaysOn))
73+
.with_sampler(sdktrace::Sampler::AlwaysOn)
7474
.with_simple_exporter(VoidExporter)
7575
.build();
7676
let always_sample = provider.tracer("always-sample");
@@ -80,7 +80,7 @@ fn trace_benchmark_group<F: Fn(&sdktrace::Tracer)>(c: &mut Criterion, name: &str
8080

8181
group.bench_function("never-sample", |b| {
8282
let provider = sdktrace::TracerProvider::builder()
83-
.with_config(sdktrace::Config::default().with_sampler(sdktrace::Sampler::AlwaysOff))
83+
.with_sampler(sdktrace::Sampler::AlwaysOff)
8484
.with_simple_exporter(VoidExporter)
8585
.build();
8686
let never_sample = provider.tracer("never-sample");

opentelemetry-sdk/src/resource/mod.rs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,14 @@ impl Resource {
9595
}
9696
}
9797

98+
/// Create a new `Resource::default()` and merge with provided key value pairs.
99+
///
100+
/// Values are de-duplicated by key, and the first key-value pair with a non-empty string value
101+
/// will be retained
102+
pub fn new_with_defaults<T: IntoIterator<Item = KeyValue>>(keys: T) -> Self {
103+
Resource::default().merge(&mut Resource::new(keys))
104+
}
105+
98106
/// Create a new `Resource` from a key value pairs and [schema url].
99107
///
100108
/// Values are de-duplicated by key, and the first key-value pair with a non-empty string value

0 commit comments

Comments
 (0)