aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Perry <np@nathanperry.dev>2020-09-26 14:07:07 -0400
committerNathan Perry <np@nathanperry.dev>2020-09-26 14:07:07 -0400
commitb9a8db34b22c83ae1a4f5f446e54dc0d6be0bd40 (patch)
tree212fbfa5a55119aca90cf036d327d7322314c0ec
parent41e9ba74be6e7389c5aa157bd64987c1549afd57 (diff)
move log init into its own module
-rw-r--r--src/log.rs43
-rw-r--r--src/main.rs40
-rw-r--r--src/util.rs2
3 files changed, 47 insertions, 38 deletions
diff --git a/src/log.rs b/src/log.rs
new file mode 100644
index 0000000..a51ebcc
--- /dev/null
+++ b/src/log.rs
@@ -0,0 +1,43 @@
+use crate::{Result, Error};
+
+use fern::colors::{Color, ColoredLevelConfig};
+
+pub fn init() -> Result<()> {
+ let colors = ColoredLevelConfig::new()
+ .info(Color::Green)
+ .debug(Color::BrightBlue)
+ .trace(Color::BrightMagenta);
+
+ 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)
+ .chain(std::io::stdout())
+ )
+ .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)
+ .chain(fern::log_file("thulani.log").expect("problem creating log file"))
+ )
+ .apply()
+ .map_err(Error::from)
+} \ No newline at end of file
diff --git a/src/main.rs b/src/main.rs
index 6888f5f..daafbf4 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -68,6 +68,7 @@ mod commands;
mod util;
mod audio;
mod config;
+mod log;
pub type Error = anyhow::Error;
@@ -244,44 +245,7 @@ fn main() {
info!("starting");
- use fern::colors::{Color, ColoredLevelConfig};
- let colors = ColoredLevelConfig::new()
- .info(Color::Green)
- .debug(Color::BrightBlue)
- .trace(Color::BrightMagenta);
-
- 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)
- .chain(std::io::stdout())
- )
- .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)
- .chain(fern::log_file("thulani.log").expect("problem creating log file"))
- )
- .apply()
- .expect("error initializing logging");
+ log::init().expect("initializing logging");
let mut backoff_count: usize = 0;
diff --git a/src/util.rs b/src/util.rs
index ca50157..77f2dd4 100644
--- a/src/util.rs
+++ b/src/util.rs
@@ -51,6 +51,8 @@ impl CtxExt for Context {
#[inline]
fn send_result<A: AsRef<str>>(&self, channel: ChannelId, text: A, tts: bool) -> Result<MessageId> {
+ let text = text.as_ref();
+ debug!("sending message {:?} to channel {:?}", text, channel);
let result = channel.send_message(self, |m| m.content(text.as_ref()).tts(tts))?;
Ok(result.id)
}