Trait opentelemetry::global::ObjectSafeTracer
source · pub trait ObjectSafeTracer {
// Required methods
fn start_with_context_boxed(
&self,
name: Cow<'static, str>,
parent_cx: &Context
) -> Box<dyn ObjectSafeSpan + Send + Sync>;
fn build_with_context_boxed(
&self,
builder: SpanBuilder,
parent_cx: &Context
) -> Box<dyn ObjectSafeSpan + Send + Sync>;
}
Expand description
Allows a specific Tracer
to be used generically by BoxedTracer
instances by mirroring the interface and boxing the return types.
Required Methods§
sourcefn start_with_context_boxed(
&self,
name: Cow<'static, str>,
parent_cx: &Context
) -> Box<dyn ObjectSafeSpan + Send + Sync>
fn start_with_context_boxed( &self, name: Cow<'static, str>, parent_cx: &Context ) -> Box<dyn ObjectSafeSpan + Send + Sync>
Returns a trait object so the underlying implementation can be swapped out at runtime.
sourcefn build_with_context_boxed(
&self,
builder: SpanBuilder,
parent_cx: &Context
) -> Box<dyn ObjectSafeSpan + Send + Sync>
fn build_with_context_boxed( &self, builder: SpanBuilder, parent_cx: &Context ) -> Box<dyn ObjectSafeSpan + Send + Sync>
Returns a trait object so the underlying implementation can be swapped out at runtime.