Belegte Airtime im Monitoring anzeigen: Unterschied zwischen den Versionen
Aus Freifunk Franken
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 44: | Zeile 44: | ||
== Für 2,4GHz und 5GHz Komibgeräte == | == Für 2,4GHz und 5GHz Komibgeräte == | ||
/etc/busy.sh | |||
<pre> | |||
#!/bin/sh | |||
MESHZWEI=$(iw dev w2mesh station dump | grep Station -c) | |||
MESHFUENF=$(iw dev w5mesh station dump | grep Station -c) | |||
APZWEI=$(iw dev w2ap station dump | grep Station -c) | |||
APFUENF=$(iw dev w5ap station dump | grep Station -c) | |||
iw dev w2mesh survey dump > /24dump | |||
iw dev w5mesh survey dump > /5dump | |||
cat /24dump | sed '/Survey/,/\[in use\]/d' > /24reduced | |||
ACT_CUR=$(ACTIVE=$(cat /24reduced | grep "active time:"); set ${ACTIVE:-0 0 0 0 0}; echo -e "${4}") | |||
BUS_CUR=$(BUSY=$(cat /24reduced | grep "busy time:"); set ${BUSY:-0 0 0 0 0}; echo -e "${4}") | |||
BUS_CUR_OLD2=$(cat /tmp/bus_cur2) | |||
echo $BUS_CUR > /tmp/bus_cur2 | |||
let BUS_CUR_NEW=$BUS_CUR_OLD2-$BUS_CUR | |||
ACT_CUR_OLD2=$(cat /tmp/act_cur2) | |||
echo $ACT_CUR > /tmp/act_cur2 | |||
let ACT_CUR_NEW=$ACT_CUR_OLD2-$ACT_CUR | |||
let BUSPROZ2=$BUS_CUR_NEW*100/$ACT_CUR_NEW | |||
echo $BUSPROZ2 | |||
cat /5dump | sed '/Survey/,/\[in use\]/d' > /5reduced | |||
ACT_CUR=$(ACTIVE=$(cat /5reduced | grep "active time:"); set ${ACTIVE:-0 0 0 0 0}; echo -e "${4}") | |||
BUS_CUR=$(BUSY=$(cat /5reduced | grep "busy time:"); set ${BUSY:-0 0 0 0 0}; echo -e "${4}") | |||
BUS_CUR_OLD5=$(cat /tmp/bus_cur5) | |||
echo $BUS_CUR > /tmp/bus_cur5 | |||
let BUS_CUR_NEW=$BUS_CUR_OLD5-$BUS_CUR | |||
ACT_CUR_OLD5=$(cat /tmp/act_cur5) | |||
echo $ACT_CUR > /tmp/act_cur5 | |||
let ACT_CUR_NEW=$ACT_CUR_OLD5-$ACT_CUR | |||
let BUSPROZ5=$BUS_CUR_NEW*100/$ACT_CUR_NEW | |||
echo $BUSPROZ5 | |||
echo "Mesh2,4GHz: $MESHZWEI ; Mesh5GHz: $MESHFUENF ; AP2,4GHz: $APZWEI ; AP5GHz: $APFUENF ; BUSY2,4GHz: $BUSPROZ2 % ; BUSY5GHz: $BUSPROZ5 %" > /tmp/status.txt | |||
</pre> | |||
beim Rest so verfahren wie oben, als Zusatzfeature zeigt er auch noch alle Meshverbindungen und Clients in 2,4GHz und 5GHz aufgetrennt an. |
Version vom 26. Mai 2016, 14:04 Uhr
OpenWRT bietet die Möglichkeit die belegte Airtime auszulesen. Mit diesen Script wird die belegte Airtime ans Monitoring als Statustext geschickt:
Für 2,4GHz Geräte
/etc/busy.sh
#!/bin/sh iw dev w2mesh survey dump > /24dump cat /24dump | sed '/Survey/,/\[in use\]/d' > /24reduced ACT_CUR=$(ACTIVE=$(cat /24reduced | grep "active time:"); set ${ACTIVE:-0 0 0 0 0}; echo -e "${4}") BUS_CUR=$(BUSY=$(cat /24reduced | grep "busy time:"); set ${BUSY:-0 0 0 0 0}; echo -e "${4}") BUS_CUR_OLD2=$(cat /tmp/bus_cur2) echo $BUS_CUR > /tmp/bus_cur2 let BUS_CUR_NEW=$BUS_CUR_OLD2-$BUS_CUR ACT_CUR_OLD2=$(cat /tmp/act_cur2) echo $ACT_CUR > /tmp/act_cur2 let ACT_CUR_NEW=$ACT_CUR_OLD2-$ACT_CUR let BUSPROZ2=$BUS_CUR_NEW*100/$ACT_CUR_NEW echo $BUSPROZ2 echo "Airtime $BUSPROZ2 %" > /tmp/status.txt
Datei ausführbar machen:
chmod +x /etc/busy.sh
/usr/lib/micron.d/fff-nodewatcher folgende Zeile hinzufügen (ja ist eklig, man kann auch einen eigenen Cron anlegen...)
*/1 * * * * /etc/busy.sh
micrond neu starten:
/etc/init.d/micrond restart
Für 2,4GHz und 5GHz Komibgeräte
/etc/busy.sh
#!/bin/sh MESHZWEI=$(iw dev w2mesh station dump | grep Station -c) MESHFUENF=$(iw dev w5mesh station dump | grep Station -c) APZWEI=$(iw dev w2ap station dump | grep Station -c) APFUENF=$(iw dev w5ap station dump | grep Station -c) iw dev w2mesh survey dump > /24dump iw dev w5mesh survey dump > /5dump cat /24dump | sed '/Survey/,/\[in use\]/d' > /24reduced ACT_CUR=$(ACTIVE=$(cat /24reduced | grep "active time:"); set ${ACTIVE:-0 0 0 0 0}; echo -e "${4}") BUS_CUR=$(BUSY=$(cat /24reduced | grep "busy time:"); set ${BUSY:-0 0 0 0 0}; echo -e "${4}") BUS_CUR_OLD2=$(cat /tmp/bus_cur2) echo $BUS_CUR > /tmp/bus_cur2 let BUS_CUR_NEW=$BUS_CUR_OLD2-$BUS_CUR ACT_CUR_OLD2=$(cat /tmp/act_cur2) echo $ACT_CUR > /tmp/act_cur2 let ACT_CUR_NEW=$ACT_CUR_OLD2-$ACT_CUR let BUSPROZ2=$BUS_CUR_NEW*100/$ACT_CUR_NEW echo $BUSPROZ2 cat /5dump | sed '/Survey/,/\[in use\]/d' > /5reduced ACT_CUR=$(ACTIVE=$(cat /5reduced | grep "active time:"); set ${ACTIVE:-0 0 0 0 0}; echo -e "${4}") BUS_CUR=$(BUSY=$(cat /5reduced | grep "busy time:"); set ${BUSY:-0 0 0 0 0}; echo -e "${4}") BUS_CUR_OLD5=$(cat /tmp/bus_cur5) echo $BUS_CUR > /tmp/bus_cur5 let BUS_CUR_NEW=$BUS_CUR_OLD5-$BUS_CUR ACT_CUR_OLD5=$(cat /tmp/act_cur5) echo $ACT_CUR > /tmp/act_cur5 let ACT_CUR_NEW=$ACT_CUR_OLD5-$ACT_CUR let BUSPROZ5=$BUS_CUR_NEW*100/$ACT_CUR_NEW echo $BUSPROZ5 echo "Mesh2,4GHz: $MESHZWEI ; Mesh5GHz: $MESHFUENF ; AP2,4GHz: $APZWEI ; AP5GHz: $APFUENF ; BUSY2,4GHz: $BUSPROZ2 % ; BUSY5GHz: $BUSPROZ5 %" > /tmp/status.txt
beim Rest so verfahren wie oben, als Zusatzfeature zeigt er auch noch alle Meshverbindungen und Clients in 2,4GHz und 5GHz aufgetrennt an.