allow enable log with cli, limit log size (#1384)

* impl logger rpc
* use size based appender
* add log args
This commit is contained in:
Sijie.Sun
2025-09-18 16:35:12 +08:00
committed by GitHub
parent 56fd6e4ab6
commit e06e8a9e8a
17 changed files with 1296 additions and 38 deletions
+17 -1
View File
@@ -608,6 +608,20 @@ struct LoggingOptions {
help = t!("core_clap.file_log_dir").to_string()
)]
file_log_dir: Option<String>,
#[arg(
long,
env = "ET_FILE_LOG_SIZE",
help = t!("core_clap.file_log_size_mb").to_string()
)]
file_log_size: Option<u64>,
#[arg(
long,
env = "ET_FILE_LOG_COUNT",
help = t!("core_clap.file_log_count").to_string()
)]
file_log_count: Option<usize>,
}
rust_i18n::i18n!("locales", fallback = "en");
@@ -972,6 +986,8 @@ impl LoggingConfigLoader for &LoggingOptions {
level: self.file_log_level.clone(),
dir: self.file_log_dir.clone(),
file: None,
size_mb: self.file_log_size,
count: self.file_log_count,
}
}
}
@@ -1100,7 +1116,7 @@ fn win_service_main(arg: Vec<std::ffi::OsString>) {
}
async fn run_main(cli: Cli) -> anyhow::Result<()> {
init_logger(&cli.logging_options, false)?;
init_logger(&cli.logging_options, true)?;
if cli.config_server.is_some() {
set_default_machine_id(cli.machine_id);