HeinleinSupport/check_mk_extensions

cpufreq : doesn't work on Rspberry Pi 5

Closed this issue · 2 comments

$ /usr/lib/check_mk_agent/plugins/cpufreq 
<<<cpufreq>>>
cpu0 ondemand 1500000 1500000 2400000
cpu1 ondemand 1500000 1500000 2400000
cpu2 ondemand 1500000 1500000 2400000
cpu3 ondemand 1500000 1500000 2400000
cpu0 ondemand 1500000 1500000 2400000
cpu1 ondemand 1500000 1500000 2400000
cpu2 ondemand 1500000 1500000 2400000
cpu3 ondemand 1500000 1500000 2400000
cpu0 ondemand 1600000 1500000 2400000
cpu1 ondemand 1600000 1500000 2400000
cpu2 ondemand 1600000 1500000 2400000
cpu3 ondemand 1600000 1500000 2400000
cpu0 ondemand 1600000 1500000 2400000
cpu1 ondemand 1600000 1500000 2400000
cpu2 ondemand 1600000 1500000 2400000
cpu3 ondemand 1600000 1500000 2400000

These duplicates cause the graph to fail to render, saying

Cannot calculate graph recipes

Syntax error in expression '('rrd', 'house', 'pi5.house', 'CPU Frequencies', 'freq_cpu0', 'max', 1.0), ('rrd', 'house', 'pi5.house', 'CPU Frequencies', 'freq_cpu0', 'max', 1.0), ('rrd', 'house', 'pi5.house', 'CPU Frequencies', 'freq_cpu0', 'max', 1.0), ('rrd', 'house', 'pi5.house', 'CPU Frequencies', 'freq_cpu0', 'max', 1.0), ('operator', 'MERGE')': too many operands left

This system only has 4 CPU cores (as shown in top)

$ cat /sys/devices/system/cpu/cpu*/cpufreq/affected_cpus 
0 1 2 3
0 1 2 3
0 1 2 3
0 1 2 3

As a temporary workaround, hard coding cpuid to match the cpu* folder works, but the code really needs to track it's seen an affected id before and not output it again

cpuid=${cpudir:27:1}

should be fixed with package version 2.4.0