PluginPortrait/ibm_acpi: ibm_acpi

File ibm_acpi, 2.1 KB (added by munin-ibm_acpi@…, at 2006-06-28T16:41:38+02:00)
Line 
1#!/bin/sh
2#
3# Script to monitor ibm_acpi thermal values on thinkpads.
4#
5# Parameters understood:
6#
7#       config   (required)
8#       autoconf (optional - used by munin-config)
9#
10# $Log$
11# Revision 0.2  2006/06/28 16:40:26  darktim
12# Fix typo
13# Revision 0.1  2006/06/27 17:43:16  darktim
14# Initial version
15#
16#
17# Magic markers (optional - used by munin-config and installation
18# scripts):
19#
20#%# family=auto
21#%# capabilities=autoconf
22
23MAXLABEL=20
24
25if [ "$1" = "autoconf" ]; then
26        echo yes
27        exit 0
28fi
29
30clean_name() {
31    echo $1 $7 $2 | sed 's/[\/.-]/_/g'| awk "{
32        if (\$3 == \"tmpfs\")
33                n=\$1\$2
34        else
35                n=\$1
36        print n
37        }"
38}
39
40
41if [ "$1" = "config" ]; then
42
43        echo 'graph_title ibm_acpi thermal (in °C)'
44        echo 'graph_args --upper-limit 120 -l 0'
45        echo 'graph_label °C'
46        echo 'graph_category system'
47        echo 'graph_info This graph shows thermal values from the ibm_acpi module on Thinkpads.'
48        LINE=`cat /proc/acpi/ibm/thermal | awk -F: '{print $2}'`
49        for i in 1 2 3 4 5 6 7 8; do
50                case $i in
51                        1)  # CPU
52                        TYPE="CPU"
53                        ;;
54                        2)  # Mini PCI Module
55                        TYPE="MiniPCI"
56                        ;;
57                        3)  # HDD
58                        TYPE="HDD"
59                        ;;
60                        4)  # GPU
61                        TYPE="GPU"
62                        ;;
63                        5)  # Battery
64                        TYPE="BAT0"
65                        ;;
66                        6)  # N/A
67                        TYPE="NA"
68                        ;;
69                        7)  # Battery
70                        TYPE="BAT1"
71                        ;;
72                        8)  # N/A
73                        TYPE="NA"
74                        ;;
75                esac
76                name=`clean_name $TYPE`
77                if [ "$TYPE" != "NA" ]; then echo  "therm_$name.label $TYPE" ; fi
78        done
79        exit 0
80fi
81
82        LINE=`cat /proc/acpi/ibm/thermal | awk -F: '{print $2}'`
83        for i in 1 2 3 4 5 6 7 8; do
84                case $i in
85                        1)  # CPU
86                        TYPE="CPU"
87                        VALUE=`echo "$LINE" | awk '{print $1}'`
88                        ;;
89                        2)  # Mini PCI Module
90                        TYPE="MiniPCI"
91                        VALUE=`echo "$LINE" | awk '{print $2}'`
92                        ;;
93                        3)  # HDD
94                        TYPE="HDD"
95                        VALUE=`echo "$LINE" | awk '{print $3}'`
96                        ;;
97                        4)  # GPU
98                        TYPE="GPU"
99                        VALUE=`echo "$LINE" | awk '{print $4}'`
100                        ;;
101                        5)  # Battery
102                        TYPE="BAT0"
103                        VALUE=`echo "$LINE" | awk '{print $5}'`
104                        ;;
105                        6)  # N/A
106                        TYPE="NA"
107                        ;;
108                        7)  # Battery
109                        TYPE="BAT1"
110                        VALUE=`echo "$LINE" | awk '{print $7}'`
111                        ;;
112                        8)  # N/A
113                        TYPE="NA"
114                        ;;
115                esac
116                name=`clean_name $TYPE`
117                if [ "$TYPE" != "NA" ]; then echo  "therm_$name.value $VALUE" ; fi
118        done