macro_rules! slog_filename {
() => {
slog::PushFnValue(|r: &slog::Record, ser: slog::PushFnValueSerializer| {
ser.emit(r.file())
})
};
}
macro_rules! slog_lineno {
() => {
slog::PushFnValue(|r: &slog::Record, ser: slog::PushFnValueSerializer| {
ser.emit(r.line())
})
};
}
#[cfg(test)]
#[allow(dead_code)]
mod loggers {
#[inline]
pub fn build_logger() -> slog::Logger {
build_null_logger()
}
pub fn build_null_logger() -> slog::Logger {
slog::Logger::root(slog::Discard, o!())
}
pub fn build_console_logger() -> slog::Logger {
use sloggers::terminal::TerminalLoggerBuilder;
use sloggers::types::Severity;
use sloggers::Build;
TerminalLoggerBuilder::new()
.level(Severity::Trace)
.build()
.expect("Unable to initialize logger")
}
}
#[cfg(test)]
pub use self::loggers::{build_console_logger, build_logger, build_null_logger};