[−][src]Struct tracing_opentelemetry::OpenTelemetryLayer
OpenTelemetry layer for use in a project that uses tracing.
Methods
impl<S, T> OpenTelemetryLayer<S, T> where
S: Subscriber + for<'span> LookupSpan<'span>,
T: Tracer + 'static,
[src]
S: Subscriber + for<'span> LookupSpan<'span>,
T: Tracer + 'static,
pub fn with_tracer(tracer: T) -> Self
[src]
Set the OpenTelemetry
Tracer
that this layer will use to produce
and track Span
s.
use opentelemetry::{api::Provider, global, sdk}; use tracing_opentelemetry::OpenTelemetryLayer; use tracing_subscriber::layer::SubscriberExt; use tracing_subscriber::Registry; // Create a jaeger exporter for a `trace-demo` service. let exporter = opentelemetry_jaeger::Exporter::builder() .with_agent_endpoint("127.0.0.1:6831".parse().unwrap()) .with_process(opentelemetry_jaeger::Process { service_name: "trace_demo".to_string(), tags: Vec::new(), }) .init().expect("Error initializing Jaeger exporter"); // Build a provider from the jaeger exporter that always samples. let provider = sdk::Provider::builder() .with_simple_exporter(exporter) .with_config(sdk::Config { default_sampler: Box::new(sdk::Sampler::Always), ..Default::default() }) .build(); // Get a tracer from the provider for a component let tracer = provider.get_tracer("component-name"); // Create a layer with the configured tracer let otel_layer = OpenTelemetryLayer::with_tracer(tracer); // Use the tracing subscriber `Registry`, or any other subscriber // that impls `LookupSpan` let _subscriber = Registry::default() .with(otel_layer);
Trait Implementations
impl<S, T> Layer<S> for OpenTelemetryLayer<S, T> where
S: Subscriber + for<'span> LookupSpan<'span>,
T: Tracer + 'static,
[src]
S: Subscriber + for<'span> LookupSpan<'span>,
T: Tracer + 'static,
fn new_span(&self, attrs: &Attributes, id: &Id, ctx: Context<S>)
[src]
Creates an OpenTelemetry
Span
for the corresponding tracing
Span
.
This will attempt to parse the parent context if possible from the given attributes.
fn on_record(&self, id: &Id, values: &Record, ctx: Context<S>)
[src]
Record values for the given span.
fn on_event(&self, event: &Event, ctx: Context<S>)
[src]
Record logs for the given event.
fn on_close(&self, id: Id, ctx: Context<S>)
[src]
Mark the Span
as ended when it is closed.
unsafe fn downcast_raw(&self, id: TypeId) -> Option<*const ()>
[src]
fn register_callsite(&self, metadata: &'static Metadata<'static>) -> Interest
[src]
fn enabled(&self, metadata: &Metadata, ctx: Context<S>) -> bool
[src]
fn on_follows_from(&self, _span: &Id, _follows: &Id, _ctx: Context<S>)
[src]
fn on_enter(&self, _id: &Id, _ctx: Context<S>)
[src]
fn on_exit(&self, _id: &Id, _ctx: Context<S>)
[src]
fn on_id_change(&self, _old: &Id, _new: &Id, _ctx: Context<S>)
[src]
fn and_then<L>(self, layer: L) -> Layered<L, Self, S> where
L: Layer<S>,
[src]
L: Layer<S>,
fn with_subscriber(self, inner: S) -> Layered<Self, S, S>
[src]
Auto Trait Implementations
impl<S, T> RefUnwindSafe for OpenTelemetryLayer<S, T> where
S: RefUnwindSafe,
T: RefUnwindSafe,
S: RefUnwindSafe,
T: RefUnwindSafe,
impl<S, T> Send for OpenTelemetryLayer<S, T> where
S: Send,
T: Send,
S: Send,
T: Send,
impl<S, T> Sync for OpenTelemetryLayer<S, T> where
S: Sync,
T: Sync,
S: Sync,
T: Sync,
impl<S, T> Unpin for OpenTelemetryLayer<S, T> where
S: Unpin,
T: Unpin,
S: Unpin,
T: Unpin,
impl<S, T> UnwindSafe for OpenTelemetryLayer<S, T> where
S: UnwindSafe,
T: UnwindSafe,
S: UnwindSafe,
T: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<F> Instrument for F
[src]
fn instrument<S>(self, span: S) -> Instrumented<Self, S> where
S: Span,
[src]
S: Span,
fn in_active_span<T>(self, tracer: T) -> Instrumented<Self, <T as Tracer>::Span> where
T: Tracer,
[src]
T: Tracer,
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,