use tracing_subscriber::{EnvFilter, FmtSubscriber}; pub fn init_log_with_debug() { final_init(tracing::Level::DEBUG) } pub fn init_log_with_trace() { final_init(tracing::Level::TRACE) } pub fn init_log_with_info() { final_init(tracing::Level::INFO) } fn final_init(level: tracing::Level) { let filter = EnvFilter::from_default_env() .add_directive("exchanges=trace".parse().unwrap()) .add_directive("global=trace".parse().unwrap()) .add_directive("standard=trace".parse().unwrap()) .add_directive("tests=trace".parse().unwrap()) .add_directive("strategy=trace".parse().unwrap()); let subscriber = FmtSubscriber::builder() .with_env_filter(filter) .with_max_level(level) .with_span_events(tracing_subscriber::fmt::format::FmtSpan::FULL) .finish(); tracing::subscriber::set_global_default(subscriber).unwrap(); }