diff --git a/agent/src/metrics/mod.rs b/agent/src/metrics/mod.rs index 6529306..a0ca824 100644 --- a/agent/src/metrics/mod.rs +++ b/agent/src/metrics/mod.rs @@ -4,7 +4,7 @@ use tracing::{error, info}; use crate::collectors::{ backup::BackupCollector, cpu::CpuCollector, disk::DiskCollector, memory::MemoryCollector, - nixos::NixOSCollector, systemd::SystemdCollector, Collector, + nixos::NixOSCollector, smart::SmartCollector, systemd::SystemdCollector, Collector, }; use crate::config::{AgentConfig, CollectorConfig}; @@ -61,6 +61,14 @@ impl MetricCollectionManager { info!("BENCHMARK: Backup collector only"); } } + Some("smart") => { + // SMART collector only + if config.smart.enabled { + let smart_collector = SmartCollector; + collectors.push(Box::new(smart_collector)); + info!("BENCHMARK: SMART collector only"); + } + } Some("none") => { // No collectors - test agent loop only info!("BENCHMARK: No collectors enabled"); @@ -101,6 +109,12 @@ impl MetricCollectionManager { collectors.push(Box::new(nixos_collector)); info!("NixOS collector initialized"); } + + if config.smart.enabled { + let smart_collector = SmartCollector; + collectors.push(Box::new(smart_collector)); + info!("SMART collector initialized"); + } } }