1

Ubuntu 18.04 system has kernel module coretemp kernel module installed:

% lsmod | grep coretemp
coretemp               20480  0

It also has command-line utilities lm-sensors to check temperatures installed:

% which sensors
/usr/bin/sensors

% dpkg -S /usr/bin/sensors
lm-sensors: /usr/bin/sensors

Calling sensors works + shows all temperatures (package + 4 CPU core temps):

% sensors
coretemp-isa-0000
Adapter: ISA adapter
Package id 0: +44.0°C (high = +100.0°C, crit = +100.0°C) ALARM (CRIT)
Core 0:    +42.0°C (high = +100.0°C, crit = +100.0°C) ALARM (CRIT)
Core 1:    +41.0°C (high = +100.0°C, crit = +100.0°C) ALARM (CRIT)
Core 2:    +44.0°C (high = +100.0°C, crit = +100.0°C) ALARM (CRIT)
Core 3:    +41.0°C (high = +100.0°C, crit = +100.0°C) ALARM (CRIT)

However, looking at munin output in my browser, I see only the HDD temperature chart:

enter image description here

How can I make munin also monitor & display the CPU core temperatures?

things I tried (which didn't help)

% sudo munin-node-configure

% sudo ln -s /usr/share/munin/plugins/sensors_ /etc/munin/plugins/sensors_temp

1 Answer 1

1

Found the solution by digging into details and looking at the source code. Answer for the benefit of future users.

Make sure plugin output matches supported regexes

Looking at the plugin implementation: /usr/share/munin/plugins/sensors_ I noticed that the plugin has detailed regexes in a (perl) global hash called %config. There are 4 supported sensor categories:

  • fan (Fan speeds in RPM)
  • temp (Temperature in Celsius)
  • volt (Voltage in Volts)
  • power (Power in Watts)

Since the regexes are very specific, it is important to make sure that the output of the sensors command-line utility, matches these regexes exactly. You cannot call sensors -u when the munin plugin expects output in the format generated by sensors (without the -u option).

Make sure symlink name matches a sensors category

The name of the symlink from /etc/munin/plugins to /usr/share/munin/plugins/sensors_ must match a supported category. The category name is used as the %config key which defines each regex. Extensions like fan or temp, which match a supported category are good:

sensors_fan -> /usr/share/munin/plugins/sensors_
sensors_temp -> /usr/share/munin/plugins/sensors_

But using tmp or cpu_temp instead of temp will not work.

Restart the munin-node service

Another detail that I missed, was the need to restart the munin-node service after every change in configuration or adding a plugin symlink:

sudo systemctl restart munin-node

Remove empty charts of unsupported/missing devices

If you see empty graphs for non-existent devices. It is also recommended to remove reports on non-exiting devices:

munin-node-configure --suggest --remove-also --shell | bash

Result

Now munin shows all my CPU + other system temperatures:

weekly temperatures chart

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .