Monitoração do CBQ
Publicado por Jose Geraldo 08/09/2004
[ Hits: 9.896 ]
Pessoal
Escrevi este script para monitoração do CBQ de uma maneira mais elegante do que aquele cbq stats.
O script processa a saída do comando "cbq stats" e o traduz em uma linha por regra, mostrando a taxa em kbps efetiva, em relação à ultima execução do mesmo.
Como é ainda uma versão alfa, podem ocorrer erros na primeira execução, quando o arquivo temporário ainda não existir.
Recomendo que o mesmo somente seja executado pelo root, pois o arquivo temporário está com nome fixo.
# Script para verificar os status do CBQ de maneira mais # estatistica que o cbq stats do cbq.init # # JGeraldo 08/09/2004 - v0.1 - Alpha end_date=`date "+%s"` if [ ! -f /tmp/cbqstat.ant ] then echo "ULT_STR:`date`" > /tmp/cbqstat.ant echo "ULT_NUM:$end_date" >> /tmp/cbqstat.ant echo "ULT_STR:`date`" > /tmp/cbqstat.atu echo "ULT_NUM:$end_date" >> /tmp/cbqstat.atu stat=n else echo "ULT_STR:`date`" > /tmp/cbqstat.atu echo "ULT_NUM:$end_date" >> /tmp/cbqstat.atu stat=s fi ult_str=`cat /tmp/cbqstat.ant|grep ULT_STR|cut -c9-80` ult_num=`cat /tmp/cbqstat.ant|grep ULT_NUM|cut -d: -f2` seconds=`expr $end_date - $ult_num` cbq stats | while read p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 #cat x | while read p0 p1 p2 p3 p4 p5 p6 p7 p8 p9 do #echo "p0:$p0 p1:$p1 p2:$p2 p3:$p3 p4:$p4 p5:$p5 p6:$p6 p7:$p7 p8:$p8" if [ "$p0" = "###" ] then iface=$p1 fi if [ "$p0" = "qdisc" ] then rule=$p2 rate=$p4 burst=$p6 laten=$p8 fi if [ "$p0" = "Sent" ] then bytes=$p1 pkts=$p3 echo "RULE:$iface:$rule:$rate:$burst:$laten:$bytes:$pkts">> /tmp/cbqstat.atu bytes_ant=`cat /tmp/cbqstat.ant|grep "RULE:$iface:$rule"|cut -d: -f9` tbytes=`expr $bytes - $bytes_ant` if [ $seconds -gt 0 ] then tbits=`expr $tbytes \* 8` kbps=`expr $tbits / $seconds / 1024` fi siface=`echo $iface | cut -d: -f1` srule=`echo $rule | cut -d: -f1` printf "%s, rule %3s: %4d kbps in %d seconds\n" $siface $srule $kbps $seconds fi done if [ $1"Q" != "nQ" ] then mv -f /tmp/cbqstat.atu /tmp/cbqstat.ant fi
Cria relatorio de email enviados e recebidos
Gerenciamento de logs em servidores de aplicação
Tradução de endereços de uma rede interna
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Desktop Linux ganha novos apps enquanto IA invade o noticiário
Blender 5.0 Beta, Firefox 144 e avanço da IA dominam o dia no mundo Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Adicionando o repositório backports no Debian 13 Trixie
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (0)
Baixar jogos Independentes para Ubuntu [RESOLVIDO] (4)
PIP3 - erro ao instalar módulo do mariadb para o Python (1)
Linux x Plataformas de Trading - um problema (in-)solúvel? (4)