Skip to content

Commit 3fd341a

Browse files
authored
chore: Prepare 0.29 release (open-telemetry#2844)
1 parent c22c974 commit 3fd341a

File tree

3 files changed

+75
-69
lines changed

3 files changed

+75
-69
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
## vNext
44

5+
## 0.29.0
6+
7+
Released 2025-Mar-21
8+
59
Fixes [1682](https://github.com/open-telemetry/opentelemetry-rust/issues/1682).
610
"spec_unstable_logs_enabled" feature now do not suppress logs for other layers.
711

@@ -53,6 +57,7 @@ of string.
5357
instead of previously reporting the user provided attribute "error".
5458
`error!(....error = &OTelSdkError::AlreadyShutdown as &dyn std::error::Error...)`
5559
- perf - small perf improvement by avoiding string allocation of `target`
60+
- Update `opentelemetry` dependency version to 0.29.
5661

5762
## 0.28.1
5863

Cargo.toml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ rust-version = "1.75.0"
1212

1313
[dependencies]
1414
log = { workspace = true, optional = true }
15-
opentelemetry = { version = "0.28", path = "../opentelemetry", features = ["logs"] }
15+
opentelemetry = { version = "0.29", path = "../opentelemetry", features = ["logs"] }
1616
tracing = { workspace = true, features = ["std"]}
1717
tracing-core = { workspace = true }
1818
tracing-log = { workspace = true, optional = true }
1919
tracing-subscriber = { workspace = true, features = ["registry", "std"] }
20-
tracing-opentelemetry = { workspace = true, optional = true }
20+
# tracing-opentelemetry = { workspace = true, optional = true }
2121

2222
[dev-dependencies]
2323
log = { workspace = true }
@@ -36,7 +36,8 @@ pprof = { version = "0.14", features = ["flamegraph", "criterion"] }
3636
default = []
3737
experimental_metadata_attributes = ["dep:tracing-log"]
3838
spec_unstable_logs_enabled = ["opentelemetry/spec_unstable_logs_enabled"]
39-
experimental_use_tracing_span_context = ["tracing-opentelemetry"]
39+
# TODO - Enable this in 0.29.1 (once tracing-opentelemetry v0.30 is released)
40+
# experimental_use_tracing_span_context = ["tracing-opentelemetry"]
4041

4142

4243
[[bench]]

src/layer.rs

Lines changed: 66 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -244,25 +244,25 @@ where
244244
// Visit fields.
245245
event.record(&mut visitor);
246246

247-
#[cfg(feature = "experimental_use_tracing_span_context")]
248-
if let Some(span) = _ctx.event_span(event) {
249-
use tracing_opentelemetry::OtelData;
250-
let opt_span_id = span
251-
.extensions()
252-
.get::<OtelData>()
253-
.and_then(|otd| otd.builder.span_id);
254-
255-
let opt_trace_id = span.scope().last().and_then(|root_span| {
256-
root_span
257-
.extensions()
258-
.get::<OtelData>()
259-
.and_then(|otd| otd.builder.trace_id)
260-
});
261-
262-
if let Some((trace_id, span_id)) = opt_trace_id.zip(opt_span_id) {
263-
log_record.set_trace_context(trace_id, span_id, None);
264-
}
265-
}
247+
// #[cfg(feature = "experimental_use_tracing_span_context")]
248+
// if let Some(span) = _ctx.event_span(event) {
249+
// use tracing_opentelemetry::OtelData;
250+
// let opt_span_id = span
251+
// .extensions()
252+
// .get::<OtelData>()
253+
// .and_then(|otd| otd.builder.span_id);
254+
255+
// let opt_trace_id = span.scope().last().and_then(|root_span| {
256+
// root_span
257+
// .extensions()
258+
// .get::<OtelData>()
259+
// .and_then(|otd| otd.builder.trace_id)
260+
// });
261+
262+
// if let Some((trace_id, span_id)) = opt_trace_id.zip(opt_span_id) {
263+
// log_record.set_trace_context(trace_id, span_id, None);
264+
// }
265+
// }
266266

267267
//emit record
268268
self.logger.emit(log_record);
@@ -673,66 +673,66 @@ mod tests {
673673
}
674674
}
675675

676-
#[cfg(feature = "experimental_use_tracing_span_context")]
677-
#[test]
678-
fn tracing_appender_inside_tracing_crate_context() {
679-
use opentelemetry_sdk::trace::InMemorySpanExporterBuilder;
676+
// #[cfg(feature = "experimental_use_tracing_span_context")]
677+
// #[test]
678+
// fn tracing_appender_inside_tracing_crate_context() {
679+
// use opentelemetry_sdk::trace::InMemorySpanExporterBuilder;
680680

681-
// Arrange
682-
let exporter: InMemoryLogExporter = InMemoryLogExporter::default();
683-
let logger_provider = SdkLoggerProvider::builder()
684-
.with_simple_exporter(exporter.clone())
685-
.build();
681+
// // Arrange
682+
// let exporter: InMemoryLogExporter = InMemoryLogExporter::default();
683+
// let logger_provider = SdkLoggerProvider::builder()
684+
// .with_simple_exporter(exporter.clone())
685+
// .build();
686686

687-
// setup tracing layer to compare trace/span IDs against
688-
let span_exporter = InMemorySpanExporterBuilder::new().build();
689-
let tracer_provider = SdkTracerProvider::builder()
690-
.with_simple_exporter(span_exporter.clone())
691-
.build();
692-
let tracer = tracer_provider.tracer("test-tracer");
687+
// // setup tracing layer to compare trace/span IDs against
688+
// let span_exporter = InMemorySpanExporterBuilder::new().build();
689+
// let tracer_provider = SdkTracerProvider::builder()
690+
// .with_simple_exporter(span_exporter.clone())
691+
// .build();
692+
// let tracer = tracer_provider.tracer("test-tracer");
693693

694-
let level_filter = tracing_subscriber::filter::LevelFilter::ERROR;
695-
let log_layer =
696-
layer::OpenTelemetryTracingBridge::new(&logger_provider).with_filter(level_filter);
694+
// let level_filter = tracing_subscriber::filter::LevelFilter::ERROR;
695+
// let log_layer =
696+
// layer::OpenTelemetryTracingBridge::new(&logger_provider).with_filter(level_filter);
697697

698-
let subscriber = tracing_subscriber::registry()
699-
.with(log_layer)
700-
.with(tracing_opentelemetry::layer().with_tracer(tracer));
698+
// let subscriber = tracing_subscriber::registry()
699+
// .with(log_layer)
700+
// .with(tracing_opentelemetry::layer().with_tracer(tracer));
701701

702-
// Avoiding global subscriber.init() as that does not play well with unit tests.
703-
let _guard = tracing::subscriber::set_default(subscriber);
702+
// // Avoiding global subscriber.init() as that does not play well with unit tests.
703+
// let _guard = tracing::subscriber::set_default(subscriber);
704704

705-
// Act
706-
tracing::error_span!("outer-span").in_scope(|| {
707-
error!("first-event");
705+
// // Act
706+
// tracing::error_span!("outer-span").in_scope(|| {
707+
// error!("first-event");
708708

709-
tracing::error_span!("inner-span").in_scope(|| {
710-
error!("second-event");
711-
});
712-
});
709+
// tracing::error_span!("inner-span").in_scope(|| {
710+
// error!("second-event");
711+
// });
712+
// });
713713

714-
assert!(logger_provider.force_flush().is_ok());
714+
// assert!(logger_provider.force_flush().is_ok());
715715

716-
let logs = exporter.get_emitted_logs().expect("No emitted logs");
717-
assert_eq!(logs.len(), 2, "Expected 2 logs, got: {logs:?}");
716+
// let logs = exporter.get_emitted_logs().expect("No emitted logs");
717+
// assert_eq!(logs.len(), 2, "Expected 2 logs, got: {logs:?}");
718718

719-
let spans = span_exporter.get_finished_spans().unwrap();
720-
assert_eq!(spans.len(), 2);
719+
// let spans = span_exporter.get_finished_spans().unwrap();
720+
// assert_eq!(spans.len(), 2);
721721

722-
let trace_id = spans[0].span_context.trace_id();
723-
assert_eq!(trace_id, spans[1].span_context.trace_id());
724-
let inner_span_id = spans[0].span_context.span_id();
725-
let outer_span_id = spans[1].span_context.span_id();
726-
assert_eq!(outer_span_id, spans[0].parent_span_id);
722+
// let trace_id = spans[0].span_context.trace_id();
723+
// assert_eq!(trace_id, spans[1].span_context.trace_id());
724+
// let inner_span_id = spans[0].span_context.span_id();
725+
// let outer_span_id = spans[1].span_context.span_id();
726+
// assert_eq!(outer_span_id, spans[0].parent_span_id);
727727

728-
let trace_ctx0 = logs[0].record.trace_context().unwrap();
729-
let trace_ctx1 = logs[1].record.trace_context().unwrap();
728+
// let trace_ctx0 = logs[0].record.trace_context().unwrap();
729+
// let trace_ctx1 = logs[1].record.trace_context().unwrap();
730730

731-
assert_eq!(trace_ctx0.trace_id, trace_id);
732-
assert_eq!(trace_ctx1.trace_id, trace_id);
733-
assert_eq!(trace_ctx0.span_id, outer_span_id);
734-
assert_eq!(trace_ctx1.span_id, inner_span_id);
735-
}
731+
// assert_eq!(trace_ctx0.trace_id, trace_id);
732+
// assert_eq!(trace_ctx1.trace_id, trace_id);
733+
// assert_eq!(trace_ctx0.span_id, outer_span_id);
734+
// assert_eq!(trace_ctx1.span_id, inner_span_id);
735+
// }
736736

737737
#[test]
738738
fn tracing_appender_standalone_with_tracing_log() {

0 commit comments

Comments
 (0)