use logforth::diagnostic::TaskLocalDiagnostic;
use logforth::diagnostic::task_local::FutureExt;
use logforth::record::LevelFilter;
use logforth_layout_text::TextLayout;
#[tokio::main]
async fn main() {
logforth::starter_log::builder()
.dispatch(|d| {
d.filter(LevelFilter::All)
.diagnostic(TaskLocalDiagnostic::default())
.append(logforth::append::Stderr::default().with_layout(TextLayout::default()))
})
.apply();
async {
async {
log::error!("Hello error!");
log::warn!("Hello warn!");
log::info!("Hello info!");
}
.with_task_local_context([("k3".to_string(), "v3".to_string())])
.await;
log::debug!("Hello debug!");
log::trace!("Hello trace!");
}
.with_task_local_context([("k1".to_string(), "v1".to_string())])
.with_task_local_context([("k2".to_string(), "v2".to_string())])
.await;
}