Pular para o conteúdo

FreeBSD - PF + Altq + MRTG

Dica publicada em Shell Script / Avançado
Alex aabf
Hits: 7.497 Categoria: Shell Script Subcategoria: Avançado
  • Indicar
  • Impressora
  • Denunciar

FreeBSD - PF + Altq + MRTG

Colegas,

Estive procurando uma solução para extrair dados do PF + Altq (cbq) para gerar os gráficos das filas, da utilização da banda de cada fila através do MRTG e encontrei este script em shell do amigo Rogério Moura:
Peço que testem e critiquem sugerindo melhorias.

Vejas o que ele diz abaixo:

"Eu não tive boas experiências com symon... o que fiz foi um shell script que gerava as informações para o MRTG, segue o que fiz:"

Script para coletar dados da fila:

#!/bin/sh

if [ "$1" -a "$2" != "" ]
then
   FILA1=$1
   FILA2=$2
else
   echo "Uso:  $0 fila download fila upload"
   exit
fi

L=`pfctl -vsq | cat -n  | grep $FILA1 | grep -v root | awk '{print $1}'`
if [ "$L" == "" ]
then
   echo Fila download nao encontrada
   exit
fi

L1=`expr $L + 1 `
FDOWN=`pfctl -vsq | head -n $L1 | tail -1 | awk '{print $5}'`

L=`pfctl -vsq | cat -n  | grep $FILA2 | grep -v root | awk '{print $1}'`
if [ "$L" == "" ]
then
   echo Fila upload nao encontrada
   exit
fi

L1=`expr $L + 1 `
FUP=`pfctl -vsq | head -n $L1 | tail -1 | awk '{print $5}'`

echo $FDOWN
echo $FUP

Arquivo de configuração do MRTG:

# Global configuration
WorkDir: /var/www/htdocs/mrtg
WriteExpires: Yes
Language: brazilian
Options[_]: bits, growright, unknaszero
WithPeak[_]: dwmy
XSize[_]: 500
YSize[_]: 125

Target[ftp]: `/root/fw/filas.sh dftp uftp_ext`
Title[ftp]:Trafego da fila FTP
MaxBytes[ftp]:64000
Options[ftp]: growright,bits,noinfo
PageTop[ftp]:

Trafego da fila FTP


Unscaled[ftp]: dwmy

Target[lan]: `/root/fw/filas.sh dwww uack_adsl`
Title[lan]: Trafego da fila da LAN
MaxBytes[lan]:524288
Options[lan]: growright,bits,noinfo
PageTop[lan]:

Trafego de dados da LAN


Unscaled[lan]: dwmy

Depois é só agendar no crontab que você vai ter os gráficos das filas que quiser.

Nenhuma dica encontrada.

Bloquear servidor por falta de pagamento

Filtrando sites navegados por máquinas no log do Squid

Linux From Scratch

Kernel for Newbies - seu assistente de compilação do Kernel em 10 simples passos

GNU parallel - Um ferramenta para execução de processos em paralelo

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.