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

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

logo
macro_rules! trace_span {
    (target: $target:expr, parent: $parent:expr, $name:expr, $($field:tt)*) => { ... };
    (target: $target:expr, parent: $parent:expr, $name:expr) => { ... };
    (parent: $parent:expr, $name:expr, $($field:tt)*) => { ... };
    (parent: $parent:expr, $name:expr) => { ... };
    (target: $target:expr, $name:expr, $($field:tt)*) => { ... };
    (target: $target:expr, $name:expr) => { ... };
    ($name:expr, $($field:tt)*) => { ... };
    ($name:expr) => { ... };
}
Expand description

Constructs a span at the trace level.

Fields and attributes are set using the same syntax as the span! macro.

See the top-level documentation for details on the syntax accepted by this macro.

Examples

trace_span!("my_span");
// is equivalent to:
span!(Level::TRACE, "my_span");
let span = trace_span!("my span");
span.in_scope(|| {
    // do work inside the span...
});