100 lines
2.8 KiB
Bash
Executable File
100 lines
2.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
CMD=none
|
|
token=overrun
|
|
rec=0
|
|
|
|
while [ ! -z $1 ]
|
|
do
|
|
if [ "$1" = "clear" ]; then
|
|
CMD=clear
|
|
fi
|
|
if [ "$1" = "overrun" ]; then
|
|
token=overrun
|
|
fi
|
|
if [ "$1" = "ifstat" ]; then
|
|
token=packet
|
|
fi
|
|
if [ "$1" = "ifstat-rx" ]; then
|
|
token="RX.*packet"
|
|
fi
|
|
if [ "$1" = "ifstat-tx" ]; then
|
|
token="TX.*packet"
|
|
fi
|
|
if [ "$1" = "pmon" ]; then
|
|
token="pmon"
|
|
fi
|
|
if [ "$1" = "pmon_e1" ]; then
|
|
token="pmon_e1"
|
|
fi
|
|
if [ "$1" = "record" ]; then
|
|
rec=1
|
|
fi
|
|
shift
|
|
done
|
|
|
|
DEVS=$(cat /proc/net/dev | egrep "w.*g" | cut -d':' -f1 | xargs)
|
|
|
|
#echo "$DEVS"
|
|
|
|
if [ $rec = 1 ]; then
|
|
echo $(date) >> stats.out
|
|
fi
|
|
for dev in $DEVS
|
|
do
|
|
if [ "$CMD" = "clear" ]; then
|
|
wanpipemon -i $dev -c fc
|
|
wanpipemon -i $dev -c fpm
|
|
fi
|
|
|
|
if [ "$token" = "pmon" ]; then
|
|
wanpipemon -i $dev -c Ta > t.$$
|
|
line=`cat t.$$ | grep -e Line | cut -d':' -f2 | awk ' { print $1 }'`
|
|
bit=`cat t.$$ | grep -e Bit | cut -d':' -f2 | awk ' { print $1 }'`
|
|
out=`cat t.$$ | grep -e Out | cut -d':' -f2 | awk ' { print $1 }'`
|
|
sync=`cat t.$$ | grep -e Sync | cut -d':' -f2 | awk ' { print $1 }'`
|
|
r_over=`ifconfig $dev | grep RX.*overruns | awk '{ print $5 }' | cut -d':' -f2`
|
|
t_over=`ifconfig $dev | grep TX.*overruns | awk '{ print $5 }' | cut -d':' -f2`
|
|
con_status=`ifconfig $dev | grep -c RUNNING`
|
|
level=`cat t.$$ | grep "Rx Level" | cut -d':' -f2 | awk '{print $1}'`
|
|
if [ $level = ">" ]; then
|
|
level=`cat t.$$ | grep "Rx Level" | cut -d':' -f2 | awk '{print $2}'`
|
|
fi
|
|
rm t.$$
|
|
echo -e "IF $dev | Pmon: Line=$line Bit=$bit Out=$out Sync=$sync Lvl=$level | Overrun: R=$r_over T=$t_over | Status=$con_status"
|
|
continue
|
|
fi
|
|
|
|
if [ "$token" = "pmon_e1" ]; then
|
|
wanpipemon -i $dev -c Ta > t.$$
|
|
line=`cat t.$$ | grep -e Line | cut -d':' -f2 | awk ' { print $1 }'`
|
|
far=`cat t.$$ | grep -e "Far End" | cut -d':' -f2 | awk ' { print $1 }'`
|
|
crc4=`cat t.$$ | grep -e CRC4 | cut -d':' -f2 | awk ' { print $1 }'`
|
|
fas=`cat t.$$ | grep -e FAS | cut -d':' -f2 | awk ' { print $1 }'`
|
|
sync=`cat t.$$ | grep -e Sync | cut -d':' -f2 | awk ' { print $1 }'`
|
|
r_over=`ifconfig $dev | grep RX.*overruns | awk '{ print $5 }' | cut -d':' -f2`
|
|
t_over=`ifconfig $dev | grep TX.*overruns | awk '{ print $5 }' | cut -d':' -f2`
|
|
con_status=`ifconfig $dev | grep -c RUNNING`
|
|
level=`cat t.$$ | grep "Rx Level" | cut -d':' -f2 | awk '{print $1}'`
|
|
if [ $level = ">" ]; then
|
|
level=`cat t.$$ | grep "Rx Level" | cut -d':' -f2 | awk '{print $2}'`
|
|
fi
|
|
rm t.$$
|
|
echo -e "IF $dev | Pmon: Line=$line Far=$far CRC4=$crc4 FAS=$fas Sync=$sync Lvl=$level | Overrun: R=$r_over T=$t_over | Status=$con_status"
|
|
continue
|
|
fi
|
|
|
|
if [ "$token" = "overrun" ]; then
|
|
line=`wanpipemon -i $dev -c sc | grep "$token"`
|
|
else
|
|
line=`ifconfig $dev | grep "$token"`
|
|
fi
|
|
|
|
if [ $rec = 1 ] ; then
|
|
echo "IF => $dev\n$line" | tee -a stats.out
|
|
else
|
|
echo -e "IF => $dev\n$line"
|
|
fi
|
|
done
|
|
|