formatter + implement status history

This commit is contained in:
csehviktor
2025-07-15 01:08:51 +02:00
parent 61fb1b1583
commit 6a311246f6
16 changed files with 245 additions and 110 deletions

View File

@@ -1,4 +1,4 @@
use common::metrics::{Disk, Memory, Metrics, Network, SystemInfo, CPU};
use common::metrics::{CPU, Disk, Memory, Metrics, Network, SystemInfo};
use sysinfo::{Disks, Networks, System};
use crate::cpu::CPUStatReader;
@@ -54,12 +54,16 @@ impl Collector {
CPU {
usage: self.sys.global_cpu_usage(),
threads: self.sys.cpus().len(),
breakdown: self.cpu_reader.read_global_cpu_stats().unwrap_or_default()
breakdown: self.cpu_reader.read_global_cpu_stats().unwrap_or_default(),
}
}
fn collect_disk(&self) -> Disk {
let disk = self.disks.iter().max_by_key(|disk| disk.total_space()).unwrap();
let disk = self
.disks
.iter()
.max_by_key(|disk| disk.total_space())
.unwrap();
Disk {
free: disk.available_space(),
@@ -77,17 +81,14 @@ impl Collector {
}
fn collect_network(&self) -> Network {
let (down, up): (u64, u64) = self.networks
let (down, up): (u64, u64) = self
.networks
.values()
.map(|data| (data.received(), data.transmitted()))
.fold((0, 0), |(acc_down, acc_up), (down, up)| {
(acc_down + down, acc_up + up)
});
Network {
down,
up,
}
Network { down, up }
}
}