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

@ -10,4 +10,5 @@ NOXIS_LOG_TO = "/var/log/noxis/noxis.log"
NOXIS_REMOTE_SERVER_URL = "ip.ip.ip.ip:port"
NOXIS_CONFIG_PATH = "./settings.json"
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(),
)
})
.filter(None, LevelFilter::Info)
.filter(None, LevelFilter::from_env())
.target(env_logger::Target::Stdout)
// temporary deprecated
// .target(env_logger::Target::Pipe(log_target))
@ -58,6 +58,29 @@ pub fn setup_logger() -> Result<(), crate::options::structs::CustomError> {
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)]
mod logger_tests {
use super::*;