diff options
| author | Jokler <jokler.contact@gmail.com> | 2018-04-27 03:29:59 +0200 |
|---|---|---|
| committer | Jokler <jokler.contact@gmail.com> | 2018-04-27 03:29:59 +0200 |
| commit | 645bb1c2bfaecd1bca3da4b862ecffbd18bf3086 (patch) | |
| tree | 54aa437017cb986b93675b5778dea53001af5cae /src/main.rs | |
| parent | 87120d35c1e2ee7eff52e9fd2d0a8458206a4cb6 (diff) | |
| download | frippy-645bb1c2bfaecd1bca3da4b862ecffbd18bf3086.tar.gz frippy-645bb1c2bfaecd1bca3da4b862ecffbd18bf3086.zip | |
Main: Replace the logger with log4rs
Diffstat (limited to 'src/main.rs')
| -rw-r--r-- | src/main.rs | 51 |
1 files changed, 10 insertions, 41 deletions
diff --git a/src/main.rs b/src/main.rs index 3660ccd..aae6035 100644 --- a/src/main.rs +++ b/src/main.rs @@ -4,6 +4,7 @@ extern crate frippy; extern crate glob; extern crate irc; +extern crate log4rs; extern crate time; #[cfg(feature = "mysql")] @@ -21,7 +22,6 @@ extern crate failure; #[macro_use] extern crate log; -use log::{Level, LevelFilter, Metadata, Record}; use std::collections::HashMap; #[cfg(feature = "mysql")] use std::sync::Arc; @@ -44,58 +44,27 @@ use frippy::Config; #[cfg(feature = "mysql")] embed_migrations!(); -struct Logger; - -impl log::Log for Logger { - fn enabled(&self, metadata: &Metadata) -> bool { - metadata.target().contains("frippy") - } - - fn log(&self, record: &Record) { - if self.enabled(record.metadata()) { - if record.metadata().level() >= Level::Debug { - println!( - "[{}]({}) {} -> {}", - time::now().rfc822(), - record.level(), - record.target(), - record.args() - ); - } else { - println!( - "[{}]({}) {}", - time::now().rfc822(), - record.level(), - record.args() - ); - } +fn main() { + if let Err(e) = log4rs::init_file("log.yml", Default::default()) { + use log4rs::Error; + match e { + Error::Log(e) => eprintln!("Log4rs error: {}", e), + Error::Log4rs(e) => eprintln!("Failed to parse \"log.yml\" as log4rs config: {}", e), } - } - fn flush(&self) {} -} - -static LOGGER: Logger = Logger; + return; + } -fn main() { // Print any errors that caused frippy to shut down if let Err(e) = run() { let text = e.causes() .skip(1) .fold(format!("{}", e), |acc, err| format!("{}: {}", acc, err)); error!("{}", text); - }; + } } fn run() -> Result<(), Error> { - log::set_max_level(if cfg!(debug_assertions) { - LevelFilter::Debug - } else { - LevelFilter::Info - }); - - log::set_logger(&LOGGER).unwrap(); - // Load all toml files in the configs directory let mut configs = Vec::new(); for toml in glob("configs/*.toml").unwrap() { |
