Struct kernel::serial_trace::Event
source · pub struct Event<'a> {
fields: &'a ValueSet<'a>,
metadata: &'static Metadata<'static>,
parent: Parent,
}
Expand description
Event
s represent single points in time where something occurred during the
execution of a program.
An Event
can be compared to a log record in unstructured logging, but with
two key differences:
Event
s exist within the context of a span. Unlike log lines, they may be located within the trace tree, allowing visibility into the temporal context in which the event occurred, as well as the source code location.- Like spans,
Event
s have structured key-value data known as fields, which may include textual message. In general, a majority of the data associated with an event should be in the event’s fields rather than in the textual message, as the fields are more structured.
Fields§
§fields: &'a ValueSet<'a>
§metadata: &'static Metadata<'static>
§parent: Parent
Implementations§
source§impl<'a> Event<'a>
impl<'a> Event<'a>
sourcepub fn dispatch(metadata: &'static Metadata<'static>, fields: &'a ValueSet<'_>)
pub fn dispatch(metadata: &'static Metadata<'static>, fields: &'a ValueSet<'_>)
Constructs a new Event
with the specified metadata and set of values,
and observes it with the current subscriber.
sourcepub fn new(
metadata: &'static Metadata<'static>,
fields: &'a ValueSet<'a>,
) -> Event<'a>
pub fn new( metadata: &'static Metadata<'static>, fields: &'a ValueSet<'a>, ) -> Event<'a>
Returns a new Event
in the current span, with the specified metadata
and set of values.
sourcepub fn new_child_of(
parent: impl Into<Option<Id>>,
metadata: &'static Metadata<'static>,
fields: &'a ValueSet<'a>,
) -> Event<'a>
pub fn new_child_of( parent: impl Into<Option<Id>>, metadata: &'static Metadata<'static>, fields: &'a ValueSet<'a>, ) -> Event<'a>
Returns a new Event
as a child of the specified span, with the
provided metadata and set of values.
sourcepub fn child_of(
parent: impl Into<Option<Id>>,
metadata: &'static Metadata<'static>,
fields: &'a ValueSet<'_>,
)
pub fn child_of( parent: impl Into<Option<Id>>, metadata: &'static Metadata<'static>, fields: &'a ValueSet<'_>, )
Constructs a new Event
with the specified metadata and set of values,
and observes it with the current subscriber and an explicit parent.
sourcepub fn record(&self, visitor: &mut dyn Visit)
pub fn record(&self, visitor: &mut dyn Visit)
Visits all the fields on this Event
with the specified visitor.
sourcepub fn is_contextual(&self) -> bool
pub fn is_contextual(&self) -> bool
Returns true if the new event’s parent should be determined based on the current context.
If this is true and the current thread is currently inside a span, then that span should be the new event’s parent. Otherwise, if the current thread is not inside a span, then the new event will be the root of its own trace tree.