plugin-ibm_acpi: ibm_acpi

File ibm_acpi, 2.1 kB (added by munin-ibm_acpi@darktim.de, 4 years ago)
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
23 MAXLABEL=20
24
25 if [ "$1" = "autoconf" ]; then
26         echo yes
27         exit 0
28 fi
29
30 clean_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
41 if [ "$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
80 fi
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