mirror of
https://github.com/munin-monitoring/muninlite.git
synced 2024-11-13 07:11:12 +01:00
wireless: add new plugin to get info about OpenWRT's APs
Following info is returned, per AP: - Signal strength (dBm) - Number of associated clients
This commit is contained in:
parent
710334b615
commit
4bc2b62610
3 changed files with 44 additions and 1 deletions
2
Makefile
2
Makefile
|
@ -1,4 +1,4 @@
|
|||
PLUGINS ?= df cpu if_ if_err_ load memory processes swap netstat uptime interrupts irqstats ntpdate plugindir_
|
||||
PLUGINS ?= df cpu if_ if_err_ load memory processes swap netstat uptime interrupts irqstats ntpdate wireless plugindir_
|
||||
CONFIGURATION_FILE ?= muninlite.conf
|
||||
INPUT_FILE ?= muninlite.in
|
||||
TARGET_FILE ?= muninlite
|
||||
|
|
|
@ -86,6 +86,11 @@ for PLUG in $PLUGINS; do
|
|||
RES="$RES netstat"
|
||||
fi
|
||||
;;
|
||||
wireless)
|
||||
if iwinfo >/dev/null 2>&1; then
|
||||
RES="${RES} ${PLUG}"
|
||||
fi
|
||||
;;
|
||||
plugindir_)
|
||||
for MYPLUGIN in $(if [ -d "$PLUGIN_DIRECTORY" ]; then find -L "$PLUGIN_DIRECTORY" -type f -name "$PLUGINPATTERN"; fi); do
|
||||
if [ -f "$MYPLUGIN" ] && [ -x "$MYPLUGIN" ]; then
|
||||
|
|
38
plugins/wireless
Normal file
38
plugins/wireless
Normal file
|
@ -0,0 +1,38 @@
|
|||
config_wireless() {
|
||||
interfaces=$(iwinfo 2> /dev/null | sed '/^wlan/!d; s/ .*//g; /-/d')
|
||||
for interface in ${interfaces}
|
||||
do
|
||||
echo "multigraph wireless_${interface}
|
||||
graph_title WLAN ${interface} AP Statistics
|
||||
graph_vlabel Strength (dBm)
|
||||
graph_category network
|
||||
graph_scale no
|
||||
signal.label Signal
|
||||
noise.label Noise"
|
||||
done
|
||||
interfaces=$(iwinfo 2> /dev/null | sed '/^wlan/!d; s/ .*//g')
|
||||
for interface in ${interfaces}
|
||||
do
|
||||
echo "multigraph wireless_assoc_${interface/-/_}
|
||||
graph_title WLAN ${interface} associations
|
||||
graph_vlabel Clients
|
||||
graph_args --lower-limit 0
|
||||
graph_category network
|
||||
graph_scale no
|
||||
clients.label Clients"
|
||||
done
|
||||
}
|
||||
fetch_wireless() {
|
||||
interfaces=$(iwinfo 2> /dev/null | sed '/^wlan/!d; s/ .*//g; /-/d')
|
||||
for interface in ${interfaces}
|
||||
do
|
||||
echo "multigraph wireless_${interface}"
|
||||
iwinfo ${interface} info | sed -r 's/unknown/0 dBm/g; /Signal.*Noise/!d; s/^.* Signal: ([-0-9]+) dBm Noise: ([-0-9]+) dBm/signal.value \1\nnoise.value \2/'
|
||||
done
|
||||
interfaces=$(iwinfo 2> /dev/null | sed '/^wlan/!d; s/ .*//g')
|
||||
for interface in ${interfaces}
|
||||
do
|
||||
echo "multigraph wireless_assoc_${interface/-/_}"
|
||||
echo "clients.value $(iwinfo ${interface} assoc | grep -c SNR)"
|
||||
done
|
||||
}
|
Loading…
Reference in a new issue