feat(agent): métriques CPU, RAM, réseau, uptime
Implémentation complète des 4 modules sysinfo 0.30 (sans default-features). - cpu: moyenne sur tous les cœurs via refresh_cpu_usage() - memory: used/free/total via System - network: total_received/total_transmitted via Networks - uptime: System::uptime() statique 10 tests unitaires passent.
This commit is contained in:
@@ -1,3 +1,20 @@
|
||||
pub fn get(_sys: &sysinfo::System) -> (u64, u64, u64) {
|
||||
(0, 0, 0)
|
||||
use sysinfo::System;
|
||||
|
||||
pub fn get(sys: &System) -> (u64, u64, u64) {
|
||||
(sys.used_memory(), sys.free_memory(), sys.total_memory())
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
use sysinfo::System;
|
||||
|
||||
#[test]
|
||||
fn test_memory_coherent() {
|
||||
let mut sys = System::new();
|
||||
sys.refresh_memory();
|
||||
let (used, free, total) = get(&sys);
|
||||
assert!(total > 0, "Total mémoire nul");
|
||||
assert!(used + free <= total + 1024 * 1024, "used + free > total");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user