use serde::{Deserialize, Serialize};
fn default_true() -> bool { true }
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct MonitoringConfig {
#[serde(default = "default_true")]
pub enabled: bool,
#[serde(default = "default_true")]
pub metrics_enabled: bool,
#[serde(default = "default_true")]
pub tracing_enabled: bool,
#[serde(default = "default_true")]
pub health_check_enabled: bool,
#[serde(default)]
pub prometheus_port: Option<u16>,
}
impl Default for MonitoringConfig {
fn default() -> Self {
Self {
enabled: true,
metrics_enabled: true,
tracing_enabled: true,
health_check_enabled: true,
prometheus_port: Some(9090),
}
}
}