contrib-munin/plugins/wifi/wifi_signal

56 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
#
# Show noise and signal levels of wifi enabled devices.
# Author: Nicolai Langfeldt, janl@linprolno
# Modifications: Sebastián Cruz, crux@lugmen.org.ar
# License: GPL v. 2
#
#%# family=auto
#%# capabilities=autoconf
PNWL=/proc/net/wireless
do_fetch () {
awk -F'[ :]*' '/:/ {
gsub(/\. /," ",$0); # Remove periods with no decimals after
print $2"_noise.value "$6;
print $2"_signal.value "$5;
}' $PNWL
}
do_config () {
echo "graph_title WiFi signal and noise"
echo "graph_args --base 1000 -u 0"
echo "graph_vlabel dB"
echo "graph_category wireless"
echo "graph_info This graph shows the noise and singal levels of your WiFi devices"
awk -F'[ :]*' '/:/ {
print $2"_noise.label Noise "$2;
print $2"_signal.label Signal "$2;
}' $PNWL
}
do_autoconf () {
if [ ! -f "$PNWL" ]; then
echo "no (missing file '$PNWL')"
elif [ ! -r "$PNWL" ]; then
echo "no (cannot read file '$PNWL')"
elif grep -qs : "$PNWL"; then
echo yes
else
echo "no (no devices in $PNWL)"
fi
exit 0
}
case $1 in
config|autoconf)
eval do_$1
exit 0;;
'')
do_fetch
exit 0;;
esac