From 569107cf0d304d801c22ce2bc8060e2b498e362f Mon Sep 17 00:00:00 2001 From: kafeikui Date: Fri, 24 May 2024 00:05:46 +0800 Subject: [PATCH] fix LoggerDescriptorHolder --- crates/core/src/types/config.rs | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/crates/core/src/types/config.rs b/crates/core/src/types/config.rs index 9737f6f..ae9c3e7 100644 --- a/crates/core/src/types/config.rs +++ b/crates/core/src/types/config.rs @@ -81,7 +81,7 @@ struct ConfigHolder { pub data_path: Option, pub account: Account, pub listeners: Option>, - pub logger: Option, + pub logger: Option, pub time_limits: Option, pub relayed_chains: Vec, } @@ -111,6 +111,13 @@ impl Default for ConfigHolder { } } } +#[derive(Debug, Clone, Serialize, Deserialize)] +pub struct LoggerDescriptorHolder { + context_logging: bool, + log_file_path: Option, + #[serde(deserialize_with = "deserialize_limit")] + rolling_file_size: u64, +} #[derive(Debug, Clone, Serialize, Deserialize)] pub struct LoggerDescriptor { @@ -131,6 +138,22 @@ impl Default for LoggerDescriptor { } impl LoggerDescriptor { + pub fn from(logger_descriptor_holder: LoggerDescriptorHolder) -> Self { + let context_logging = logger_descriptor_holder.context_logging; + let log_file_path = if logger_descriptor_holder.log_file_path.is_none() { + "log/".to_string() + } else { + logger_descriptor_holder.log_file_path.unwrap() + }; + let rolling_file_size = logger_descriptor_holder.rolling_file_size; + + Self { + context_logging, + log_file_path, + rolling_file_size, + } + } + pub fn get_context_logging(&self) -> bool { self.context_logging } @@ -538,7 +561,7 @@ impl From for Config { let logger = if config_holder.logger.is_none() { LoggerDescriptor::default() } else { - config_holder.logger.unwrap() + LoggerDescriptor::from(config_holder.logger.unwrap()) }; let time_limits = if config_holder.time_limits.is_none() { TimeLimitDescriptor::default()