Struct Dispatch
pub struct Dispatch { /* private fields */ }Expand description
Dispatch trace data to a Subscriber.
Implementations§
§impl Dispatch
impl Dispatch
pub fn none() -> Dispatch
Available on crate feature cpu_os_threads only.
pub fn none() -> Dispatch
cpu_os_threads only.Returns a new Dispatch that discards events and spans.
pub fn new<S>(subscriber: S) -> Dispatch
Available on crate feature cpu_os_threads only.
pub fn new<S>(subscriber: S) -> Dispatch
cpu_os_threads only.Returns a Dispatch that forwards to the given Subscriber.
pub fn downgrade(&self) -> WeakDispatch
Available on crate feature cpu_os_threads only.
pub fn downgrade(&self) -> WeakDispatch
cpu_os_threads only.Creates a WeakDispatch from this Dispatch.
A WeakDispatch is similar to a Dispatch, but it does not prevent
the underlying Subscriber from being dropped. Instead, it only permits
access while other references to the Subscriber exist. This is equivalent
to the standard library’s Arc::downgrade method, but for Dispatch
rather than Arc.
The primary use for creating a WeakDispatch is to allow a Subscriber
to hold a cyclical reference to itself without creating a memory leak.
See here for details.
pub fn register_callsite(
&self,
metadata: &'static Metadata<'static>,
) -> Interest
Available on crate feature cpu_os_threads only.
pub fn register_callsite( &self, metadata: &'static Metadata<'static>, ) -> Interest
cpu_os_threads only.Registers a new callsite with this subscriber, returning whether or not the subscriber is interested in being notified about the callsite.
This calls the register_callsite function on the Subscriber
that this Dispatch forwards to.
pub fn new_span(&self, span: &Attributes<'_>) -> Id
Available on crate feature cpu_os_threads only.
pub fn new_span(&self, span: &Attributes<'_>) -> Id
cpu_os_threads only.Record the construction of a new span, returning a new ID for the span being constructed.
This calls the new_span function on the Subscriber that this
Dispatch forwards to.
pub fn record(&self, span: &Id, values: &Record<'_>)
Available on crate feature cpu_os_threads only.
pub fn record(&self, span: &Id, values: &Record<'_>)
cpu_os_threads only.Record a set of values on a span.
This calls the record function on the Subscriber that this
Dispatch forwards to.
pub fn record_follows_from(&self, span: &Id, follows: &Id)
Available on crate feature cpu_os_threads only.
pub fn record_follows_from(&self, span: &Id, follows: &Id)
cpu_os_threads only.Adds an indication that span follows from the span with the id
follows.
This calls the record_follows_from function on the Subscriber
that this Dispatch forwards to.
pub fn enabled(&self, metadata: &Metadata<'_>) -> bool
Available on crate feature cpu_os_threads only.
pub fn enabled(&self, metadata: &Metadata<'_>) -> bool
cpu_os_threads only.Returns true if a span with the specified metadata would be recorded.
This calls the enabled function on the Subscriber that this
Dispatch forwards to.
pub fn event(&self, event: &Event<'_>)
Available on crate feature cpu_os_threads only.
pub fn event(&self, event: &Event<'_>)
cpu_os_threads only.Records that an Event has occurred.
This calls the event function on the Subscriber that this
Dispatch forwards to.
pub fn enter(&self, span: &Id)
Available on crate feature cpu_os_threads only.
pub fn enter(&self, span: &Id)
cpu_os_threads only.Records that a span has been can_enter.
This calls the enter function on the Subscriber that this
Dispatch forwards to.
pub fn exit(&self, span: &Id)
Available on crate feature cpu_os_threads only.
pub fn exit(&self, span: &Id)
cpu_os_threads only.Records that a span has been exited.
This calls the exit function on the Subscriber that this
Dispatch forwards to.
pub fn clone_span(&self, id: &Id) -> Id
Available on crate feature cpu_os_threads only.
pub fn clone_span(&self, id: &Id) -> Id
cpu_os_threads only.Notifies the subscriber that a span ID has been cloned.
This function must only be called with span IDs that were returned by
this Dispatch’s new_span function. The tracing crate upholds
this guarantee and any other libraries implementing instrumentation APIs
must as well.
This calls the clone_span function on the Subscriber that this
Dispatch forwards to.
pub fn drop_span(&self, id: Id)
👎Deprecated since 0.1.2: use Dispatch::try_close insteadAvailable on crate feature cpu_os_threads only.
pub fn drop_span(&self, id: Id)
Dispatch::try_close insteadcpu_os_threads only.Notifies the subscriber that a span ID has been dropped.
This function must only be called with span IDs that were returned by
this Dispatch’s new_span function. The tracing crate upholds
this guarantee and any other libraries implementing instrumentation APIs
must as well.
This calls the drop_span function on the Subscriber that this
Dispatch forwards to.
Deprecated: The
try_close method is functionally identical, but returns
true if the span is now closed. It should be used
instead of this method.
pub fn try_close(&self, id: Id) -> bool
Available on crate feature cpu_os_threads only.
pub fn try_close(&self, id: Id) -> bool
cpu_os_threads only.Notifies the subscriber that a span ID has been dropped, and returns
true if there are now 0 IDs referring to that span.
This function must only be called with span IDs that were returned by
this Dispatch’s new_span function. The tracing crate upholds
this guarantee and any other libraries implementing instrumentation APIs
must as well.
This calls the try_close function on the Subscriber that this
Dispatch forwards to.
pub fn current_span(&self) -> Current
Available on crate feature cpu_os_threads only.
pub fn current_span(&self) -> Current
cpu_os_threads only.Returns a type representing this subscriber’s view of the current span.
This calls the current function on the Subscriber that this
Dispatch forwards to.
pub fn is<T>(&self) -> boolwhere
T: Any,
Available on crate feature cpu_os_threads only.
pub fn is<T>(&self) -> boolwhere
T: Any,
cpu_os_threads only.Returns true if this Dispatch forwards to a Subscriber of type
T.
pub fn downcast_ref<T>(&self) -> Option<&T>where
T: Any,
Available on crate feature cpu_os_threads only.
pub fn downcast_ref<T>(&self) -> Option<&T>where
T: Any,
cpu_os_threads only.Returns some reference to the Subscriber this Dispatch forwards to
if it is of type T, or None if it isn’t.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Dispatch
impl !RefUnwindSafe for Dispatch
impl Send for Dispatch
impl Sync for Dispatch
impl Unpin for Dispatch
impl !UnwindSafe for Dispatch
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.