log level setitng added

migrate
prplV 2025-05-22 09:51:37 +03:00
parent df3934452b
commit 5fe95bfcd9
2 changed files with 26 additions and 2 deletions

View File

@ -11,3 +11,4 @@ NOXIS_REMOTE_SERVER_URL = "ip.ip.ip.ip:port"
NOXIS_CONFIG_PATH = "./settings.json" NOXIS_CONFIG_PATH = "./settings.json"
NOXIS_METRICS_MODE = "full" NOXIS_METRICS_MODE = "full"
NOXIS_SOCKET_PATH = "/path/to/noxis.sock" NOXIS_SOCKET_PATH = "/path/to/noxis.sock"
NOXIS_MAX_LOG_LEVEL = "TRACE"

View File

@ -49,7 +49,7 @@ pub fn setup_logger() -> Result<(), crate::options::structs::CustomError> {
record.args(), record.args(),
) )
}) })
.filter(None, LevelFilter::Info) .filter(None, LevelFilter::from_env())
.target(env_logger::Target::Stdout) .target(env_logger::Target::Stdout)
// temporary deprecated // temporary deprecated
// .target(env_logger::Target::Pipe(log_target)) // .target(env_logger::Target::Pipe(log_target))
@ -58,6 +58,29 @@ pub fn setup_logger() -> Result<(), crate::options::structs::CustomError> {
Ok(()) Ok(())
} }
trait FromEnv {
fn from_env() -> LevelFilter;
}
impl FromEnv for LevelFilter {
fn from_env() -> LevelFilter {
return match std::env::var("NOXIS_MAX_LOG_LEVEL") {
Ok(var) => {
match var.to_ascii_lowercase().trim().as_ref() {
"trace" => LevelFilter::Trace,
"debug" => LevelFilter::Debug,
"info" => LevelFilter::Info,
"error" => LevelFilter::Error,
"warn" => LevelFilter::Warn,
"off" => LevelFilter::Off,
_ => LevelFilter::Info,
}
},
Err(_) => LevelFilter::Info,
}
}
}
#[cfg(test)] #[cfg(test)]
mod logger_tests { mod logger_tests {
use super::*; use super::*;