#!@@GOODSH@@ # # Plugin to monitor CPU speed # # Usage: Place in /etc/munin/node.d/ (or link it there using ln -s) # # Parameters understood: # # config (required) # autoconf (optional - used by munin-config) # # Magic markers - optional - used by installation scripts and # munin-config: # #%# family=auto #%# capabilities=autoconf if [ "$1" = "autoconf" ]; then if [ -r /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq ]; then echo yes exit 0 else echo no exit 1 fi fi if [ "$1" = "config" ]; then cat <<EOF graph_title CPU frequency scaling graph_args --base 1000 -r --lower-limit 0 graph_vlabel Hz graph_scale yes graph_info This graph shows at what speeds the CPUs are running graph_category system EOF for c in /sys/devices/system/cpu/cpu*; do N=${c##*/cpu} MAXHZ=$(cat $c/cpufreq/cpuinfo_max_freq) cat <<EOF cpu$N.label CPU $N cpu$N.max $MAXHZ cpu$N.min $(cat $c/cpufreq/cpuinfo_min_freq) cpu$N.type GAUGE EOF if [ "$scaleto100" = "yes" ]; then echo "cpu$N.cdef $cpu$N,$MAXHZ,/" fi done exit 0 fi for c in /sys/devices/system/cpu/cpu*; do N=${c##*/cpu} echo "cpu$N.value $(cat $c/cpufreq/scaling_cur_freq)" done