use serde::{Deserialize, Serialize}; #[derive(Serialize, Deserialize, Debug, Default)] pub struct AgentMetrics { pub hostname: String, pub ip: String, pub status: String, pub cpu_percent: Option, pub memory_used: Option, pub memory_free: Option, pub memory_total: Option, pub hdd_used: Option, pub hdd_free: Option, pub hdd_total: Option, pub uptime: Option, pub network_rx: Option, pub network_tx: Option, pub temperature: Option, pub smart: Option, } #[derive(Serialize, Deserialize, Debug, Clone)] pub struct SmartMetrics { pub passed: bool, pub temperature: Option, pub reallocated_sectors: Option, pub power_on_hours: Option, pub wear_level: Option, }