🛈 Note: This is pre-release documentation for the upcoming tracing 0.2.0 ecosystem.

For the release documentation, please see docs.rs, instead.

pub struct Layered<S, I, C = I> { /* private fields */ }
Expand description

A collector composed of a collector wrapped by one or more subscribers.

Implementations§

source§

impl<S, C> Layered<S, C>
where S: Subscribe<C>, C: Collect,

source

pub fn is<T: Any>(&self) -> bool

Returns true if this Collector is the same type as T.

source

pub fn downcast_ref<T: Any>(&self) -> Option<&T>

Returns some reference to this Collector value if it is of type T, or None if it isn’t.

Trait Implementations§

source§

impl<S: Clone, I: Clone, C: Clone> Clone for Layered<S, I, C>

source§

fn clone(&self) -> Layered<S, I, C>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<S, C> Collect for Layered<S, C>
where S: Subscribe<C>, C: Collect,

source§

fn register_callsite(&self, metadata: &'static Metadata<'static>) -> Interest

Registers a new callsite with this collector, returning whether or not the collector is interested in being notified about the callsite. Read more
source§

fn enabled(&self, metadata: &Metadata<'_>) -> bool

Returns true if a span or event with the specified metadata would be recorded. Read more
source§

fn max_level_hint(&self) -> Option<LevelFilter>

Returns the highest verbosity level that this Collector will enable, or None, if the collector does not implement level-based filtering or chooses not to implement this method. Read more
source§

fn new_span(&self, span: &Attributes<'_>) -> Id

Visit the construction of a new span, returning a new span ID for the span being constructed. Read more
source§

fn record(&self, span: &Id, values: &Record<'_>)

Record a set of values on a span. Read more
source§

fn record_follows_from(&self, span: &Id, follows: &Id)

Adds an indication that span follows from the span with the id follows. Read more
source§

fn event_enabled(&self, event: &Event<'_>) -> bool

Determine if an Event should be recorded. Read more
source§

fn event(&self, event: &Event<'_>)

Records that an Event has occurred. Read more
source§

fn enter(&self, span: &Id)

Records that a span has been entered. Read more
source§

fn exit(&self, span: &Id)

Records that a span has been exited. Read more
source§

fn clone_span(&self, old: &Id) -> Id

Notifies the collector that a span ID has been cloned. Read more
source§

fn drop_span(&self, id: Id)

👎Deprecated since 0.1.2: use Collector::try_close instead
This method is deprecated. Read more
source§

fn try_close(&self, id: Id) -> bool

Notifies the collector that a span ID has been dropped, and returns true if there are now 0 IDs that refer to that span. Read more
source§

fn current_span(&self) -> Current

Returns a type representing this collector’s view of the current span. Read more
source§

fn on_register_dispatch(&self, collector: &Dispatch)

Invoked when this collector becomes a Dispatch. Read more
source§

unsafe fn downcast_raw(&self, id: TypeId) -> Option<NonNull<()>>

If self is the same type as the provided TypeId, returns an untyped NonNull pointer to that type. Otherwise, returns None. Read more
source§

impl<A, B, S> Debug for Layered<A, B, S>
where A: Debug, B: Debug,

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'a, S, C> LookupSpan<'a> for Layered<S, C>
where C: Collect + LookupSpan<'a>,

§

type Data = <C as LookupSpan<'a>>::Data

The type of span data stored in this registry.
source§

fn span_data(&'a self, id: &Id) -> Option<Self::Data>

Returns the SpanData for a given Id, if it exists.
source§

fn register_filter(&mut self) -> FilterId

Available on crate feature registry only.
source§

fn span(&'a self, id: &Id) -> Option<SpanRef<'_, Self>>
where Self: Sized,

Returns a SpanRef for the span with the given Id, if it exists. Read more
source§

impl<C, A, B> Subscribe<C> for Layered<A, B, C>
where A: Subscribe<C>, B: Subscribe<C>, C: Collect,

source§

fn on_register_dispatch(&self, collector: &Dispatch)

Performs late initialization when installing this subscriber as a collector. Read more
source§

fn on_subscribe(&mut self, collect: &mut C)

Performs late initialization when attaching a subscriber to a collector. Read more
source§

fn register_callsite(&self, metadata: &'static Metadata<'static>) -> Interest

Registers a new callsite with this subscriber, returning whether or not the subscriber is interested in being notified about the callsite, similarly to Collect::register_callsite. Read more
source§

fn enabled(&self, metadata: &Metadata<'_>, ctx: Context<'_, C>) -> bool

Returns true if this subscriber is interested in a span or event with the given metadata in the current Context, similarly to Collect::enabled. Read more
source§

fn on_new_span(&self, attrs: &Attributes<'_>, id: &Id, ctx: Context<'_, C>)

Notifies this subscriber that a new span was constructed with the given Attributes and Id.
source§

fn on_record(&self, span: &Id, values: &Record<'_>, ctx: Context<'_, C>)

Notifies this subscriber that a span with the given Id recorded the given values.
source§

fn on_follows_from(&self, span: &Id, follows: &Id, ctx: Context<'_, C>)

Notifies this subscriber that a span with the ID span recorded that it follows from the span with the ID follows.
source§

fn event_enabled(&self, event: &Event<'_>, ctx: Context<'_, C>) -> bool

Called before on_event, to determine if on_event should be called.
source§

fn on_event(&self, event: &Event<'_>, ctx: Context<'_, C>)

Notifies this subscriber that an event has occurred.
source§

fn on_enter(&self, id: &Id, ctx: Context<'_, C>)

Notifies this subscriber that a span with the given ID was entered.
source§

fn on_exit(&self, id: &Id, ctx: Context<'_, C>)

Notifies this subscriber that the span with the given ID was exited.
source§

fn on_close(&self, id: Id, ctx: Context<'_, C>)

Notifies this subscriber that the span with the given ID has been closed.
source§

fn on_id_change(&self, old: &Id, new: &Id, ctx: Context<'_, C>)

Notifies this subscriber that a span ID has been cloned, and that the subscriber returned a different ID.
source§

fn and_then<S>(self, subscriber: S) -> Layered<S, Self, C>
where S: Subscribe<C>, Self: Sized,

Composes this subscriber around the given collector, returning a Layered struct implementing Subscribe. Read more
source§

fn with_collector(self, inner: C) -> Layered<Self, C>
where Self: Sized,

Composes this subscriber with the given collector, returning a Layered struct that implements Collect. Read more
source§

fn with_filter<F>(self, filter: F) -> Filtered<Self, F, C>
where Self: Sized, F: Filter<C>,

Available on crate features registry and std only.
Combines self with a Filter, returning a Filtered subscriber. Read more

Auto Trait Implementations§

§

impl<S, I, C> RefUnwindSafe for Layered<S, I, C>

§

impl<S, I, C> Send for Layered<S, I, C>
where I: Send, S: Send,

§

impl<S, I, C> Sync for Layered<S, I, C>
where I: Sync, S: Sync,

§

impl<S, I, C> Unpin for Layered<S, I, C>
where I: Unpin, S: Unpin,

§

impl<S, I, C> UnwindSafe for Layered<S, I, C>
where I: UnwindSafe, S: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<C> CollectExt for C
where C: Collect,

source§

fn with<S>(self, subscriber: S) -> Layered<S, Self>
where S: Subscribe<Self>, Self: Sized,

Wraps self with the provided subscriber.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> SubscriberInitExt for T
where T: Into<Dispatch>,

source§

fn set_default(self) -> DefaultGuard

Available on crate feature std only.
Sets self as the default subscriber in the current scope, returning a guard that will unset it when dropped. Read more
source§

fn try_init(self) -> Result<(), TryInitError>

Attempts to set self as the global default subscriber in the current scope, returning an error if one is already set. Read more
source§

fn init(self)

Attempts to set self as the global default subscriber in the current scope, panicking if this fails. Read more
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithCollector for T

source§

fn with_collector<C>(self, collector: C) -> WithDispatch<Self>
where C: Into<Dispatch>,

Attaches the provided collector to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_collector(self) -> WithDispatch<Self>

Attaches the current default collector to this type, returning a WithDispatch wrapper. Read more