tell about config file
[munin-heatpump.git] / heatpump-dimplex-wpm_
index 0539946..4e13003 100755 (executable)
@@ -17,6 +17,8 @@
 
 =head2 EXAMPLE CONFIGURATION
 
+ In /etc/munin/plugin-conf.d/munin-node:
+
  [heatpump-dimplex-wpm_*]
   env.host_name Heating
 
@@ -52,14 +54,15 @@ if [ "$1" = "config" ]; then
 
     #Outdoor temperature
     echo 'multigraph heatpump_dimplex_wpm_outtemp'
-    echo 'graph_title Außentemperatur'
+    echo 'graph_title Aussentemperatur'
     echo 'graph_args --base 1000'
     echo 'graph_vlabel °C'
     echo 'graph_info Zeigt die gemessene Außentemperatur an'
     echo 'graph_scale no'
     echo 'graph_category sensors'
 
-    echo 'outtemp.label Außentemperatur'
+    echo 'outtemp.label Aussentemperatur'
+    echo 'outtemp.draw LINE1'
 
     #Heating temperatures
     echo 'multigraph heatpump_dimplex_wpm_heating'
@@ -70,9 +73,12 @@ if [ "$1" = "config" ]; then
     echo 'graph_scale no'
     echo 'graph_category sensors'
 
-    echo 'returntargettemp.label Rücklaufsolltemperatur'
-    echo 'returntemp.label Rücklauftemperatur'
+    echo 'returntargettemp.label Ruecklaufsolltemperatur'
+    echo 'returntargettemp.draw LINE2'
+    echo 'returntemp.label Ruecklauftemperatur'
+    echo 'returntemp.draw LINE1'
     echo 'influxtemp.label Vorlauftemperatur'
+    echo 'influxtemp.draw LINE1'
 
     #Water temperature
     echo 'multigraph heatpump_dimplex_wpm_water'
@@ -84,7 +90,9 @@ if [ "$1" = "config" ]; then
     echo 'graph_category sensors'
 
     echo 'watertargettemp.label Solltemperatur'
+    echo 'watertargettemp.draw LINE2'
     echo 'watertemp.label Warmwassertemperatur'
+    echo 'watertemp.draw LINE1'
 
 
     #On/off states
@@ -97,12 +105,60 @@ if [ "$1" = "config" ]; then
     echo 'graph_category sensors'
 
     echo 'reqheating.label Anforderung Heizung'
+    echo 'reqheating.draw LINE1'
     echo 'reqwater.label Anforderung Warmwasser'
+    echo 'reqwater.draw LINE1'
+
+    #settings: heating level
+    echo 'multigraph heatpump_dimplex_wpm_heating_level'
+    echo 'graph_title Heizungseinstellung'
+    echo 'graph_args --base 1000 --lower-limit 0 --upper-limit 38'
+    echo 'graph_vlabel Einstellung'
+    echo 'graph_info Shows the heating setting'
+    echo 'graph_scale no'
+    echo 'graph_category settings'
+
+    echo 'circuit1.label Heizkreis 1'
+    echo 'circuit1.draw LINE1'
+
+    #error level
+    echo 'multigraph heatpump_dimplex_wpm_errorlevel'
+    echo 'graph_title Alarme/Fehler'
+    echo 'graph_args --base 1000 --lower-limit 0 --upper-limit 100'
+    echo 'graph_vlabel Fehler'
+    echo 'graph_info Shows the error level'
+    echo 'graph_scale no'
+    echo 'graph_category sensors'
+
+    echo 'errorlevel.label Sammelstoermeldung'
+    echo 'errorlevel.draw LINE1'
+    echo 'errorlevel.critical 0:0'
 
     exit 0
 fi
 
-data=`curl -s "http://$host/usr-cgi/xml.cgi?A|1|125|D|1|150|I|1|100" | xsltproc paths.xsl -`
+xml=`curl -fs "http://$host/usr-cgi/xml.cgi?A|1|125|D|1|150|I|1|100"`; ret=$?
+if [ "$ret" -ne 0 ]; then
+    echo "Error fetching data from heatpump server: $host"
+    exit 1
+fi
+
+xslfile=paths.xsl
+if [ ! -f "$xslfile" ]; then
+    shell="`readlink -f "$0"`"
+    path="`dirname "$shell"`"
+    xslfile="$path/paths.xsl"
+    if [ ! -f "$xslfile" ]; then
+        echo 'Could not find paths.xsl'
+        exit 2
+    fi
+fi
+
+data=`echo "$xml" | xsltproc "$xslfile" -`; ret=$?
+if [ "$ret" -ne 0 ]; then
+    echo 'Error running xsltproc'
+    exit 2
+fi
 
 #Outdoor temperature
 echo 'multigraph heatpump_dimplex_wpm_outtemp'
@@ -124,3 +180,12 @@ echo 'multigraph heatpump_dimplex_wpm_states'
 echo reqheating.value `echo "$data" | grep DIGITAL/136 | cut -d" " -f2`
 water=`echo "$data" | grep DIGITAL/140 | cut -d" " -f2`
 echo reqwater.value `echo $(($water * 2))`
+
+#Settings: Heating level
+echo 'multigraph heatpump_dimplex_wpm_heating_level'
+echo circuit1.value `echo "$data" | grep 'INTEGER/1 ' | cut -d" " -f2`
+
+#Error level
+#docs: 8,Analog,Ausgang,Sammelstörmeldung
+echo 'multigraph heatpump_dimplex_wpm_errorlevel'
+echo errorlevel.value `echo "$data" | grep 'ANALOG/8 ' | cut -d" " -f2`