1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
use tracing::{instrument, warn};
use tracing_subscriber::{layer::SubscriberExt, registry::Registry};
use tracing_tree::HierarchicalLayer;
fn main() {
let layer = HierarchicalLayer::default()
.with_writer(std::io::stdout)
.with_indent_lines(true)
.with_indent_amount(2)
.with_thread_names(true)
.with_thread_ids(true)
.with_targets(true)
.with_wraparound(5);
let subscriber = Registry::default().with(layer);
tracing::subscriber::set_global_default(subscriber).unwrap();
recurse(0);
}
#[instrument]
fn recurse(i: usize) {
warn!("boop");
if i > 20 {
warn!("bop");
return;
} else {
recurse(i + 1);
}
warn!("bop");
}
|