pub trait ObjectSafeTracerProvider {
    // Required methods
    fn versioned_tracer_boxed(
        &self,
        name: Cow<'static, str>,
        version: Option<&'static str>,
        schema_url: Option<&'static str>
    ) -> Box<dyn ObjectSafeTracer + Send + Sync>;
    fn force_flush(&self) -> Vec<TraceResult<()>>;
}
Expand description

Allows a specific TracerProvider to be used generically by the GlobalTracerProvider by mirroring the interface and boxing the return types.

Required Methods§

source

fn versioned_tracer_boxed( &self, name: Cow<'static, str>, version: Option<&'static str>, schema_url: Option<&'static str> ) -> Box<dyn ObjectSafeTracer + Send + Sync>

Creates a versioned named tracer instance that is a trait object through the underlying TracerProvider.

source

fn force_flush(&self) -> Vec<TraceResult<()>>

Force flush all remaining spans in span processors and return results.

Implementors§

source§

impl<S, T, P> ObjectSafeTracerProvider for Pwhere S: Span + Send + Sync + 'static, T: Tracer<Span = S> + Send + Sync + 'static, P: TracerProvider<Tracer = T>,