mirror of
				https://github.com/csehviktor/status-monitor.git
				synced 2025-08-08 18:06:14 +02:00 
			
		
		
		
	create cpu breakdown
This commit is contained in:
		| @@ -1,10 +1,13 @@ | ||||
| use common::metrics::{Disk, Memory, Metrics, Network, SystemInfo, CPU}; | ||||
| use sysinfo::{Disks, Networks, System}; | ||||
|  | ||||
| use crate::cpu::CpuStatReader; | ||||
|  | ||||
| pub struct Collector { | ||||
|     sys: System, | ||||
|     disks: Disks, | ||||
|     networks: Networks, | ||||
|     cpu_reader: CpuStatReader, | ||||
| } | ||||
|  | ||||
| impl Collector { | ||||
| @@ -13,6 +16,7 @@ impl Collector { | ||||
|             sys: System::new_all(), | ||||
|             disks: Disks::new_with_refreshed_list(), | ||||
|             networks: Networks::new_with_refreshed_list(), | ||||
|             cpu_reader: CpuStatReader::new(), | ||||
|         } | ||||
|     } | ||||
|  | ||||
| @@ -46,16 +50,11 @@ impl Collector { | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     fn collect_cpu(&self) -> CPU { | ||||
|         let cpus = self.sys.cpus(); | ||||
|  | ||||
|         let threads = cpus.len(); | ||||
|         let usage = self.sys.global_cpu_usage(); | ||||
|  | ||||
|     fn collect_cpu(&mut self) -> CPU { | ||||
|         CPU { | ||||
|             brand: String::from(cpus[0].brand()), | ||||
|             usage, | ||||
|             threads, | ||||
|             usage: self.sys.global_cpu_usage(), | ||||
|             threads: self.sys.cpus().len(), | ||||
|             breakdown: self.cpu_reader.read_global_cpu_stats().unwrap_or_default() | ||||
|         } | ||||
|     } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user