opentelemetry: Update otel to 0.17.0
## Motivation

Support the latest OpenTelemetry specification. Resolves #1857.

## Solution

Update `opentelemetry` to the latest `0.17.x` release. Breaking changes upstream in the tracking of parent contexts in otel's `SpanBuilder` have necessitated a new `OtelData` struct to continue pairing tracing spans with their associated otel `Context`.
## Feature Request

### Crates

`tracing-opentelemetry`

### Motivation

`opentelemetry` 0.17 is released, and it's nice to align the version numbers so that the types are compatible and structs can be passed between crates.

### Proposal

Make a new release of `tracing-opentelemetry` that depends on `opentelemetry` 0.17.

### Alternatives

Not that I can think of.

opentelemetry 0.17 support
diff --git a/.github/workflows/check_msrv.yml b/.github/workflows/check_msrv.yml
index c94e60b170..155b28a717 100644
--- a/.github/workflows/check_msrv.yml
+++ b/.github/workflows/check_msrv.yml
@@ -43,7 +43,7 @@ jobs:
       uses: actions-rs/cargo@v1
       with:
         command: check
-        args: --all --exclude=tracing-appender
+        args: --all --exclude=tracing-appender --exclude=tracing-opentelemetry
 
   # TODO: remove this once tracing's MSRV is bumped.
   check-msrv-appender:
@@ -61,3 +61,20 @@ jobs:
       with:
         command: check
         args: --lib=tracing-appender
+
+  # TODO: remove this once tracing's MSRV is bumped.
+  check-msrv-opentelemetry:
+    # Run `cargo check` on our minimum supported Rust version (1.46.0).
+    runs-on: ubuntu-latest
+    steps:
+    - uses: actions/checkout@main
+    - uses: actions-rs/toolchain@v1
+      with:
+        toolchain: 1.46.0
+        profile: minimal
+        override: true
+    - name: Check
+      uses: actions-rs/cargo@v1
+      with:
+        command: check
+        args: --package=tracing-opentelemetry
diff --git a/examples/Cargo.toml b/examples/Cargo.toml
index 30c431ae6d..83709f8f92 100644
--- a/examples/Cargo.toml
+++ b/examples/Cargo.toml
@@ -52,8 +52,8 @@ inferno = "0.10.0"
 tempfile = "3"
 
 # opentelemetry example
-opentelemetry = { version = "0.16", default-features = false, features = ["trace"] }
-opentelemetry-jaeger = "0.15"
+opentelemetry = { version = "0.17", default-features = false, features = ["trace"] }
+opentelemetry-jaeger = "0.16"
 
 # fmt examples
 snafu = "0.6.10"
diff --git a/tracing-opentelemetry/Cargo.toml b/tracing-opentelemetry/Cargo.toml
index ddbbba95c3..9b1ade1f25 100644
--- a/tracing-opentelemetry/Cargo.toml
+++ b/tracing-opentelemetry/Cargo.toml
@@ -17,13 +17,13 @@ categories = [
 keywords = ["tracing", "opentelemetry", "jaeger", "zipkin", "async"]
 license = "MIT"
 edition = "2018"
-rust-version = "1.42.0"
+rust-version = "1.46.0"
 
 [features]
 default = ["tracing-log"]
 
 [dependencies]
-opentelemetry = { version = "0.16", default-features = false, features = ["trace"] }
+opentelemetry = { version = "0.17", default-features = false, features = ["trace"] }
 tracing = { path = "../tracing", version = "0.2", default-features = false, features = ["std"] }
 tracing-core = { path = "../tracing-core", version = "0.2" }
 tracing-subscriber = { path = "../tracing-subscriber", version = "0.3", default-features = false, features = ["registry", "std"] }
@@ -32,7 +32,7 @@ tracing-log = { path = "../tracing-log", version = "0.2", default-features = fal
 [dev-dependencies]
 async-trait = "0.1"
 criterion = { version = "0.3", default_features = false }
-opentelemetry-jaeger = "0.15"
+opentelemetry-jaeger = "0.16"
 
 [lib]
 bench = false
diff --git a/tracing-opentelemetry/README.md b/tracing-opentelemetry/README.md
index b39c4bff19..4ea5f9c7fb 100644
--- a/tracing-opentelemetry/README.md
+++ b/tracing-opentelemetry/README.md
@@ -103,9 +103,9 @@ $ firefox http://localhost:16686/
 
 ## Supported Rust Versions
 
-Tracing is built against the latest stable release. The minimum supported
-version is 1.42. The current Tracing version is not guaranteed to build on Rust
-versions earlier than the minimum supported version.
+Tracing Opentelemetry is built against the latest stable release. The minimum
+supported version is 1.46. The current Tracing version is not guaranteed to
+build on Rust versions earlier than the minimum supported version.
 
 Tracing follows the same compiler support policies as the rest of the Tokio
 project. The current stable Rust compiler and the three most recent minor
diff --git a/tracing-opentelemetry/benches/trace.rs b/tracing-opentelemetry/benches/trace.rs
index 3a578b59cc..33e8ca7e9c 100644
--- a/tracing-opentelemetry/benches/trace.rs
+++ b/tracing-opentelemetry/benches/trace.rs
@@ -13,11 +13,11 @@ fn many_children(c: &mut Criterion) {
 
     group.bench_function("spec_baseline", |b| {
         let provider = TracerProvider::default();
-        let tracer = provider.tracer("bench", None);
+        let tracer = provider.tracer("bench");
         b.iter(|| {
             fn dummy(tracer: &Tracer, cx: &Context) {
                 for _ in 0..99 {
-                    tracer.start_with_context("child", cx.clone());
+                    tracer.start_with_context("child", cx);
                 }
             }
 
@@ -41,7 +41,7 @@ fn many_children(c: &mut Criterion) {
 
     {
         let provider = TracerProvider::default();
-        let tracer = provider.tracer("bench", None);
+        let tracer = provider.tracer("bench");
         let otel_layer = tracing_opentelemetry::subscriber()
             .with_tracer(tracer)
             .with_tracked_inactivity(false);
@@ -96,8 +96,7 @@ where
         let span = ctx.span(id).expect("Span not found, this is a bug");
         let mut extensions = span.extensions_mut();
         extensions.insert(
-            SpanBuilder::from_name(attrs.metadata().name().to_string())
-                .with_start_time(SystemTime::now()),
+            SpanBuilder::from_name(attrs.metadata().name()).with_start_time(SystemTime::now()),
         );
     }
 
diff --git a/tracing-opentelemetry/src/lib.rs b/tracing-opentelemetry/src/lib.rs
index d3bd7723c0..d23f63af65 100644
--- a/tracing-opentelemetry/src/lib.rs
+++ b/tracing-opentelemetry/src/lib.rs
@@ -109,3 +109,15 @@ mod tracer;
 pub use span_ext::OpenTelemetrySpanExt;
 pub use subscriber::{subscriber, OpenTelemetrySubscriber};
 pub use tracer::PreSampledTracer;
+
+/// Per-span OpenTelemetry data tracked by this crate.
+///
+/// Useful for implementing [PreSampledTracer] in alternate otel SDKs.
+#[derive(Debug, Clone)]
+pub struct OtelData {
+    /// The parent otel `Context` for the current tracing span.
+    pub parent_cx: opentelemetry::Context,
+
+    /// The otel span data recorded during the current tracing span.
+    pub builder: opentelemetry::trace::SpanBuilder,
+}
diff --git a/tracing-opentelemetry/src/span_ext.rs b/tracing-opentelemetry/src/span_ext.rs
index 95b8415be0..78fbef6600 100644
--- a/tracing-opentelemetry/src/span_ext.rs
+++ b/tracing-opentelemetry/src/span_ext.rs
@@ -121,9 +121,9 @@ impl OpenTelemetrySpanExt for tracing::Span {
         let mut cx = Some(cx);
         self.with_collector(move |(id, collector)| {
             if let Some(get_context) = collector.downcast_ref::<WithContext>() {
-                get_context.with_context(collector, id, move |builder, _tracer| {
+                get_context.with_context(collector, id, move |data, _tracer| {
                     if let Some(cx) = cx.take() {
-                        builder.parent_context = cx;
+                        data.parent_cx = cx;
                     }
                 });
             }
@@ -140,11 +140,11 @@ impl OpenTelemetrySpanExt for tracing::Span {
             let mut att = Some(attributes);
             self.with_collector(move |(id, collector)| {
                 if let Some(get_context) = collector.downcast_ref::<WithContext>() {
-                    get_context.with_context(collector, id, move |builder, _tracer| {
+                    get_context.with_context(collector, id, move |data, _tracer| {
                         if let Some(cx) = cx.take() {
                             let attr = att.take().unwrap_or_default();
                             let follows_link = opentelemetry::trace::Link::new(cx, attr);
-                            builder
+                            data.builder
                                 .links
                                 .get_or_insert_with(|| Vec::with_capacity(1))
                                 .push(follows_link);
diff --git a/tracing-opentelemetry/src/subscriber.rs b/tracing-opentelemetry/src/subscriber.rs
index 06453f843f..67257f7f5d 100644
--- a/tracing-opentelemetry/src/subscriber.rs
+++ b/tracing-opentelemetry/src/subscriber.rs
@@ -1,4 +1,4 @@
-use crate::PreSampledTracer;
+use crate::{OtelData, PreSampledTracer};
 use opentelemetry::{
     trace::{self as otel, noop, TraceContextExt},
     Context as OtelContext, Key, KeyValue,
@@ -69,11 +69,7 @@ where
 //
 // See https://github.com/tokio-rs/tracing/blob/4dad420ee1d4607bad79270c1520673fa6266a3d/tracing-error/src/layer.rs
 pub(crate) struct WithContext(
-    fn(
-        &tracing::Dispatch,
-        &span::Id,
-        f: &mut dyn FnMut(&mut otel::SpanBuilder, &dyn PreSampledTracer),
-    ),
+    fn(&tracing::Dispatch, &span::Id, f: &mut dyn FnMut(&mut OtelData, &dyn PreSampledTracer)),
 );
 
 impl WithContext {
@@ -83,7 +79,7 @@ impl WithContext {
         &self,
         dispatch: &'a tracing::Dispatch,
         id: &span::Id,
-        mut f: impl FnMut(&mut otel::SpanBuilder, &dyn PreSampledTracer),
+        mut f: impl FnMut(&mut OtelData, &dyn PreSampledTracer),
     ) {
         (self.0)(dispatch, id, &mut f)
     }
@@ -360,7 +356,7 @@ where
             let span = ctx.span(parent).expect("Span not found, this is a bug");
             let mut extensions = span.extensions_mut();
             extensions
-                .get_mut::<otel::SpanBuilder>()
+                .get_mut::<OtelData>()
                 .map(|builder| self.tracer.sampled_context(builder))
                 .unwrap_or_default()
         // Else if the span is inferred from context, look up any available current span.
@@ -369,7 +365,7 @@ where
                 .and_then(|span| {
                     let mut extensions = span.extensions_mut();
                     extensions
-                        .get_mut::<otel::SpanBuilder>()
+                        .get_mut::<OtelData>()
                         .map(|builder| self.tracer.sampled_context(builder))
                 })
                 .unwrap_or_else(OtelContext::current)
@@ -382,7 +378,7 @@ where
     fn get_context(
         dispatch: &tracing::Dispatch,
         id: &span::Id,
-        f: &mut dyn FnMut(&mut otel::SpanBuilder, &dyn PreSampledTracer),
+        f: &mut dyn FnMut(&mut OtelData, &dyn PreSampledTracer),
     ) {
         let subscriber = dispatch
             .downcast_ref::<C>()
@@ -395,7 +391,7 @@ where
             .expect("subscriber should downcast to expected type; this is a bug!");
 
         let mut extensions = span.extensions_mut();
-        if let Some(builder) = extensions.get_mut::<otel::SpanBuilder>() {
+        if let Some(builder) = extensions.get_mut::<OtelData>() {
             f(builder, &subscriber.tracer);
         }
     }
@@ -418,16 +414,16 @@ where
             extensions.insert(Timings::new());
         }
 
+        let parent_cx = self.parent_context(attrs, &ctx);
         let mut builder = self
             .tracer
             .span_builder(attrs.metadata().name())
             .with_start_time(SystemTime::now())
-            .with_parent_context(self.parent_context(attrs, &ctx))
             // Eagerly assign span id so children have stable parent id
             .with_span_id(self.tracer.new_span_id());
 
         // Record new trace id if there is no active parent span
-        if !builder.parent_context.has_active_span() {
+        if !parent_cx.has_active_span() {
             builder.trace_id = Some(self.tracer.new_trace_id());
         }
 
@@ -450,7 +446,7 @@ where
         }
 
         attrs.record(&mut SpanAttributeVisitor(&mut builder));
-        extensions.insert(builder);
+        extensions.insert(OtelData { builder, parent_cx });
     }
 
     fn on_enter(&self, id: &span::Id, ctx: Context<'_, C>) {
@@ -489,37 +485,37 @@ where
     fn on_record(&self, id: &Id, values: &Record<'_>, ctx: Context<'_, C>) {
         let span = ctx.span(id).expect("Span not found, this is a bug");
         let mut extensions = span.extensions_mut();
-        if let Some(builder) = extensions.get_mut::<otel::SpanBuilder>() {
-            values.record(&mut SpanAttributeVisitor(builder));
+        if let Some(data) = extensions.get_mut::<OtelData>() {
+            values.record(&mut SpanAttributeVisitor(&mut data.builder));
         }
     }
 
     fn on_follows_from(&self, id: &Id, follows: &Id, ctx: Context<C>) {
         let span = ctx.span(id).expect("Span not found, this is a bug");
         let mut extensions = span.extensions_mut();
-        let builder = extensions
-            .get_mut::<otel::SpanBuilder>()
-            .expect("Missing SpanBuilder span extensions");
+        let data = extensions
+            .get_mut::<OtelData>()
+            .expect("Missing otel data span extensions");
 
         let follows_span = ctx
             .span(follows)
             .expect("Span to follow not found, this is a bug");
         let mut follows_extensions = follows_span.extensions_mut();
-        let follows_builder = follows_extensions
-            .get_mut::<otel::SpanBuilder>()
-            .expect("Missing SpanBuilder span extensions");
+        let follows_data = follows_extensions
+            .get_mut::<OtelData>()
+            .expect("Missing otel data span extensions");
 
         let follows_context = self
             .tracer
-            .sampled_context(follows_builder)
+            .sampled_context(follows_data)
             .span()
             .span_context()
             .clone();
         let follows_link = otel::Link::new(follows_context, Vec::new());
-        if let Some(ref mut links) = builder.links {
+        if let Some(ref mut links) = data.builder.links {
             links.push(follows_link);
         } else {
-            builder.links = Some(vec![follows_link]);
+            data.builder.links = Some(vec![follows_link]);
         }
     }
 
@@ -554,7 +550,7 @@ where
             event.record(&mut SpanEventVisitor(&mut otel_event));
 
             let mut extensions = span.extensions_mut();
-            if let Some(builder) = extensions.get_mut::<otel::SpanBuilder>() {
+            if let Some(OtelData { builder, .. }) = extensions.get_mut::<OtelData>() {
                 if builder.status_code.is_none() && *meta.level() == tracing_core::Level::ERROR {
                     builder.status_code = Some(otel::StatusCode::Error);
                 }
@@ -575,7 +571,11 @@ where
         let span = ctx.span(&id).expect("Span not found, this is a bug");
         let mut extensions = span.extensions_mut();
 
-        if let Some(mut builder) = extensions.remove::<otel::SpanBuilder>() {
+        if let Some(OtelData {
+            mut builder,
+            parent_cx,
+        }) = extensions.remove::<OtelData>()
+        {
             if self.tracked_inactivity {
                 // Append busy/idle timings when enabled.
                 if let Some(timings) = extensions.get_mut::<Timings>() {
@@ -592,7 +592,9 @@ where
             }
 
             // Assign end time, build and start span, drop span to export
-            builder.with_end_time(SystemTime::now()).start(&self.tracer);
+            builder
+                .with_end_time(SystemTime::now())
+                .start_with_context(&self.tracer, &parent_cx);
         }
     }
 
@@ -628,6 +630,7 @@ impl Timings {
 #[cfg(test)]
 mod tests {
     use super::*;
+    use crate::OtelData;
     use opentelemetry::trace::{noop, SpanKind, TraceFlags};
     use std::borrow::Cow;
     use std::sync::{Arc, Mutex};
@@ -635,17 +638,14 @@ mod tests {
     use tracing_subscriber::prelude::*;
 
     #[derive(Debug, Clone)]
-    struct TestTracer(Arc<Mutex<Option<otel::SpanBuilder>>>);
+    struct TestTracer(Arc<Mutex<Option<OtelData>>>);
     impl otel::Tracer for TestTracer {
         type Span = noop::NoopSpan;
-        fn invalid(&self) -> Self::Span {
-            noop::NoopSpan::new()
-        }
-        fn start_with_context<T>(&self, _name: T, _context: OtelContext) -> Self::Span
+        fn start_with_context<T>(&self, _name: T, _context: &OtelContext) -> Self::Span
         where
             T: Into<Cow<'static, str>>,
         {
-            self.invalid()
+            noop::NoopSpan::new()
         }
         fn span_builder<T>(&self, name: T) -> otel::SpanBuilder
         where
@@ -653,28 +653,41 @@ mod tests {
         {
             otel::SpanBuilder::from_name(name)
         }
-        fn build(&self, builder: otel::SpanBuilder) -> Self::Span {
-            *self.0.lock().unwrap() = Some(builder);
-            self.invalid()
+        fn build_with_context(
+            &self,
+            builder: otel::SpanBuilder,
+            parent_cx: &OtelContext,
+        ) -> Self::Span {
+            *self.0.lock().unwrap() = Some(OtelData {
+                builder,
+                parent_cx: parent_cx.clone(),
+            });
+            noop::NoopSpan::new()
         }
     }
 
     impl PreSampledTracer for TestTracer {
-        fn sampled_context(&self, _builder: &mut otel::SpanBuilder) -> OtelContext {
+        fn sampled_context(&self, _builder: &mut crate::OtelData) -> OtelContext {
             OtelContext::new()
         }
         fn new_trace_id(&self) -> otel::TraceId {
-            otel::TraceId::invalid()
+            otel::TraceId::INVALID
         }
         fn new_span_id(&self) -> otel::SpanId {
-            otel::SpanId::invalid()
+            otel::SpanId::INVALID
         }
     }
 
     #[derive(Debug, Clone)]
     struct TestSpan(otel::SpanContext);
     impl otel::Span for TestSpan {
-        fn add_event_with_timestamp(&mut self, _: String, _: SystemTime, _: Vec<KeyValue>) {}
+        fn add_event_with_timestamp<T: Into<Cow<'static, str>>>(
+            &mut self,
+            _: T,
+            _: SystemTime,
+            _: Vec<KeyValue>,
+        ) {
+        }
         fn span_context(&self) -> &otel::SpanContext {
             &self.0
         }
@@ -683,7 +696,7 @@ mod tests {
         }
         fn set_attribute(&mut self, _attribute: KeyValue) {}
         fn set_status(&mut self, _code: otel::StatusCode, _message: String) {}
-        fn update_name(&mut self, _new_name: String) {}
+        fn update_name<T: Into<Cow<'static, str>>>(&mut self, _new_name: T) {}
         fn end_with_timestamp(&mut self, _timestamp: SystemTime) {}
     }
 
@@ -698,7 +711,12 @@ mod tests {
             tracing::debug_span!("static_name", otel.name = dynamic_name.as_str());
         });
 
-        let recorded_name = tracer.0.lock().unwrap().as_ref().map(|b| b.name.clone());
+        let recorded_name = tracer
+            .0
+            .lock()
+            .unwrap()
+            .as_ref()
+            .map(|b| b.builder.name.clone());
         assert_eq!(recorded_name, Some(dynamic_name.into()))
     }
 
@@ -712,7 +730,15 @@ mod tests {
             tracing::debug_span!("request", otel.kind = %SpanKind::Server);
         });
 
-        let recorded_kind = tracer.0.lock().unwrap().as_ref().unwrap().span_kind.clone();
+        let recorded_kind = tracer
+            .0
+            .lock()
+            .unwrap()
+            .as_ref()
+            .unwrap()
+            .builder
+            .span_kind
+            .clone();
         assert_eq!(recorded_kind, Some(otel::SpanKind::Server))
     }
 
@@ -725,7 +751,14 @@ mod tests {
         tracing::collect::with_default(subscriber, || {
             tracing::debug_span!("request", otel.status_code = ?otel::StatusCode::Ok);
         });
-        let recorded_status_code = tracer.0.lock().unwrap().as_ref().unwrap().status_code;
+        let recorded_status_code = tracer
+            .0
+            .lock()
+            .unwrap()
+            .as_ref()
+            .unwrap()
+            .builder
+            .status_code;
         assert_eq!(recorded_status_code, Some(otel::StatusCode::Ok))
     }
 
@@ -747,6 +780,7 @@ mod tests {
             .unwrap()
             .as_ref()
             .unwrap()
+            .builder
             .status_message
             .clone();
 
@@ -758,10 +792,10 @@ mod tests {
         let tracer = TestTracer(Arc::new(Mutex::new(None)));
         let subscriber =
             tracing_subscriber::registry().with(subscriber().with_tracer(tracer.clone()));
-        let trace_id = otel::TraceId::from_u128(42);
+        let trace_id = otel::TraceId::from(42u128.to_be_bytes());
         let existing_cx = OtelContext::current_with_span(TestSpan(otel::SpanContext::new(
             trace_id,
-            otel::SpanId::from_u64(1),
+            otel::SpanId::from(1u64.to_be_bytes()),
             TraceFlags::default(),
             false,
             Default::default(),
@@ -778,7 +812,7 @@ mod tests {
             .unwrap()
             .as_ref()
             .unwrap()
-            .parent_context
+            .parent_cx
             .span()
             .span_context()
             .trace_id();
@@ -804,6 +838,7 @@ mod tests {
             .unwrap()
             .as_ref()
             .unwrap()
+            .builder
             .attributes
             .as_ref()
             .unwrap()
diff --git a/tracing-opentelemetry/src/tracer.rs b/tracing-opentelemetry/src/tracer.rs
index a8e467116e..23e574450d 100644
--- a/tracing-opentelemetry/src/tracer.rs
+++ b/tracing-opentelemetry/src/tracer.rs
@@ -39,7 +39,7 @@ pub trait PreSampledTracer {
     ///
     /// The sampling decision, span context information, and parent context
     /// values must match the values recorded when the tracing span is closed.
-    fn sampled_context(&self, builder: &mut otel::SpanBuilder) -> OtelContext;
+    fn sampled_context(&self, data: &mut crate::OtelData) -> OtelContext;
 
     /// Generate a new trace id.
     fn new_trace_id(&self) -> otel::TraceId;
@@ -49,27 +49,28 @@ pub trait PreSampledTracer {
 }
 
 impl PreSampledTracer for noop::NoopTracer {
-    fn sampled_context(&self, builder: &mut otel::SpanBuilder) -> OtelContext {
-        builder.parent_context.clone()
+    fn sampled_context(&self, data: &mut crate::OtelData) -> OtelContext {
+        data.parent_cx.clone()
     }
 
     fn new_trace_id(&self) -> otel::TraceId {
-        otel::TraceId::invalid()
+        otel::TraceId::INVALID
     }
 
     fn new_span_id(&self) -> otel::SpanId {
-        otel::SpanId::invalid()
+        otel::SpanId::INVALID
     }
 }
 
 impl PreSampledTracer for Tracer {
-    fn sampled_context(&self, builder: &mut otel::SpanBuilder) -> OtelContext {
+    fn sampled_context(&self, data: &mut crate::OtelData) -> OtelContext {
         // Ensure tracing pipeline is still installed.
         if self.provider().is_none() {
             return OtelContext::new();
         }
         let provider = self.provider().unwrap();
-        let parent_cx = &builder.parent_context;
+        let parent_cx = &data.parent_cx;
+        let builder = &mut data.builder;
 
         // Gather trace state
         let (no_parent, trace_id, remote_parent, parent_trace_flags) =
@@ -86,6 +87,7 @@ impl PreSampledTracer for Tracer {
                 builder.span_kind.as_ref().unwrap_or(&SpanKind::Internal),
                 builder.attributes.as_deref().unwrap_or(&[]),
                 builder.links.as_deref().unwrap_or(&[]),
+                self.instrumentation_library(),
             ));
 
             process_sampling_result(
@@ -101,7 +103,7 @@ impl PreSampledTracer for Tracer {
         }
         .unwrap_or_default();
 
-        let span_id = builder.span_id.unwrap_or_else(SpanId::invalid);
+        let span_id = builder.span_id.unwrap_or(SpanId::INVALID);
         let span_context = SpanContext::new(trace_id, span_id, flags, false, trace_state);
         parent_cx.with_remote_span_context(span_context)
     }
@@ -109,13 +111,13 @@ impl PreSampledTracer for Tracer {
     fn new_trace_id(&self) -> otel::TraceId {
         self.provider()
             .map(|provider| provider.config().id_generator.new_trace_id())
-            .unwrap_or_else(otel::TraceId::invalid)
+            .unwrap_or(otel::TraceId::INVALID)
     }
 
     fn new_span_id(&self) -> otel::SpanId {
         self.provider()
             .map(|provider| provider.config().id_generator.new_span_id())
-            .unwrap_or_else(otel::SpanId::invalid)
+            .unwrap_or(otel::SpanId::INVALID)
     }
 }
 
@@ -165,17 +167,19 @@ fn process_sampling_result(
 #[cfg(test)]
 mod tests {
     use super::*;
+    use crate::OtelData;
     use opentelemetry::sdk::trace::{config, Sampler, TracerProvider};
     use opentelemetry::trace::{SpanBuilder, SpanId, TracerProvider as _};
 
     #[test]
     fn assigns_default_trace_id_if_missing() {
         let provider = TracerProvider::default();
-        let tracer = provider.tracer("test", None);
+        let tracer = provider.tracer("test");
         let mut builder = SpanBuilder::from_name("empty".to_string());
-        builder.span_id = Some(SpanId::from_u64(1));
+        builder.span_id = Some(SpanId::from(1u64.to_be_bytes()));
         builder.trace_id = None;
-        let cx = tracer.sampled_context(&mut builder);
+        let parent_cx = OtelContext::new();
+        let cx = tracer.sampled_context(&mut OtelData { builder, parent_cx });
         let span = cx.span();
         let span_context = span.span_context();
 
@@ -211,11 +215,10 @@ mod tests {
             let provider = TracerProvider::builder()
                 .with_config(config().with_sampler(sampler))
                 .build();
-            let tracer = provider.tracer("test", None);
+            let tracer = provider.tracer("test");
             let mut builder = SpanBuilder::from_name("parent".to_string());
-            builder.parent_context = parent_cx;
             builder.sampling_result = previous_sampling_result;
-            let sampled = tracer.sampled_context(&mut builder);
+            let sampled = tracer.sampled_context(&mut OtelData { builder, parent_cx });
 
             assert_eq!(
                 sampled.span().span_context().is_sampled(),
@@ -228,8 +231,8 @@ mod tests {
 
     fn span_context(trace_flags: TraceFlags, is_remote: bool) -> SpanContext {
         SpanContext::new(
-            TraceId::from_u128(1),
-            SpanId::from_u64(1),
+            TraceId::from(1u128.to_be_bytes()),
+            SpanId::from(1u64.to_be_bytes()),
             trace_flags,
             is_remote,
             Default::default(),

diff --git a/tracing-opentelemetry/tests/trace_state_propagation.rs b/tracing-opentelemetry/tests/trace_state_propagation.rs
index e979cb74e0..5382411b50 100644
--- a/tracing-opentelemetry/tests/trace_state_propagation.rs
+++ b/tracing-opentelemetry/tests/trace_state_propagation.rs
@@ -115,7 +115,7 @@ fn test_tracer() -> (Tracer, TracerProvider, TestExporter, impl Collect) {
     let provider = TracerProvider::builder()
         .with_simple_exporter(exporter.clone())
         .build();
-    let tracer = provider.tracer("test", None);
+    let tracer = provider.tracer("test");
     let subscriber = tracing_subscriber::registry().with(subscriber().with_tracer(tracer.clone()));
 
     (tracer, provider, exporter, subscriber)

{"event_outside_of_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "arced_collector": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "rolling::test::write_hourly_log": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "backtrace::tests::capture_unsupported": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::with_ansi_false": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_flattened_event": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "inject_context_into_outgoing_requests": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::overridden_parents_in_scope": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test::info_callsite_is_correct": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "span_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dispatch::test::dispatch_is": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test::warn_callsite_is_correct": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "spans_always_go_to_the_subscriber_that_tagged_them": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::make_writer_based_on_meta": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::synthesize_span_none": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "destructure_structs": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "callsite::tests::linked_list_push_several": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "event_macros_dont_infinite_loop": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::stack::tests::pop_first_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscriber::tests::span_status_code": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::sharded::tests::spans_are_only_closed_when_the_last_ref_drops": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::stack::tests::pop_last_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "warn_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::delimited::test::delimited_new_visitor": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "info_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "numeric_levels": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::writer::test::combinators_and": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "override_everything": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test::debug_callsite_is_correct": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::sharded::tests::single_subscriber_can_access_closed_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "tests::futures_01_tests::future_enter_exit_is_reasonable": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::overridden_parents": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dispatch::test::events_dont_infinite_loop": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "destructure_nested_tuples": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_filename": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "capture_supported": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fields": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::synthesize_span_active": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "both_shorthands": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "new_span_with_target_and_log_level": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "record_new_values_for_fields": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "self_expr_field": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "internal_null_byte": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_disabled_span_list_event": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "enter_exit_is_reasonable": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::synthesize_span_close_no_timing": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "boxed_collector": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "span_closes_when_exited": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::writer::test::custom_writer_closure": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_no_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "prefixed_event_macros": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::writer::test::custom_writer_mutex": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "debug_shorthand": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::test::sparse_value_sets_are_not_empty": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "event_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::with_ansi_true": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscribe::tests::three_subscribers_are_collector": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::test::fields_from_other_callsets_are_skipped": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "tracer::tests::assigns_default_trace_id_if_missing": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "contextual_child": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::pretty_default": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "async_fn_with_async_trait": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "debug_span_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "explicit_child": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "cloning_a_span_calls_clone_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_span_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscriber::tests::trace_id_from_existing_context": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "non_blocking::test::backpressure_exerted": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::test::empty_value_set_is_empty": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_span_event_show_correct_context": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "named_levels": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test::error_callsite_is_correct": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::with_line_number_and_file_name": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "backtrace::tests::capture_empty": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_async": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "event_without_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "info_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::writer::test::custom_writer_struct": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "explicit_child_at_levels": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_span_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "warn": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_root_with_children": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::tests::spanref_scope_iteration_order": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscriber::tests::span_kind": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "moved_field": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "impl_trait_return_type": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::extensions::tests::clear_drops_elements": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "multiple_max_level_hints": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "out_of_scope_fields": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dotted_field_name": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "event": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test::trace_callsite_is_correct": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field_shorthand_only": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::format_nanos": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::test::record_debug_fn": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscribe::tests::downcasts_to_collector": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "error_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::sharded::tests::child_closes_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "handles_to_different_spans_are_not_equal": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "info_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "error_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_with_assigned_otel_context": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "default_name_test": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "explicit_child_regardless_of_ctx": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::disable_everything": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "borrowed_field": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "info_span_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "explicit_root_span_is_root_regardless_of_ctx": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "event_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "debug_span_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_span_event_with_no_fields": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::writer::test::combinators_or_else": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "clone_and_drop_span_always_go_to_the_subscriber_that_tagged_the_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscribe::tests::downcasts_to_subscriber": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "async_fn_with_async_trait_and_fields_expressions": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "new_span_after_event": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "error": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "methods": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "explicit_root_span_is_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "destructure_everything": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "metadata::tests::level_filter_reprs": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "async_fn_only_enters_for_polls": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_dbg": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "error_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "filters_are_reevaluated_for_different_call_sites": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "callsite::tests::linked_list_push": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::test::impls": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::impls": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "debug_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "filters_are_not_reevaluated_for_the_same_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "wrapping_event_without_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_impl_type": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dispatch::test::dispatch_downcasts": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscriber::tests::includes_timings": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::fmt_span_combinations": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "metadata_macro_api": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscribe::tests::context_event_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "entered": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "handles_to_different_spans_with_the_same_metadata_are_not_equal": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "string_message_without_delims": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "non_blocking::test::multi_threaded_writes": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "nested_set_default": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::without_level": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::test::subscriber_downcasts_to_parts": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::test::value_sets_with_fields_from_other_callsites_are_empty": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::with_line_number": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "tests::futures_01_tests::future_error_ends_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "rolling::test::write_never_log": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::test::value_set_with_no_values_is_empty": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "socket::cmsg_buffer_size_for_one_fd": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "clashy_expr_field": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "prefixed_span_macros": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "set_default_dispatch": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "global_dispatch": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "locals_with_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "destructure_tuples": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "metadata::tests::level_from_str": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::with_filename": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "span_closes_after_event": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "destructure_refs": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "parameters_with_fields": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "warn_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "can_initialize_log_tracer_with_level": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "info": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "borrow_val_events": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "multiline_message_trailing_newline": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_line_number": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscribe::tests::subscriber_is_collector": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "simple_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "move_field_out_of_struct": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dispatch::test::spans_dont_infinite_loop": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "nonzeroi32_event_without_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "span_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "info_span_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::synthesize_span_close": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "borrow_val_spans": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "locals_no_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "empty_field": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "skip": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "multiline_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::synthesize_span_full": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "entered_api": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "callsite::tests::linked_list_empty": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::with_thread_ids": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "custom_targets": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "event_with_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "debug_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "rolling::test::test_rotations": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::fmt_subscriber_downcasts_to_parts": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "default_targets": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "contextual_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "callsite_macro_api": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::test::empty_fields_are_skipped": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscriber::tests::dynamic_span_names": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "tracer::tests::sampled_context": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "rolling::test::write_minutely_log": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "error_span_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::tests::spanref_scope_fromroot_iteration_order": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::fmt_subscriber_downcasts": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "warn_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "metadata::tests::level_filter_is_usize_sized": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_disabled_current_span_event": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "debug": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "record_new_value_for_field": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "rolling::test::write_daily_log": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "one_with_everything": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "enter": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::sharded::tests::multiple_subscribers_can_access_closed_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "tests::futures_01_tests::stream_enter_exit_is_reasonable": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::writer::test::combinators_level_filters": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::time::datetime::tests::test_datetime": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::extensions::tests::clear_retains_capacity": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "expr_field": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_nested_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "metadata::tests::filter_level_conversion": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dropping_a_span_calls_drop_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::is_lookup_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "normalized_metadata": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscribe::tests::two_subscribers_are_collector": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "float_values": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::extensions::tests::test_extensions": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "two_expr_fields": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "display_shorthand": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "destructure_tuple_structs": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::record_works": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "warn_span_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscriber::tests::span_status_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_mut": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "custom_name_no_equals_test": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "custom_name_test": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "warn_span_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::test::is_lookup_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::writer::test::combinators_or_else_chain": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "error_span_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dispatch::test::default_no_collector": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::sharded::tests::child_closes_grandparent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "backtrace::tests::capture_supported": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "rolling::test::test_path_concatination": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_ret_and_err": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dispatch::test::default_dispatch": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_with_active_otel_context": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_ret_and_ok": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::test::subscriber_downcasts": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_warn": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "generics": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "max_level_hints": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "message_without_delims": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "spans_always_go_to_the_subscriber_that_tagged_them_even_across_threads": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "filter_caching_is_lexically_scoped": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "handles_to_the_same_span_are_equal": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "debug_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::delimited::test::delimited_visitor": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "events_dont_leak": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_mut_async": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "error_ends_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_err_dbg": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "async_fn_nested": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_early_return": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "span_with_non_rust_symbol": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "large_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "async_fn_with_async_trait_and_fields_expressions_with_generic_parameter": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::sharded::tests::span_enter_guards_are_dropped_out_of_order": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "tests::futures_01_tests::span_follows_future_onto_threadpool": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "spans_dont_leak": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::sharded::tests::spans_are_removed_from_registry": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "drop_span_when_exiting_dispatchers_context": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_err_display_default": {"run": "PASS", "test": "NONE", "fix": "PASS"}}
{"event_outside_of_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "arced_collector": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "rolling::test::write_hourly_log": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "backtrace::tests::capture_unsupported": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::with_ansi_false": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_flattened_event": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "inject_context_into_outgoing_requests": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::overridden_parents_in_scope": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test::info_callsite_is_correct": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "span_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dispatch::test::dispatch_is": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test::warn_callsite_is_correct": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "spans_always_go_to_the_subscriber_that_tagged_them": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::make_writer_based_on_meta": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::synthesize_span_none": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "destructure_structs": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "callsite::tests::linked_list_push_several": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "event_macros_dont_infinite_loop": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::stack::tests::pop_first_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscriber::tests::span_status_code": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::sharded::tests::spans_are_only_closed_when_the_last_ref_drops": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::stack::tests::pop_last_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "warn_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::delimited::test::delimited_new_visitor": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "info_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "numeric_levels": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::writer::test::combinators_and": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "override_everything": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test::debug_callsite_is_correct": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::sharded::tests::single_subscriber_can_access_closed_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "tests::futures_01_tests::future_enter_exit_is_reasonable": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::overridden_parents": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dispatch::test::events_dont_infinite_loop": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "destructure_nested_tuples": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_filename": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "capture_supported": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fields": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::synthesize_span_active": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "both_shorthands": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "new_span_with_target_and_log_level": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "record_new_values_for_fields": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "self_expr_field": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "internal_null_byte": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_disabled_span_list_event": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "enter_exit_is_reasonable": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::synthesize_span_close_no_timing": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "boxed_collector": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "span_closes_when_exited": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::writer::test::custom_writer_closure": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_no_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "prefixed_event_macros": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::writer::test::custom_writer_mutex": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "debug_shorthand": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::test::sparse_value_sets_are_not_empty": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "event_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::with_ansi_true": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscribe::tests::three_subscribers_are_collector": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::test::fields_from_other_callsets_are_skipped": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "tracer::tests::assigns_default_trace_id_if_missing": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "contextual_child": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::pretty_default": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "async_fn_with_async_trait": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "debug_span_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "explicit_child": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "cloning_a_span_calls_clone_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_span_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscriber::tests::trace_id_from_existing_context": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "non_blocking::test::backpressure_exerted": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::test::empty_value_set_is_empty": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_span_event_show_correct_context": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "named_levels": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test::error_callsite_is_correct": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::with_line_number_and_file_name": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "backtrace::tests::capture_empty": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_async": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "event_without_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "info_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::writer::test::custom_writer_struct": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "explicit_child_at_levels": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_span_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "warn": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_root_with_children": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::tests::spanref_scope_iteration_order": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscriber::tests::span_kind": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "moved_field": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "impl_trait_return_type": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::extensions::tests::clear_drops_elements": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "multiple_max_level_hints": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "out_of_scope_fields": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dotted_field_name": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "event": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test::trace_callsite_is_correct": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field_shorthand_only": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::format_nanos": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::test::record_debug_fn": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscribe::tests::downcasts_to_collector": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "error_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::sharded::tests::child_closes_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "handles_to_different_spans_are_not_equal": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "info_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "error_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_with_assigned_otel_context": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "default_name_test": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "explicit_child_regardless_of_ctx": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::disable_everything": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "borrowed_field": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "info_span_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "explicit_root_span_is_root_regardless_of_ctx": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "event_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "debug_span_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_span_event_with_no_fields": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::writer::test::combinators_or_else": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "clone_and_drop_span_always_go_to_the_subscriber_that_tagged_the_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscribe::tests::downcasts_to_subscriber": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "async_fn_with_async_trait_and_fields_expressions": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "new_span_after_event": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "error": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "methods": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "explicit_root_span_is_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "destructure_everything": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "metadata::tests::level_filter_reprs": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "async_fn_only_enters_for_polls": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_dbg": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "error_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "filters_are_reevaluated_for_different_call_sites": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "callsite::tests::linked_list_push": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::test::impls": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::impls": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "debug_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "filters_are_not_reevaluated_for_the_same_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "wrapping_event_without_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_impl_type": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dispatch::test::dispatch_downcasts": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscriber::tests::includes_timings": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::fmt_span_combinations": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "metadata_macro_api": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscribe::tests::context_event_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "entered": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "handles_to_different_spans_with_the_same_metadata_are_not_equal": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "string_message_without_delims": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "non_blocking::test::multi_threaded_writes": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "nested_set_default": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::without_level": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::test::subscriber_downcasts_to_parts": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::test::value_sets_with_fields_from_other_callsites_are_empty": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::with_line_number": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "tests::futures_01_tests::future_error_ends_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "rolling::test::write_never_log": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::test::value_set_with_no_values_is_empty": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "socket::cmsg_buffer_size_for_one_fd": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "clashy_expr_field": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "prefixed_span_macros": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "set_default_dispatch": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "global_dispatch": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "locals_with_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "destructure_tuples": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "metadata::tests::level_from_str": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::with_filename": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "span_closes_after_event": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "destructure_refs": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "parameters_with_fields": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "warn_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "can_initialize_log_tracer_with_level": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "info": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "borrow_val_events": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "multiline_message_trailing_newline": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_line_number": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscribe::tests::subscriber_is_collector": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "simple_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "move_field_out_of_struct": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dispatch::test::spans_dont_infinite_loop": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "nonzeroi32_event_without_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "span_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "info_span_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::synthesize_span_close": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "borrow_val_spans": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "locals_no_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "empty_field": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "skip": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "multiline_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::synthesize_span_full": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "entered_api": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "callsite::tests::linked_list_empty": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::test::with_thread_ids": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "custom_targets": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "event_with_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "debug_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "rolling::test::test_rotations": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::fmt_subscriber_downcasts_to_parts": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "default_targets": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "contextual_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "callsite_macro_api": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::test::empty_fields_are_skipped": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscriber::tests::dynamic_span_names": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "tracer::tests::sampled_context": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "rolling::test::write_minutely_log": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "error_span_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::tests::spanref_scope_fromroot_iteration_order": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::fmt_subscriber_downcasts": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "warn_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "metadata::tests::level_filter_is_usize_sized": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_disabled_current_span_event": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "debug": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "record_new_value_for_field": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "rolling::test::write_daily_log": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "one_with_everything": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "enter": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::sharded::tests::multiple_subscribers_can_access_closed_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "tests::futures_01_tests::stream_enter_exit_is_reasonable": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::writer::test::combinators_level_filters": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::time::datetime::tests::test_datetime": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::extensions::tests::clear_retains_capacity": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "expr_field": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::json_nested_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "metadata::tests::filter_level_conversion": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dropping_a_span_calls_drop_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::fmt_subscriber::test::is_lookup_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "normalized_metadata": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscribe::tests::two_subscribers_are_collector": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "float_values": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::extensions::tests::test_extensions": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "two_expr_fields": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "display_shorthand": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "destructure_tuple_structs": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::format::json::test::record_works": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "warn_span_with_parent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "subscriber::tests::span_status_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_mut": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "custom_name_no_equals_test": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "custom_name_test": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "warn_span_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::test::is_lookup_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::writer::test::combinators_or_else_chain": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "error_span_root": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dispatch::test::default_no_collector": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::sharded::tests::child_closes_grandparent": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "backtrace::tests::capture_supported": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "rolling::test::test_path_concatination": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_ret_and_err": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "dispatch::test::default_dispatch": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "trace_with_active_otel_context": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_ret_and_ok": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "fmt::test::subscriber_downcasts": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_warn": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "generics": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "max_level_hints": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "message_without_delims": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "spans_always_go_to_the_subscriber_that_tagged_them_even_across_threads": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "filter_caching_is_lexically_scoped": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "handles_to_the_same_span_are_equal": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "debug_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "field::delimited::test::delimited_visitor": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "events_dont_leak": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_mut_async": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "error_ends_span": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_err_dbg": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "async_fn_nested": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_early_return": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "span_with_non_rust_symbol": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "large_message": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "async_fn_with_async_trait_and_fields_expressions_with_generic_parameter": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::sharded::tests::span_enter_guards_are_dropped_out_of_order": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "tests::futures_01_tests::span_follows_future_onto_threadpool": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "spans_dont_leak": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "registry::sharded::tests::spans_are_removed_from_registry": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "drop_span_when_exiting_dispatchers_context": {"run": "PASS", "test": "NONE", "fix": "PASS"}, "test_err_display_default": {"run": "PASS", "test": "NONE", "fix": "PASS"}}
{"passed_count": 274, "failed_count": 29, "skipped_count": 2, "passed_tests": ["subscribe::tests::context_event_span", "event_outside_of_span", "entered", "handles_to_different_spans_with_the_same_metadata_are_not_equal", "arced_collector", "string_message_without_delims", "non_blocking::test::multi_threaded_writes", "rolling::test::write_hourly_log", "nested_set_default", "backtrace::tests::capture_unsupported", "fmt::format::test::with_ansi_false", "fmt::format::json::test::json_flattened_event", "inject_context_into_outgoing_requests", "fmt::format::test::without_level", "fmt::format::test::overridden_parents_in_scope", "test::info_callsite_is_correct", "fmt::test::subscriber_downcasts_to_parts", "field::test::value_sets_with_fields_from_other_callsites_are_empty", "span_with_parent", "dispatch::test::dispatch_is", "trace_with_parent", "test::warn_callsite_is_correct", "fmt::format::test::with_line_number", "spans_always_go_to_the_subscriber_that_tagged_them", "tests::futures_01_tests::future_error_ends_span", "fmt::fmt_subscriber::test::make_writer_based_on_meta", "rolling::test::write_never_log", "field::test::value_set_with_no_values_is_empty", "destructure_structs", "socket::cmsg_buffer_size_for_one_fd", "callsite::tests::linked_list_push_several", "event_macros_dont_infinite_loop", "registry::stack::tests::pop_first_span", "subscriber::tests::span_status_code", "clashy_expr_field", "prefixed_span_macros", "set_default_dispatch", "registry::sharded::tests::spans_are_only_closed_when_the_last_ref_drops", "global_dispatch", "registry::stack::tests::pop_last_span", "trace_span", "locals_with_message", "destructure_tuples", "metadata::tests::level_from_str", "fmt::fmt_subscriber::test::synthesize_span_none", "fmt::format::test::with_filename", "span_closes_after_event", "warn_with_parent", "field::delimited::test::delimited_new_visitor", "destructure_refs", "parameters_with_fields", "warn_span", "info_root", "numeric_levels", "fmt::writer::test::combinators_and", "fmt::format::json::test::json", "can_initialize_log_tracer_with_level", "info", "borrow_val_events", "override_everything", "multiline_message_trailing_newline", "test::debug_callsite_is_correct", "fmt::format::json::test::json_line_number", "registry::sharded::tests::single_subscriber_can_access_closed_span", "subscribe::tests::subscriber_is_collector", "simple_message", "span", "move_field_out_of_struct", "tests::futures_01_tests::future_enter_exit_is_reasonable", "fmt::format::test::overridden_parents", "dispatch::test::events_dont_infinite_loop", "dispatch::test::spans_dont_infinite_loop", "nonzeroi32_event_without_message", "destructure_nested_tuples", "fmt::format::json::test::json_filename", "capture_supported", "span_root", "fields", "info_span_root", "fmt::fmt_subscriber::test::synthesize_span_close", "borrow_val_spans", "test", "fmt::fmt_subscriber::test::synthesize_span_active", "locals_no_message", "both_shorthands", "new_span_with_target_and_log_level", "record_new_values_for_fields", "self_expr_field", "internal_null_byte", "fmt::format::json::test::json_disabled_span_list_event", "enter_exit_is_reasonable", "empty_field", "trace", "skip", "fmt::fmt_subscriber::test::synthesize_span_close_no_timing", "multiline_message", "boxed_collector", "span_closes_when_exited", "fmt::writer::test::custom_writer_closure", "fmt::format::json::test::json_no_span", "prefixed_event_macros", "entered_api", "callsite::tests::linked_list_empty", "fmt::fmt_subscriber::test::synthesize_span_full", "fmt::writer::test::custom_writer_mutex", "custom_targets", "fmt::format::test::with_thread_ids", "debug_shorthand", "event_with_message", "debug_root", "rolling::test::test_rotations", "fmt::fmt_subscriber::test::fmt_subscriber_downcasts_to_parts", "default_targets", "field::test::sparse_value_sets_are_not_empty", "event_root", "contextual_root", "fmt::format::test::with_ansi_true", "callsite_macro_api", "field::test::empty_fields_are_skipped", "field::test::fields_from_other_callsets_are_skipped", "subscriber::tests::dynamic_span_names", "tracer::tests::sampled_context", "subscribe::tests::three_subscribers_are_collector", "rolling::test::write_minutely_log", "tracer::tests::assigns_default_trace_id_if_missing", "contextual_child", "fmt::format::test::pretty_default", "error_span_with_parent", "async_fn_with_async_trait", "registry::tests::spanref_scope_fromroot_iteration_order", "debug_span_root", "explicit_child", "warn_root", "trace_span_root", "cloning_a_span_calls_clone_span", "fmt::fmt_subscriber::test::fmt_subscriber_downcasts", "subscriber::tests::trace_id_from_existing_context", "non_blocking::test::backpressure_exerted", "field::test::empty_value_set_is_empty", "metadata::tests::level_filter_is_usize_sized", "fmt::format::json::test::json_disabled_current_span_event", "fmt::format::json::test::json_span_event_show_correct_context", "named_levels", "test::error_callsite_is_correct", "debug", "record_new_value_for_field", "fmt::format::test::with_line_number_and_file_name", "rolling::test::write_daily_log", "test_async", "backtrace::tests::capture_empty", "one_with_everything", "event_without_message", "enter", "registry::sharded::tests::multiple_subscribers_can_access_closed_span", "tests::futures_01_tests::stream_enter_exit_is_reasonable", "info_with_parent", "fmt::writer::test::combinators_level_filters", "fmt::time::datetime::tests::test_datetime", "registry::extensions::tests::clear_retains_capacity", "fmt::writer::test::custom_writer_struct", "expr_field", "explicit_child_at_levels", "trace_span_with_parent", "warn", "metadata::tests::filter_level_conversion", "fmt::format::json::test::json_nested_span", "trace_root", "trace_root_with_children", "registry::tests::spanref_scope_iteration_order", "dropping_a_span_calls_drop_span", "subscriber::tests::span_kind", "fmt::fmt_subscriber::test::is_lookup_span", "moved_field", "normalized_metadata", "subscribe::tests::two_subscribers_are_collector", "float_values", "impl_trait_return_type", "registry::extensions::tests::clear_drops_elements", "registry::extensions::tests::test_extensions", "two_expr_fields", "display_shorthand", "destructure_tuple_structs", "fmt::format::json::test::record_works", "warn_span_with_parent", "subscriber::tests::span_status_message", "test_mut", "multiple_max_level_hints", "custom_name_no_equals_test", "custom_name_test", "warn_span_root", "fmt::test::is_lookup_span", "out_of_scope_fields", "dotted_field_name", "event", "test::trace_callsite_is_correct", "field_shorthand_only", "fmt::format::test::format_nanos", "field::test::record_debug_fn", "fmt::writer::test::combinators_or_else_chain", "subscribe::tests::downcasts_to_collector", "error_span_root", "error_root", "registry::sharded::tests::child_closes_parent", "dispatch::test::default_no_collector", "handles_to_different_spans_are_not_equal", "info_span", "registry::sharded::tests::child_closes_grandparent", "backtrace::tests::capture_supported", "error_span", "trace_with_assigned_otel_context", "default_name_test", "rolling::test::test_path_concatination", "explicit_child_regardless_of_ctx", "test_ret_and_err", "dispatch::test::default_dispatch", "fmt::format::test::disable_everything", "borrowed_field", "trace_with_active_otel_context", "test_ret_and_ok", "info_span_with_parent", "fmt::test::subscriber_downcasts", "explicit_root_span_is_root_regardless_of_ctx", "test_warn", "event_with_parent", "generics", "max_level_hints", "message_without_delims", "debug_span_with_parent", "spans_always_go_to_the_subscriber_that_tagged_them_even_across_threads", "filter_caching_is_lexically_scoped", "handles_to_the_same_span_are_equal", "fmt::writer::test::combinators_or_else", "fmt::format::json::test::json_span_event_with_no_fields", "debug_span", "clone_and_drop_span_always_go_to_the_subscriber_that_tagged_the_span", "field::delimited::test::delimited_visitor", "subscribe::tests::downcasts_to_subscriber", "async_fn_with_async_trait_and_fields_expressions", "events_dont_leak", "test_mut_async", "new_span_after_event", "error", "methods", "error_ends_span", "test_err_dbg", "explicit_root_span_is_root", "destructure_everything", "async_fn_nested", "async_fn_only_enters_for_polls", "metadata::tests::level_filter_reprs", "test_dbg", "test_early_return", "error_with_parent", "span_with_non_rust_symbol", "filters_are_reevaluated_for_different_call_sites", "callsite::tests::linked_list_push", "large_message", "async_fn_with_async_trait_and_fields_expressions_with_generic_parameter", "fmt::test::impls", "registry::sharded::tests::span_enter_guards_are_dropped_out_of_order", "fmt::fmt_subscriber::test::impls", "debug_with_parent", "filters_are_not_reevaluated_for_the_same_span", "wrapping_event_without_message", "spans_dont_leak", "tests::futures_01_tests::span_follows_future_onto_threadpool", "test_impl_type", "drop_span_when_exiting_dispatchers_context", "test_err_display_default", "registry::sharded::tests::spans_are_removed_from_registry", "dispatch::test::dispatch_downcasts", "subscriber::tests::includes_timings", "fmt::format::test::fmt_span_combinations", "metadata_macro_api"], "failed_tests": ["filter::env::directive::test::directive_ordering_by_target_len", "filter::env::tests::callsite_enabled_includes_span_directive_field", "filter::env::directive::test::parse_directives_global", "filter::env::tests::roundtrip", "filter::env::directive::test::parse_directives_global_bare_warn_mixed", "filter::env::directive::test::parse_directives_with_invalid_span_chars", "filter::env::directive::test::parse_directives_valid", "filter::env::directive::test::parse_directives_ralith", "filter::env::directive::test::parse_directives_global_bare_warn_uc", "filter::env::tests::callsite_enabled_no_span_directive", "filter::env::directive::test::directive_ordering_uses_lexicographic_when_equal", "filter::env::tests::callsite_off", "filter::env::directive::test::directive_ordering_by_span", "filter::env::directive::test::parse_numeric_level_directives", "filter::env::directive::test::parse_directives_with_dash_in_span_name", "filter::env::tests::callsite_enabled_includes_span_directive_multiple_fields", "filter::env::directive::test::parse_directives_valid_with_spans", "filter::env::directive::test::parse_level_directives", "filter::env::directive::test::parse_directives_with_dash_in_target_name", "filter::env::directive::test::parse_directives_empty_level", "filter::env::directive::test::parse_directives_global_bare_warn_lc", "filter::env::directive::test::parse_directives_invalid_crate", "filter::env::directive::test::parse_directives_invalid_level", "filter::env::directive::test::parse_directives_with_special_characters_in_span_name", "filter::env::directive::test::parse_uppercase_level_directives", "filter::env::tests::callsite_enabled_includes_span_directive", "filter::env::directive::test::parse_directives_ralith_uc", "filter::env::directive::test::parse_directives_ralith_mixed", "filter::env::directive::test::parse_directives_string_level"], "skipped_tests": ["non_blocking::test::logs_dropped_if_lossy", "filter::env::directive::test::directive_ordering_by_field_num"]}
{"passed_count": 0, "failed_count": 0, "skipped_count": 0, "passed_tests": [], "failed_tests": [], "skipped_tests": []}
{"passed_count": 274, "failed_count": 29, "skipped_count": 2, "passed_tests": ["subscribe::tests::context_event_span", "event_outside_of_span", "entered", "handles_to_different_spans_with_the_same_metadata_are_not_equal", "arced_collector", "string_message_without_delims", "non_blocking::test::multi_threaded_writes", "rolling::test::write_hourly_log", "nested_set_default", "backtrace::tests::capture_unsupported", "fmt::format::test::with_ansi_false", "fmt::format::json::test::json_flattened_event", "inject_context_into_outgoing_requests", "fmt::format::test::without_level", "fmt::format::test::overridden_parents_in_scope", "test::info_callsite_is_correct", "fmt::test::subscriber_downcasts_to_parts", "field::test::value_sets_with_fields_from_other_callsites_are_empty", "span_with_parent", "dispatch::test::dispatch_is", "trace_with_parent", "test::warn_callsite_is_correct", "fmt::format::test::with_line_number", "spans_always_go_to_the_subscriber_that_tagged_them", "tests::futures_01_tests::future_error_ends_span", "fmt::fmt_subscriber::test::make_writer_based_on_meta", "rolling::test::write_never_log", "field::test::value_set_with_no_values_is_empty", "destructure_structs", "socket::cmsg_buffer_size_for_one_fd", "callsite::tests::linked_list_push_several", "event_macros_dont_infinite_loop", "registry::stack::tests::pop_first_span", "subscriber::tests::span_status_code", "clashy_expr_field", "prefixed_span_macros", "set_default_dispatch", "registry::sharded::tests::spans_are_only_closed_when_the_last_ref_drops", "global_dispatch", "registry::stack::tests::pop_last_span", "trace_span", "locals_with_message", "destructure_tuples", "metadata::tests::level_from_str", "fmt::fmt_subscriber::test::synthesize_span_none", "fmt::format::test::with_filename", "span_closes_after_event", "warn_with_parent", "field::delimited::test::delimited_new_visitor", "destructure_refs", "parameters_with_fields", "warn_span", "info_root", "numeric_levels", "fmt::writer::test::combinators_and", "fmt::format::json::test::json", "can_initialize_log_tracer_with_level", "info", "borrow_val_events", "override_everything", "multiline_message_trailing_newline", "test::debug_callsite_is_correct", "fmt::format::json::test::json_line_number", "registry::sharded::tests::single_subscriber_can_access_closed_span", "subscribe::tests::subscriber_is_collector", "simple_message", "span", "move_field_out_of_struct", "tests::futures_01_tests::future_enter_exit_is_reasonable", "fmt::format::test::overridden_parents", "dispatch::test::events_dont_infinite_loop", "dispatch::test::spans_dont_infinite_loop", "nonzeroi32_event_without_message", "destructure_nested_tuples", "fmt::format::json::test::json_filename", "capture_supported", "span_root", "fields", "info_span_root", "fmt::fmt_subscriber::test::synthesize_span_close", "borrow_val_spans", "test", "fmt::fmt_subscriber::test::synthesize_span_active", "locals_no_message", "both_shorthands", "new_span_with_target_and_log_level", "record_new_values_for_fields", "self_expr_field", "internal_null_byte", "fmt::format::json::test::json_disabled_span_list_event", "enter_exit_is_reasonable", "empty_field", "trace", "skip", "fmt::fmt_subscriber::test::synthesize_span_close_no_timing", "multiline_message", "boxed_collector", "span_closes_when_exited", "fmt::format::json::test::json_no_span", "fmt::writer::test::custom_writer_closure", "prefixed_event_macros", "entered_api", "callsite::tests::linked_list_empty", "fmt::fmt_subscriber::test::synthesize_span_full", "fmt::writer::test::custom_writer_mutex", "custom_targets", "fmt::format::test::with_thread_ids", "debug_shorthand", "event_with_message", "debug_root", "rolling::test::test_rotations", "fmt::fmt_subscriber::test::fmt_subscriber_downcasts_to_parts", "default_targets", "field::test::sparse_value_sets_are_not_empty", "event_root", "contextual_root", "fmt::format::test::with_ansi_true", "callsite_macro_api", "field::test::empty_fields_are_skipped", "field::test::fields_from_other_callsets_are_skipped", "subscriber::tests::dynamic_span_names", "tracer::tests::sampled_context", "subscribe::tests::three_subscribers_are_collector", "rolling::test::write_minutely_log", "tracer::tests::assigns_default_trace_id_if_missing", "contextual_child", "fmt::format::test::pretty_default", "error_span_with_parent", "async_fn_with_async_trait", "registry::tests::spanref_scope_fromroot_iteration_order", "debug_span_root", "cloning_a_span_calls_clone_span", "explicit_child", "warn_root", "trace_span_root", "fmt::fmt_subscriber::test::fmt_subscriber_downcasts", "subscriber::tests::trace_id_from_existing_context", "non_blocking::test::backpressure_exerted", "field::test::empty_value_set_is_empty", "metadata::tests::level_filter_is_usize_sized", "fmt::format::json::test::json_disabled_current_span_event", "fmt::format::json::test::json_span_event_show_correct_context", "named_levels", "test::error_callsite_is_correct", "debug", "record_new_value_for_field", "fmt::format::test::with_line_number_and_file_name", "rolling::test::write_daily_log", "test_async", "backtrace::tests::capture_empty", "one_with_everything", "event_without_message", "enter", "registry::sharded::tests::multiple_subscribers_can_access_closed_span", "tests::futures_01_tests::stream_enter_exit_is_reasonable", "info_with_parent", "fmt::writer::test::combinators_level_filters", "fmt::time::datetime::tests::test_datetime", "registry::extensions::tests::clear_retains_capacity", "fmt::writer::test::custom_writer_struct", "expr_field", "explicit_child_at_levels", "trace_span_with_parent", "warn", "metadata::tests::filter_level_conversion", "fmt::format::json::test::json_nested_span", "trace_root", "trace_root_with_children", "registry::tests::spanref_scope_iteration_order", "dropping_a_span_calls_drop_span", "subscriber::tests::span_kind", "fmt::fmt_subscriber::test::is_lookup_span", "moved_field", "normalized_metadata", "subscribe::tests::two_subscribers_are_collector", "float_values", "impl_trait_return_type", "registry::extensions::tests::test_extensions", "registry::extensions::tests::clear_drops_elements", "two_expr_fields", "display_shorthand", "destructure_tuple_structs", "fmt::format::json::test::record_works", "warn_span_with_parent", "subscriber::tests::span_status_message", "test_mut", "multiple_max_level_hints", "custom_name_no_equals_test", "custom_name_test", "warn_span_root", "fmt::test::is_lookup_span", "out_of_scope_fields", "dotted_field_name", "event", "test::trace_callsite_is_correct", "field_shorthand_only", "fmt::format::test::format_nanos", "field::test::record_debug_fn", "fmt::writer::test::combinators_or_else_chain", "subscribe::tests::downcasts_to_collector", "error_span_root", "error_root", "registry::sharded::tests::child_closes_parent", "dispatch::test::default_no_collector", "handles_to_different_spans_are_not_equal", "info_span", "registry::sharded::tests::child_closes_grandparent", "backtrace::tests::capture_supported", "error_span", "trace_with_assigned_otel_context", "default_name_test", "rolling::test::test_path_concatination", "explicit_child_regardless_of_ctx", "test_ret_and_err", "dispatch::test::default_dispatch", "fmt::format::test::disable_everything", "borrowed_field", "trace_with_active_otel_context", "test_ret_and_ok", "info_span_with_parent", "fmt::test::subscriber_downcasts", "explicit_root_span_is_root_regardless_of_ctx", "test_warn", "event_with_parent", "generics", "max_level_hints", "message_without_delims", "debug_span_with_parent", "spans_always_go_to_the_subscriber_that_tagged_them_even_across_threads", "filter_caching_is_lexically_scoped", "handles_to_the_same_span_are_equal", "fmt::writer::test::combinators_or_else", "fmt::format::json::test::json_span_event_with_no_fields", "debug_span", "clone_and_drop_span_always_go_to_the_subscriber_that_tagged_the_span", "field::delimited::test::delimited_visitor", "subscribe::tests::downcasts_to_subscriber", "async_fn_with_async_trait_and_fields_expressions", "events_dont_leak", "test_mut_async", "new_span_after_event", "error", "methods", "error_ends_span", "test_err_dbg", "explicit_root_span_is_root", "destructure_everything", "async_fn_nested", "async_fn_only_enters_for_polls", "metadata::tests::level_filter_reprs", "test_dbg", "test_early_return", "error_with_parent", "span_with_non_rust_symbol", "filters_are_reevaluated_for_different_call_sites", "callsite::tests::linked_list_push", "large_message", "async_fn_with_async_trait_and_fields_expressions_with_generic_parameter", "fmt::test::impls", "registry::sharded::tests::span_enter_guards_are_dropped_out_of_order", "fmt::fmt_subscriber::test::impls", "debug_with_parent", "filters_are_not_reevaluated_for_the_same_span", "wrapping_event_without_message", "spans_dont_leak", "tests::futures_01_tests::span_follows_future_onto_threadpool", "test_impl_type", "drop_span_when_exiting_dispatchers_context", "test_err_display_default", "registry::sharded::tests::spans_are_removed_from_registry", "dispatch::test::dispatch_downcasts", "subscriber::tests::includes_timings", "fmt::format::test::fmt_span_combinations", "metadata_macro_api"], "failed_tests": ["filter::env::directive::test::directive_ordering_by_target_len", "filter::env::tests::callsite_enabled_includes_span_directive_field", "filter::env::directive::test::parse_directives_global", "filter::env::tests::roundtrip", "filter::env::directive::test::parse_directives_global_bare_warn_mixed", "filter::env::directive::test::parse_directives_with_invalid_span_chars", "filter::env::directive::test::parse_directives_valid", "filter::env::directive::test::parse_directives_ralith", "filter::env::directive::test::parse_directives_global_bare_warn_uc", "filter::env::tests::callsite_enabled_no_span_directive", "filter::env::directive::test::directive_ordering_uses_lexicographic_when_equal", "filter::env::directive::test::directive_ordering_by_span", "filter::env::tests::callsite_off", "filter::env::directive::test::parse_numeric_level_directives", "filter::env::directive::test::parse_directives_with_dash_in_span_name", "filter::env::tests::callsite_enabled_includes_span_directive_multiple_fields", "filter::env::directive::test::parse_directives_valid_with_spans", "filter::env::directive::test::parse_level_directives", "filter::env::directive::test::parse_directives_with_dash_in_target_name", "filter::env::directive::test::parse_directives_empty_level", "filter::env::directive::test::parse_directives_global_bare_warn_lc", "filter::env::directive::test::parse_directives_invalid_crate", "filter::env::directive::test::parse_directives_invalid_level", "filter::env::directive::test::parse_directives_with_special_characters_in_span_name", "filter::env::directive::test::parse_uppercase_level_directives", "filter::env::tests::callsite_enabled_includes_span_directive", "filter::env::directive::test::parse_directives_ralith_uc", "filter::env::directive::test::parse_directives_ralith_mixed", "filter::env::directive::test::parse_directives_string_level"], "skipped_tests": ["non_blocking::test::logs_dropped_if_lossy", "filter::env::directive::test::directive_ordering_by_field_num"]}