use std::io; use tracing::level_filters::LevelFilter; use tracing_appender::rolling::{RollingFileAppender, Rotation}; use tracing_subscriber::{fmt, layer::SubscriberExt, prelude::*}; use super::util::VAR_LOG; pub fn log_init() { let log_appender = RollingFileAppender::builder() .rotation(Rotation::DAILY) .filename_prefix("mk-dl-bot.log") .max_log_files(7) .build(VAR_LOG) .unwrap(); let stderr_layer = fmt::layer() .with_writer(io::stderr) .with_filter(LevelFilter::ERROR); let file_layer = fmt::layer() .with_writer(log_appender) .with_filter(LevelFilter::INFO); tracing_subscriber::registry() .with(stderr_layer) .with(file_layer) .init(); }