diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/lib.rs | 25 |
1 files changed, 14 insertions, 11 deletions
@@ -4,18 +4,21 @@ pub mod handlers; use anyhow::{Context, Result}; pub fn configure_logger(quiet: u8, verbose: u8) -> Result<()> { + use log::LevelFilter; + use simple_logger::SimpleLogger; + let level = match (quiet, verbose) { - (0, 0) => Some(log::Level::Warn), - (0, 1) => Some(log::Level::Info), - (0, 2) => Some(log::Level::Debug), - (0, _) => Some(log::Level::Trace), - (1, _) => Some(log::Level::Error), - (_, _) => None, + (0, 0) => LevelFilter::Warn, + (0, 1) => LevelFilter::Info, + (0, 2) => LevelFilter::Debug, + (0, _) => LevelFilter::Trace, + (1, _) => LevelFilter::Error, + (_, _) => LevelFilter::Off, }; - if let Some(level) = level { - simple_logger::init_with_level(level).context("failed to configure logger")?; - } - - Ok(()) + SimpleLogger::new() + .with_level(level) + .with_module_level("tracing::span", LevelFilter::Warn) + .init() + .context("failed to configure logger") } |