aboutsummaryrefslogtreecommitdiff
path: root/src/log_setup.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/log_setup.rs')
-rw-r--r--src/log_setup.rs59
1 files changed, 13 insertions, 46 deletions
diff --git a/src/log_setup.rs b/src/log_setup.rs
index e483c2d..ff18483 100644
--- a/src/log_setup.rs
+++ b/src/log_setup.rs
@@ -1,51 +1,18 @@
-use fern::colors::{
- Color,
- ColoredLevelConfig,
-};
+use grate::tracing::Level;
-pub fn init(file_output: bool) -> anyhow::Result<()> {
- let colors = ColoredLevelConfig::new()
- .info(Color::Green)
- .debug(Color::BrightBlue)
- .trace(Color::BrightMagenta);
+pub fn init() {
+ let mut config = grate::Config::default();
- let mut logger = fern::Dispatch::new()
- .level_for("serenity::voice::connection", log::LevelFilter::Error)
- .chain(
- fern::Dispatch::new()
- .format(move |out, message, record| {
- out.finish(format_args!(
- "{} [{}] [{}] {}",
- chrono::Local::now().format("%_m/%_d/%y %l:%M:%S%P"),
- colors.color(record.level()),
- record.target(),
- message
- ))
- })
- .level(log::LevelFilter::Warn)
- .level_for("thulani", log::LevelFilter::Debug)
- .level_for("batch_delmeme", log::LevelFilter::Debug)
- .chain(std::io::stdout()),
- );
+ config.pretty = true;
- if file_output {
- logger = logger.chain(
- fern::Dispatch::new()
- .format(|out, message, record| {
- out.finish(format_args!(
- "{} [{}] [{}] {}",
- chrono::Local::now().format("%_m/%_d/%y %l:%M:%S%P"),
- record.level(),
- record.target(),
- message
- ))
- })
- .level(log::LevelFilter::Info)
- .level_for("thulani", log::LevelFilter::Trace)
- .level_for("batch_delmeme", log::LevelFilter::Trace)
- .chain(fern::log_file("thulani.log").expect("problem creating log file")),
- );
- }
+ config.default_filter = grate::LevelConfig {
+ default_debug_level: Level::INFO,
+ default_release_level: Level::INFO,
+ default_filters: vec![
+ (Level::ERROR, vec!["serenity::voice::connection".to_string()]),
+ (Level::DEBUG, vec!["thulani".to_string(), "batch_delmeme".to_string()]),
+ ],
+ };
- logger.apply().map_err(anyhow::Error::from)
+ grate::init(&config);
}