From 50bc04d9ddc6fa432f9413281457e5c7fe8b8d82 Mon Sep 17 00:00:00 2001 From: Benoit Petit Date: Wed, 13 Dec 2023 17:19:39 +0100 Subject: [PATCH] fix: troubleshooting host metrics on redhat8 --- src/sensors/powercap_rapl.rs | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/sensors/powercap_rapl.rs b/src/sensors/powercap_rapl.rs index 72bf9014..6a35c6e1 100644 --- a/src/sensors/powercap_rapl.rs +++ b/src/sensors/powercap_rapl.rs @@ -76,10 +76,11 @@ impl RecordReader for Topology { // else return pkg + dram + F(disks) if let Some(psys_record) = self.get_rapl_psys_energy_microjoules() { + debug!("Using PSYS metric"); Ok(psys_record) } else { let mut total: i128 = 0; - debug!("Suming socket metrics to get host metric"); + debug!("Suming socket PKG and DRAM metrics to get host metric"); for s in &self.sockets { if let Ok(r) = s.read_record() { match r.value.trim().parse::() { @@ -87,14 +88,21 @@ impl RecordReader for Topology { total += val; }, Err(e) => { - debug!("could'nt convert {} to i128: {}", r.value, e); + warn!("could'nt convert {} to i128: {}", r.value.trim(), e); } } } for d in &s.domains { if d.name == "dram" { if let Ok(dr) = d.read_record() { - total = total + dr.value.parse::().unwrap() + match dr.value.trim().parse::() { + Ok(val) => { + total += val; + }, + Err(e) =>{ + warn!("could'nt convert {} to i128: {}", dr.value.trim(), e); + } + } } } }