- Repository
- Munin (2.0)
- Last change
- 2019-03-13
- Graph Categories
- Family
- auto
- Capabilities
- Keywords
- Language
- Shell
- License
- GPL-2.0-only
- Authors
acpi
Name
acpi - Munin plugin to monitor the temperature in different ACPI Thermal zones.
Applicable Systems
Linux systems with ACPI support.
Configuration
Load the ‘thermal’ kernel module and the plugin gets the thermal zones from /sys/class/thermal/thermal_zone*/ automagically.
Usage
Link this plugin to @@CONFDIR@@/plugins/ and restart the munin-node.
Interpretation
The plugin shows the temperature from the different thermal zones.
Magic Markers
#%# family=auto
#%# capabilities=autoconf
Bugs
None known.
Version
v1.0 - 2006-11-13 v1.1 - 2018-03-24
Author
Nicolai Langfeldt (janl@linpro.no) 2006-11-13
License
GPLv2
#!@@GOODSH@@
# -*- sh -*-
: <<=cut
=head1 NAME
acpi - Munin plugin to monitor the temperature in different ACPI Thermal zones.
=head1 APPLICABLE SYSTEMS
Linux systems with ACPI support.
=head1 CONFIGURATION
Load the 'thermal' kernel module and the plugin gets the thermal zones from /sys/class/thermal/thermal_zone*/ automagically.
=head1 USAGE
Link this plugin to @@CONFDIR@@/plugins/ and restart the munin-node.
=head1 INTERPRETATION
The plugin shows the temperature from the different thermal zones.
=head1 MAGIC MARKERS
#%# family=auto
#%# capabilities=autoconf
=head1 BUGS
None known.
=head1 VERSION
v1.0 - 2006-11-13
v1.1 - 2018-03-24
=head1 AUTHOR
Nicolai Langfeldt (janl@linpro.no) 2006-11-13
=head1 LICENSE
GPLv2
=cut
# directories containing thermal zone information
if [ -d /sys/class/thermal/ ]; then
ATZ=$(find /sys/class/thermal/ -maxdepth 1 -name "thermal_zone*" | sort -V)
else
ATZ=
fi
do_ () { # Fetch
for ZONE in $ATZ; do
TEMP=$(cat "$ZONE/temp")
echo "$(basename "$ZONE").value $(echo "$TEMP" | awk '{print $1/1000}')"
done
exit 0
}
do_config () {
echo "graph_title ACPI Thermal zone temperatures"
echo "graph_vlabel Celsius"
echo "graph_category sensors"
echo "graph_info This graph shows the temperature in different ACPI Thermal zones. If there is only one it will usually be the case temperature."
for ZONE in $ATZ; do
TYPE=$(cat "$ZONE/type")
echo "$(basename "$ZONE").label $TYPE"
done
# print values immediately if dirtyconfig is supported
if [ "${MUNIN_CAP_DIRTYCONFIG:-0}" = 1 ]; then do_; fi
}
do_autoconf () {
if [ -z "$ATZ" ]; then
echo "no (failed to find thermal zones below /sys/class/thermal/thermal_zone*)"
exit 0
fi
for f in $ATZ; do
if [ ! -r "$f/temp" ]; then
echo "no (cannot read $f/temp)"
exit 0
fi
done
echo yes
exit 0
}
case $1 in
config|autoconf|'')
"do_$1"
esac
exit $?