diff options
| author | 魏曹先生 <1992414357@qq.com> | 2025-12-01 22:21:57 +0800 |
|---|---|---|
| committer | 魏曹先生 <1992414357@qq.com> | 2025-12-01 22:21:57 +0800 |
| commit | 899e109f6ef3a32c25f75aec5690bb800c3466ac (patch) | |
| tree | 98eb5bae5a40d41f891ffa67f92561c91df14b60 /src/utils/logger.rs | |
| parent | f28a6f1f3460252a7e7fe4b8e4a1ef150e587f38 (diff) | |
Add --show-log flag and refactor vault setup
- Add `--show-log` flag to override profile logger setting - Add
validation for conflicting `--no-log` and `--show-log` flags - Refactor
`Vault::setup_vault` to accept vault name parameter - Update logger
initialization to respect configured log level - Add new dependencies:
`whoami`, `redox_syscall`, `wasite`, `web-sys` - Add error message for
conflicting log flags in locales
Diffstat (limited to 'src/utils/logger.rs')
| -rw-r--r-- | src/utils/logger.rs | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/utils/logger.rs b/src/utils/logger.rs index e1b9e65..5871094 100644 --- a/src/utils/logger.rs +++ b/src/utils/logger.rs @@ -2,10 +2,12 @@ use std::path::Path; use colored::Colorize; use env_logger::{Builder, Target}; -use just_enough_vcs::utils::string_proc::format_path::format_path; +use just_enough_vcs::{ + utils::string_proc::format_path::format_path, vcs::data::vault::config::LoggerLevel, +}; use log::{Level, LevelFilter}; -pub fn build_env_logger(log_path: impl AsRef<Path>) { +pub fn build_env_logger(log_path: impl AsRef<Path>, logger_level: LoggerLevel) { use std::io::{self, Write}; struct MultiWriter<A, B> { @@ -70,10 +72,16 @@ pub fn build_env_logger(log_path: impl AsRef<Path>) { let log_file = std::fs::File::create(log_path).expect("Failed to create log file"); let combined_target = Target::Pipe(Box::new(MultiWriter::new(std::io::stdout(), log_file))); + let level = match logger_level { + LoggerLevel::Debug => LevelFilter::Debug, + LoggerLevel::Trace => LevelFilter::Trace, + LoggerLevel::Info => LevelFilter::Info, + }; + builder .format(log_format) - .filter(None, LevelFilter::Info) - .filter_module("just_enough_vcs", LevelFilter::Trace) + .filter(None, level.clone()) + .filter_module("just_enough_vcs", level) .target(combined_target) .init(); } |
