rusty_bin/monitor/config/monitoring.rs
1//! Monitoring and metrics configuration
2use serde::{Deserialize, Serialize};
3use smartstring::alias::String;
4
5/// Monitoring and metrics configuration
6#[derive(Debug, Clone, Serialize, Deserialize)]
7pub struct MonitoringConfig {
8 /// Whether to enable metrics collection
9 pub enable_metrics: bool,
10 /// Log level for monitoring events
11 pub log_level: String,
12 /// Log format for monitoring events
13 pub log_format: String,
14 /// Whether to track latency metrics
15 pub track_latency: bool,
16 /// Whether to track throughput metrics
17 pub track_throughput: bool,
18 /// Whether to track memory usage metrics
19 pub track_memory_usage: bool,
20 /// Whether to track disk usage metrics
21 pub track_disk_usage: bool,
22 /// Maximum acceptable latency in milliseconds
23 pub max_latency_ms: u64,
24 /// Minimum acceptable throughput per second
25 pub min_throughput_per_second: u64,
26 /// Maximum acceptable memory usage in megabytes
27 pub max_memory_usage_mb: u64,
28 /// Maximum acceptable disk usage percentage
29 pub max_disk_usage_percent: u8,
30 /// Interval in seconds for collecting metrics
31 pub metrics_interval_seconds: u64,
32 /// Interval in seconds for health checks
33 pub health_check_interval_seconds: u64,
34}