summaryrefslogtreecommitdiff
path: root/sysutils/munin-common/files/patch-plugins_node.d_nutups__.in
blob: 00d982968c5e4321477bf0e048c7f2aa448cbb73 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
--- plugins/node.d/nutups_.in.orig	2014-11-24 21:46:24 UTC
+++ plugins/node.d/nutups_.in
@@ -7,20 +7,25 @@
 #
 # usage: ups_upsid_function
 #
+#   env.upsc    <command>   (default: "/bin/upsc")
+#   env.upsconf <filename>  (default: "/etc/nut/ups.conf")
+#
 #%# family=contrib
 #%# capabilities=autoconf suggest
 
 UPS=$(basename $0 | cut -d_ -f2)
 FUNCTION=$(basename $0 | cut -d_ -f3)
+UPSC=${upsc:-/bin/upsc}
+UPSCONF=${upsconf:-/etc/nut/ups.conf}
 
 if [ "$1" = "autoconf" ]; then
-	[ -x /bin/upsc ] && [ -r /etc/nut/ups.conf ] && echo yes && exit 0
-	echo "no (/bin/upsc or /etc/nut/ups.conf not found)"
+	[ -x $UPSC ] && [ -r $UPSCONF ] && echo yes && exit 0
+	echo "no ($UPSC or $UPSCONF not found)"
 	exit 0
 fi
 
 if [ "$1" = "suggest" ]; then
-	grep '^\[[^]]*\]$' /etc/nut/ups.conf \
+	grep '^\[[^]]*\]$' $UPSCONF \
 		| tr -d '][' \
 		| while read ups; do
 			for i in voltages freq charge current; do
@@ -42,7 +47,7 @@ voltages() {
 			echo "${i}.min 0"
 		done
 	else
-		upsc $UPS | sed -n '/volt/{
+		$UPSC $UPS | sed -n '/volt/{
 					s/://
 					/nominal/s/.* /nominal.value /
 					/voltage/s/\.[^ ]*/.value/
@@ -64,7 +69,7 @@ charge() {
 			echo "${i}.min 0"
 		done
 	else
-		upsc $UPS | sed -n '/charge/{
+		$UPSC $UPS | sed -n '/charge/{
 					s/^[^:]*\.//g
 					s/:/.value/
 					p
@@ -87,7 +92,7 @@ frequency() {
 		echo "acfreq.max 100"
 		echo "acfreq.min 5"
 	else
-		upsc $UPS | sed -n '/freq/{s/.*:/acfreq.value/;p}'
+		$UPSC $UPS | sed -n '/freq/{s/.*:/acfreq.value/;p}'
 	fi
 }
 
@@ -102,7 +107,7 @@ current() {
 		echo "current.max 100"
 		echo "current.min 0"
 	else
-		upsc $UPS | sed -n '/current/{s/.*:/current.value/;p}'
+		$UPSC $UPS | sed -n '/current/{s/.*:/current.value/;p}'
 	fi
 }