[router] add --log-level to sgl-router (#6512)
This commit is contained in:
@@ -27,8 +27,8 @@ pub struct RouterConfig {
|
||||
pub metrics: Option<MetricsConfig>,
|
||||
/// Log directory (None = stdout only)
|
||||
pub log_dir: Option<String>,
|
||||
/// Verbose logging
|
||||
pub verbose: bool,
|
||||
/// Log level (None = info)
|
||||
pub log_level: Option<String>,
|
||||
}
|
||||
|
||||
/// Routing mode configuration
|
||||
@@ -177,7 +177,7 @@ impl Default for RouterConfig {
|
||||
discovery: None,
|
||||
metrics: None,
|
||||
log_dir: None,
|
||||
verbose: false,
|
||||
log_level: None,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,8 +37,8 @@ struct Router {
|
||||
eviction_interval_secs: u64,
|
||||
max_tree_size: usize,
|
||||
max_payload_size: usize,
|
||||
verbose: bool,
|
||||
log_dir: Option<String>,
|
||||
log_level: Option<String>,
|
||||
service_discovery: bool,
|
||||
selector: HashMap<String, String>,
|
||||
service_discovery_port: u16,
|
||||
@@ -129,7 +129,7 @@ impl Router {
|
||||
discovery,
|
||||
metrics,
|
||||
log_dir: self.log_dir.clone(),
|
||||
verbose: self.verbose,
|
||||
log_level: self.log_level.clone(),
|
||||
})
|
||||
}
|
||||
}
|
||||
@@ -150,8 +150,8 @@ impl Router {
|
||||
eviction_interval_secs = 60,
|
||||
max_tree_size = 2usize.pow(24),
|
||||
max_payload_size = 256 * 1024 * 1024, // 256MB default for large batches
|
||||
verbose = false,
|
||||
log_dir = None,
|
||||
log_level = None,
|
||||
service_discovery = false,
|
||||
selector = HashMap::new(),
|
||||
service_discovery_port = 80,
|
||||
@@ -179,8 +179,8 @@ impl Router {
|
||||
eviction_interval_secs: u64,
|
||||
max_tree_size: usize,
|
||||
max_payload_size: usize,
|
||||
verbose: bool,
|
||||
log_dir: Option<String>,
|
||||
log_level: Option<String>,
|
||||
service_discovery: bool,
|
||||
selector: HashMap<String, String>,
|
||||
service_discovery_port: u16,
|
||||
@@ -208,8 +208,8 @@ impl Router {
|
||||
eviction_interval_secs,
|
||||
max_tree_size,
|
||||
max_payload_size,
|
||||
verbose,
|
||||
log_dir,
|
||||
log_level,
|
||||
service_discovery,
|
||||
selector,
|
||||
service_discovery_port,
|
||||
@@ -283,9 +283,9 @@ impl Router {
|
||||
port: self.port,
|
||||
worker_urls: self.worker_urls.clone(),
|
||||
policy_config,
|
||||
verbose: self.verbose,
|
||||
max_payload_size: self.max_payload_size,
|
||||
log_dir: self.log_dir.clone(),
|
||||
log_level: self.log_level.clone(),
|
||||
service_discovery_config,
|
||||
prometheus_config,
|
||||
request_timeout_secs: self.request_timeout_secs,
|
||||
|
||||
@@ -278,9 +278,9 @@ pub struct ServerConfig {
|
||||
pub port: u16,
|
||||
pub worker_urls: Vec<String>,
|
||||
pub policy_config: PolicyConfig,
|
||||
pub verbose: bool,
|
||||
pub max_payload_size: usize,
|
||||
pub log_dir: Option<String>,
|
||||
pub log_level: Option<String>,
|
||||
pub service_discovery_config: Option<ServiceDiscoveryConfig>,
|
||||
pub prometheus_config: Option<PrometheusConfig>,
|
||||
pub request_timeout_secs: u64,
|
||||
@@ -292,11 +292,17 @@ pub async fn startup(config: ServerConfig) -> std::io::Result<()> {
|
||||
|
||||
let _log_guard = if !LOGGING_INITIALIZED.swap(true, Ordering::SeqCst) {
|
||||
Some(logging::init_logging(LoggingConfig {
|
||||
level: if config.verbose {
|
||||
Level::DEBUG
|
||||
} else {
|
||||
Level::INFO
|
||||
},
|
||||
level: config
|
||||
.log_level
|
||||
.as_deref()
|
||||
.and_then(|s| match s.to_uppercase().parse::<Level>() {
|
||||
Ok(l) => Some(l),
|
||||
Err(_) => {
|
||||
warn!("Invalid log level string: '{}'. Defaulting to INFO.", s);
|
||||
None
|
||||
}
|
||||
})
|
||||
.unwrap_or(Level::INFO),
|
||||
json_format: false,
|
||||
log_dir: config.log_dir.clone(),
|
||||
colorize: true,
|
||||
|
||||
Reference in New Issue
Block a user