use tracing::{debug, error, info, trace, warn};
pub fn init_logger() {
let _ = tracing_subscriber::fmt()
.with_env_filter(
tracing_subscriber::EnvFilter::try_from_default_env()
.unwrap_or_else(|_| tracing_subscriber::EnvFilter::new("warn")),
)
.try_init();
}
pub struct Logger {
module: String,
}
impl Logger {
pub fn new(module: &str) -> Self {
Self {
module: module.to_string(),
}
}
pub fn info(&self, message: &str) {
info!(module = %self.module, "{}", message);
}
pub fn debug(&self, message: &str) {
debug!(module = %self.module, "{}", message);
}
#[allow(dead_code)]
pub fn trace(&self, message: &str) {
trace!(module = %self.module, "{}", message);
}
pub fn warn(&self, message: &str) {
warn!(module = %self.module, "{}", message);
}
pub fn error(&self, message: &str, error_msg: &str) {
error!(module = %self.module, "{}: {}", message, error_msg);
}
}