fix power output

This commit is contained in:
Robin Appelman 2021-03-31 19:45:59 +02:00
commit 3af0288836
2 changed files with 11 additions and 5 deletions

View file

@ -11,7 +11,7 @@ In order to get the power monitoring output you'll need to give the palantir use
- Create `/etc/udev/rules.d/99-powermonitoring.rules` with
```udev
SUBSYSTEM=="powercap", ACTION=="add", RUN+="/bin/chgrp -R powermonitoring /sys%p", RUN+="/bin/chmod -R g=u /sys%p"
SUBSYSTEM=="powercap", ACTION=="add", RUN+="/bin/chgrp -R powermonitoring /sys%p", RUN+="/bin/chmod -R g=u /sys%p"
SUBSYSTEM=="powercap", ACTION=="change", ENV{TRIGGER}!="none", RUN+="/bin/chgrp -R powermonitoring /sys%p", RUN+="/bin/chmod -R g=u /sys%p"
```
@ -24,11 +24,11 @@ In order to get the power monitoring output you'll need to give the palantir use
- Add your user to the group
```
sudo usermod -a G powermonitoring palantir
sudo usermod -a -G powermonitoring palantir
```
- Verify that you can read energy usage
```
sudo su - palantir -c 'cat /sys/class/powercap/intel-rapl:0:0/energy_uj
sudo su - palantir -c 'cat /sys/class/powercap/intel-rapl:0:0/energy_uj'
```

View file

@ -23,7 +23,7 @@ impl PowerUsage {
for (i, package) in self.packages_uj.iter().enumerate() {
writeln!(
&mut w,
"total_power{{host=\"{}\", package=\"{}\"}} {:.3}",
"package_power{{host=\"{}\", package=\"{}\"}} {:.3}",
hostname,
i,
*package as f64 / 1_000_000.0
@ -37,7 +37,13 @@ pub fn power_usage() -> Result<Option<PowerUsage>> {
return Ok(None);
}
let dir = read_dir("/sys/devices/virtual/powercap/intel-rapl")?;
let dir = match read_dir("/sys/devices/virtual/powercap/intel-rapl") {
Ok(dir) => dir,
Err(_) => {
CAN_READ.store(false, Ordering::Relaxed);
return Ok(None);
}
};
let mut usage = PowerUsage::default();
for package in dir {
let package = package?;