Expand description
Span and Event key-value data.
Spans and events may be annotated with key-value data, referred to as known
as fields. These fields consist of a mapping from a key (corresponding to
a &str but represented internally as an array index) to a Value.
§Values and Collects
Collectors consume Values as fields attached to spans or Events.
The set of field keys on a given span or is defined on its Metadata.
When a span is created, it provides Attributes to the collector’s
new_span method, containing any fields whose values were provided when
the span was created; and may call the collector’s record method
with additional Records if values are added for more of its fields.
Similarly, the Event type passed to the collector’s event method
will contain any fields attached to each event.
tracing represents values as either one of a set of Rust primitives
(i64, u64, f64, i128, u128, bool, and &str) or using a
fmt::Display or fmt::Debug implementation. Collectors are provided
these primitive value types as dyn Value trait objects.
These trait objects can be formatted using fmt::Debug, but may also be
recorded as typed data by calling the Value::record method on these
trait objects with a visitor implementing the Visit trait. This trait
represents the behavior used to record values of various types. For example,
we might record integers by incrementing counters for their field names,
rather than printing them.
Structs§
- Debug
Value - A
Valuewhich serializes as a string usingfmt::Debug. - Display
Value - A
Valuewhich serializes usingfmt::Display. - Empty
- An empty field.
- Field
- An opaque key allowing O(1) access to a field in a
Span’s key-value data. - Field
Set - Describes the fields present on a span.
- Iter
- An iterator over a set of fields.
- Value
Set - A set of fields and values for a span.