macro_rules! debug { (target: $target:expr, { $( $($k:ident).+ = $val:expr ),*, }, $($arg:tt)+ ) => { ... }; (target: $target:expr, { $( $($k:ident).+ = $val:expr ),* }, $($arg:tt)+ ) => { ... }; (target: $target:expr, $( $($k:ident).+ = $val:expr ),*, ) => { ... }; (target: $target:expr, $( $($k:ident).+ = $val:expr ),* ) => { ... }; (target: $target:expr, $($arg:tt)+ ) => { ... }; ({ $( $($k:ident).+ = $val:expr ),*, }, $($arg:tt)+ ) => { ... }; ({ $( $($k:ident).+ = $val:expr ),* }, $($arg:tt)+ ) => { ... }; ($( $($k:ident).+ = $val:expr ),*, ) => { ... }; ($( $($k:ident).+ = $val:expr ),* ) => { ... }; ($($arg:tt)+ ) => { ... }; }
Expand description
Constructs an event at the debug level.
When both a message and fields are included, curly braces ({
and }
) are
used to delimit the list of fields from the format string for the message.
A trailing comma on the final field is valid.
ยงExamples
use tokio_trace::field;
let pos = Position { x: 3.234, y: -1.223 };
debug!(x = field::debug(pos.x), y = field::debug(pos.y));
debug!(target: "app_events", { position = field::debug(&pos) }, "New position");