huber_common/
log.rs

1use std::str::FromStr;
2
3use log::LevelFilter;
4
5use crate::model::config::Config;
6
7pub struct Logger;
8
9impl Logger {
10    pub fn init(config: &Config) -> anyhow::Result<()> {
11        match LevelFilter::from_str(&config.log_level.to_uppercase())? {
12            LevelFilter::Off => {
13                env_logger::builder()
14                    .filter_level(LevelFilter::Info)
15                    .default_format()
16                    .format_target(false)
17                    .format_timestamp(None)
18                    .try_init()?;
19            }
20            value => {
21                env_logger::builder()
22                    .filter_level(value)
23                    .default_format()
24                    .try_init()?;
25            }
26        }
27
28        Ok(())
29    }
30}