2
0
mirror of https://github.com/munin-monitoring/contrib.git synced 2018-11-08 00:59:34 +01:00
contrib-munin/plugins/other/cm2
2011-12-18 15:10:13 +01:00

91 lines
2.2 KiB
Bash
Executable File

#!/bin/bash
#
# (c) Tom Yates / Gatekeeper Technology Ltd. 2008
# with thanks to ipaccess.com who paid for this to be
# written, and permitted its redistribution under GPL (v3)
# plugin must be linked as climate_FQDN_VAR, where FQDN is that
# of climate server and VAR is the variable (temp, rh, air, light, sound)
# you wish to retrieve
# eg climate_mycm2.foo.com_temp
# HOST is the hostname of the climate server, must be in /etc/hosts
HOST=`basename $0 | cut -f2 -d_`
# VAR is variable to grab (temp, rh, air, light, sound)
VAR=`basename $0 | cut -f3 -d_`
# it will retrieve and make available five data,
# temp (Temperature), rh (relative humidity), air (Air Flow), light
# (Light Level) and sound (Sound Level)
# CONFIG
case $1 in
config)
echo host_name $HOST
case $VAR in
temp)
echo graph_title Temperature
echo graph_vlabel degrees C
echo temp.notify_alias Temperature
echo temp.warning 26
echo temp.critical 31
echo "temp.label Temperature (degrees C)" ;;
rh)
echo graph_title Relative Humidity
echo graph_vlabel per cent
echo rh.notify_alias Relative Humidity
echo "rh.label Relative Humidity (%)" ;;
air)
echo graph_title Airflow
echo air.notify_alias Airflow
echo air.label Airflow ;;
light)
echo graph_title Light level
echo light.notify_alias Light Level
echo light.label Light level ;;
sound)
echo graph_title Sound level
echo sound.notify_alias Sound Level
echo sound.label Sound Level ;;
esac
echo graph_category Other
exit 0;;
esac
# FETCH
case $VAR in
temp)
VALUE=`lynx --source http://${HOST}/ | grep -A 1 "Temperature" | tail -1 | \
sed 's/[^0-9.]//g' `
echo temp.value $VALUE ;;
rh)
VALUE=`lynx --source http://${HOST}/ | grep -A 1 "Relative Humidity" | \
tail -1 | sed 's/[^0-9.]//g' `
echo rh.value $VALUE ;;
air)
VALUE=`lynx --source http://${HOST}/ | grep -A 1 "Air Flow" | tail -1 | \
sed 's/[^0-9.]//g' `
echo air.value $VALUE ;;
light)
VALUE=`lynx --source http://${HOST}/ | grep -A 1 "Light Level" | tail -1 | \
sed 's/[^0-9.]//g' `
echo light.value $VALUE ;;
sound)
VALUE=`lynx --source http://${HOST}/ | grep -A 1 "Sound Level" | tail -1 | \
sed 's/[^0-9.]//g' `
echo sound.value $VALUE ;;
esac