use serde::{Deserialize, Serialize};
use tracing::level_filters::LevelFilter;
use tracing::log::LevelFilter as OrmLevelFilter;
pub fn log_level(arg: &str) -> LevelFilter {
match arg {
"warn" => LevelFilter::WARN,
"error" => LevelFilter::ERROR,
"trace" => LevelFilter::TRACE,
"info" => LevelFilter::INFO,
"debug" => LevelFilter::DEBUG,
"off" => LevelFilter::OFF,
_ => LevelFilter::INFO,
}
}
pub fn log_orm_level(arg: &str) -> OrmLevelFilter {
match arg {
"warn" => OrmLevelFilter::Warn,
"error" => OrmLevelFilter::Error,
"trace" => OrmLevelFilter::Trace,
"info" => OrmLevelFilter::Info,
"debug" => OrmLevelFilter::Debug,
"off" => OrmLevelFilter::Off,
_ => OrmLevelFilter::Info,
}
}
pub fn show_log() {
let logo = r#"
_ _ ______ _ _ ____ _____ _ _ _____ _______
| | | | ____| | | | / __ \ | __ \| | | |/ ____|__ __|
| |__| | |__ | | | | | | | | | |__) | | | | (___ | |
| __ | __| | | | | | | | | | _ /| | | |\___ \ | |
| | | | |____| |____| |___| |__| | | | \ \| |__| |____) | | |
|_| |_|______|______|______\____/ |_| \_\\____/|_____/ |_|
"#;
println!("系统架构:{:?}", std::env::var("OS"));
println!("系统类型:{}", std::env::consts::ARCH);
println!("操作系统:{}", std::env::consts::FAMILY);
println!("{}", logo);
println!()
}
#[derive(Deserialize, Serialize, Debug)]
pub struct LogConfig {
pub dir: String,
pub level: String,
pub debug: bool,
pub enable_oper_log: bool,
pub log_type: i8,
pub cache_name: String,
}