1use crate::LogLevel;
2use log::{LevelFilter, debug};
3use simplelog::{ColorChoice, CombinedLogger, Config, TermLogger, TerminalMode};
4
5pub fn initialize_default_logger() {
6 CombinedLogger::init(vec![TermLogger::new(
7 LevelFilter::Trace,
8 Config::default(),
9 TerminalMode::Stderr,
10 ColorChoice::Auto,
11 )])
12 .unwrap();
13 log::set_max_level(LevelFilter::Trace);
14}
15
16pub fn initialize_logger_by_loglevel(log_level: &LogLevel) {
17 let level_filter = match log_level {
18 LogLevel::Error => LevelFilter::Error,
19 LogLevel::Warn => LevelFilter::Warn,
20 LogLevel::Info => LevelFilter::Info,
21 LogLevel::Debug => LevelFilter::Debug,
22 LogLevel::Trace => LevelFilter::Trace,
23 };
24
25 log::set_max_level(level_filter);
26 debug!("Log level is set to {:?}.", log_level);
27}