mirror of
https://github.com/munin-monitoring/contrib.git
synced 2025-07-23 06:35:42 +00:00
the plugin now supports monitoring several tuners in the same graph
This commit is contained in:
parent
e3c3aae254
commit
a8909ec671
1 changed files with 73 additions and 37 deletions
|
@ -4,55 +4,91 @@
|
||||||
#
|
#
|
||||||
# (c) 2009 i.dobson@planet-ian.com
|
# (c) 2009 i.dobson@planet-ian.com
|
||||||
#
|
#
|
||||||
|
# 24.11.2009 Version 1.1 added support for multiple tuners
|
||||||
|
# 22.11.2009 Version 1.0 added check that femon iinstalled
|
||||||
|
# 21.11.2009 Version 0.9 added adapter number
|
||||||
|
# 20.11.2009 Version 0.8 first version
|
||||||
|
#
|
||||||
# Magic markers (optional):
|
# Magic markers (optional):
|
||||||
#%# family=auto
|
#%# family=auto
|
||||||
#%# capabilities=autoconf suggest
|
#%# capabilities=autoconf suggest
|
||||||
|
|
||||||
#Change this value to point to the tuner you want to watch
|
#Starting point for tuner to watch
|
||||||
Tuner=1
|
Tuner=0
|
||||||
|
|
||||||
case $1 in
|
case $1 in
|
||||||
autoconf|detect)
|
autoconf|detect)
|
||||||
if [ -e /dev/dvb/adapter$Tuner/ ] ; then
|
REQ=`which femon`
|
||||||
echo yes
|
if [ "$REQ" = "" ]; then
|
||||||
exit 0
|
echo "no (femon not installed)"
|
||||||
else
|
exit 1
|
||||||
echo "no (dvb tuner $Tuner not found)"
|
fi
|
||||||
exit 1
|
|
||||||
fi;;
|
if [ -e /dev/dvb/adapter$Tuner/ ]; then
|
||||||
|
echo yes
|
||||||
|
exit 0
|
||||||
|
else
|
||||||
|
echo "no (dvb tuner $Tuner not found)"
|
||||||
|
exit 1
|
||||||
|
fi;;
|
||||||
|
|
||||||
config)
|
config)
|
||||||
echo 'graph_title DVB signal strength '
|
echo "graph_title DVB signal strength"
|
||||||
echo 'graph_args --base 1000 -l 0'
|
echo 'graph_args --base 1000 -l 0'
|
||||||
echo 'graph_vlabel Signal Strength % / Errors in 000s'
|
echo 'graph_vlabel Signal Strength %'
|
||||||
echo 'graph_category mythtv'
|
echo 'graph_category mythtv'
|
||||||
echo 'graph_scale no'
|
echo 'graph_scale no'
|
||||||
|
while [ -e /dev/dvb/adapter$Tuner/ ]; do
|
||||||
|
Tuner=$[$Tuner+1]
|
||||||
|
done
|
||||||
|
|
||||||
echo "signal.label Signal strength"
|
TunerLoop=0
|
||||||
echo "signal.draw LINE1"
|
while [ $TunerLoop -lt $Tuner ] ; do
|
||||||
echo "signal.min 0"
|
echo "signal$TunerLoop.label Signal strength for tuner $TunerLoop"
|
||||||
|
echo "signal$TunerLoop.draw LINE1"
|
||||||
|
echo "signal$TunerLoop.min 0"
|
||||||
|
TunerLoop=$[$TunerLoop+1]
|
||||||
|
done
|
||||||
|
|
||||||
echo "snr.label Signal to noise"
|
TunerLoop=0
|
||||||
echo "snr.draw LINE1"
|
while [ $TunerLoop -lt $Tuner ] ; do
|
||||||
echo "snr.min 0"
|
echo "snr$TunerLoop.label Signal to noise for tuner $TunerLoop"
|
||||||
|
echo "snr$TunerLoop.draw LINE1"
|
||||||
|
echo "snr$TunerLoop.min 0"
|
||||||
|
TunerLoop=$[$TunerLoop+1]
|
||||||
|
done
|
||||||
|
|
||||||
echo "ber.label Bit error rate (in millions)"
|
TunerLoop=0
|
||||||
echo "ber.draw LINE1"
|
while [ $TunerLoop -lt $Tuner ] ; do
|
||||||
echo "ber.min 0"
|
echo "ber$TunerLoop.label Bit error rate for tuner $TunerLoop"
|
||||||
|
echo "ber$TunerLoop.draw LINE1"
|
||||||
|
echo "ber$TunerLoop.min 0"
|
||||||
|
echo "ber$TunerLoop.max 200"
|
||||||
|
TunerLoop=$[$TunerLoop+1]
|
||||||
|
done
|
||||||
|
|
||||||
echo "unc.label Uncorrectable errors (in thousands)"
|
TunerLoop=0
|
||||||
echo "unc.draw LINE1"
|
while [ $TunerLoop -lt $Tuner ] ; do
|
||||||
echo "unc.min 0"
|
echo "unc$TunerLoop.label Uncorrectable errors for tuner $TunerLoop"
|
||||||
|
echo "unc$TunerLoop.draw LINE1"
|
||||||
|
echo "unc$TunerLoop.min 0"
|
||||||
|
echo "unc$TunerLoop.max 200"
|
||||||
|
TunerLoop=$[$TunerLoop+1]
|
||||||
|
done
|
||||||
exit 0;;
|
exit 0;;
|
||||||
esac
|
esac
|
||||||
|
echo "" > /tmp/dvb-signal.text
|
||||||
if [ -e /dev/dvb/adapter$Tuner/ ] ; then
|
echo "" > /tmp/dvb-signal1.text
|
||||||
check=`femon -H -c 1 -a $Tuner | grep signal `
|
Tuner=0
|
||||||
echo $check | awk '{printf "signal.value %.0f\nsnr.value %.0f\nber.value %.2f\nunc.value %.2f\n\n",$5,$8,$11/1000,$14/1000000}'
|
while [ -e /dev/dvb/adapter$Tuner/ ] ; do
|
||||||
else
|
check=`femon -c 1 -a $Tuner | grep signal `
|
||||||
echo "snr.value 0"
|
echo $check $Tuner| awk '{printf ("signal%.0f.value %.1f\nsnr%.0f.value %.1f\nber%.0f.value %.2f\nunc%.0f.value %.4f\n#raw values Tuner %.0f %.0f %.0f %.0f %.0f \n",$17,strtonum("0x"$5)/655,$17,strtonum("0x"$8)/655,$17,strtonum("0x"$11),$17,strtonum("0x"$14),$17,strtonum("0x"$5),strtonum("0x"$8),$11,$14)}' >> /tmp/dvb-signal.text
|
||||||
echo "unc.value 0"
|
echo $check >> /tmp/dvb-signal1.text
|
||||||
echo "ber.value 0"
|
Tuner=$[$Tuner+1]
|
||||||
echo "signal.value 0"
|
done
|
||||||
fi
|
cat /tmp/dvb-signal.text | grep signal
|
||||||
|
cat /tmp/dvb-signal.text | grep snr
|
||||||
|
cat /tmp/dvb-signal.text | grep ber
|
||||||
|
cat /tmp/dvb-signal.text | grep unc
|
||||||
|
cat /tmp/dvb-signal.text | grep raw
|
||||||
exit 0
|
exit 0
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue