Gerando gráficos para interfaces de rede com MRTG

Neste artigo mostrarei como configurar o software MRTG para gerar gráficos informativos sobre determinada interface de rede local definida pelo usuário.

[ Hits: 45.143 ]

Por: Perfil removido em 30/11/2006


Criando o script



Neste artigo não estarei demonstrando como instalar o software, supondo que o leitor esteja com tudo pronto, vamos prosseguir.

Primeiramente vamos criar um shell script para obter dois valores de uma determinada interface de rede plugada ao seu computador, entrada e saída de dados. Vou usar como exemplo ath0, pois é a minha interface de rede com acesso a internet, porém você poderá usar qualquer outra interface na qual queira gerar os gráficos.

Com base em outros scripts encontrados na internet, criei o meu e estarei explicando como funciona.

Primeiro vamos analisar:

# cat /proc/net/dev

Inter-|   Receive                                                |  Transmit
face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
    lo:    1109      17    0    0    0     0          0         0     1109      17    0    0    0     0       0          0
  ath0: 6686671    9549 405223    0    0 405223          0         0   532591    5906    4    0    0     0       0          0

Bom, no nosso exemplo é preciso obter os valores que estão nas posições 1 e 9 após o ath0, pois eles representam a quantidade de bytes recebidos e enviados respectivamente. Então vamos automatizar esta tarefa da seguinte forma:

Crie um arquivo chamado "ath0.sh" no diretório /etc/mrtg, lugar onde ficam por padrão as configurações, irei explicar mais a frente. Dentro do arquivo ath0.sh adicione as seguintes linha:

#!/bin/bash
cat /proc/net/dev | grep ath0 | cut -d : -f 2 | awk '{ print $1; print $9 }'

Salve o arquivo e dê permissão de execução da seguinte forma:

# chmod +x ath0.sh

Para testar se ocorreu tudo de forma correta, vamos testar o script.

# ./ath0
6887836
591145

Tudo ocorreu como o esperado, caso você tenha algum problema, revise o script e faça as alterações necessárias.

    Próxima página

Páginas do artigo
   1. Criando o script
   2. Configurando e rodando
Outros artigos deste autor

Montando uma rede GSM

Selecionando dados numa tabela para confecção de gráficos no oocalc

Turck MMcache completo e sem mistérios

PuTTY - Release 0.66 - Parte IV

Armazenamento de arquivos em Linux: um estudo de caso

Leitura recomendada

Criando Banners animados com o Gimp

O Organo Abstrato e o GIMP

Deixando o Gnome com a cara do Mac OS X

Gnome-shell sob a perspectiva da usabilidade

Imagination: Transforme suas fotos em DVD

  
Comentários
[1] Comentário enviado por agk em 30/11/2006 - 08:43h

MRTG é uma ferramenta excelente, além de monitorar a banda podem ser feitos outros monitoramentos como espaço em disco, processamento, uso da memória, além é claro de poder monitorar equipamentos de rede que utilizem snmp, basta usar a imaginação e montar os scripts para monitorar qualquer coisa no seu servidor.

[2] Comentário enviado por the question em 30/11/2006 - 19:56h

Interessante o programa, não conhecia.
Parabéns pelo artigo

PS: Tem algum jeito de ele mostrar o quanto foi baixado e o quanto foi upado(acumulado no mês)???

[3] Comentário enviado por removido em 30/11/2006 - 21:32h

realmente nao se te informar deste recurso, pois nao explorei todo o potencial deste software

[4] Comentário enviado por Edy em 01/12/2006 - 14:10h

Quanto as estatisticas mensais, de uma pesquisada sobre o protocolo SNMP. Tenho quase certeza que ele armazena as informações por um período.

[5] Comentário enviado por y2h4ck em 01/12/2006 - 19:58h

Mrtg ta meio por fora ...
rrdtool e muito melhor.

[6] Comentário enviado por removido em 01/12/2006 - 20:03h

criei um tutorial sobre o mrtg porque gostei da praticidade dele, mais foi uma boa dica, vou da uma pesquisada sobre a ferramenta sugerida pelo colega, e quem sabe criar um tutorial.

[7] Comentário enviado por jonathanmaia em 04/12/2006 - 16:28h

Na verdade, o Mrtg pode funcionar usando o rrdtool sim. O processo de integração pode ser visto na própria documentação do Mrtg. Segue o link direto para a página que ensina como fazer esse integração:
http://oss.oetiker.ch/mrtg/doc/mrtg-rrd.en.html
Até mais amigos!

[8] Comentário enviado por robsonalex em 04/01/2007 - 12:59h

caro colega, fiz exatamente como descrito mas ocorre o seguinte erro:

ERROR: Target[trafego][_IN_] ' '/etc/mrtg/eth0.sh' ' evaluated to '/etc/mrtg/eth0' instead of a number

e no trafego de saida tambem o mesmo erro.
alguem poderia ajudar?
obrigado antecipadamente

[9] Comentário enviado por ramontcruz em 03/02/2009 - 02:11h

robsonalex:

ja tive esse problema uma vez :p

vê se na linha do script:

Target[trafego]: `/etc/mrtg/eth0.sh`

vc usou a crase ` entre /etc/mrtg/eth0.sh

eu havia usado aspas simples, quando mudei pra crase deu certo

:-)

abraços!!

[10] Comentário enviado por paulinhomd9 em 18/09/2009 - 17:38h

Pessoal,

Alguém pode me ajudar, configurei seguindo o tutorial em um firewall e funcionou perfeitamente, depois segui exatamente o mesmo passo a passo em outros 2 firewalls e em ambos cria todos os mesmos arquivos porém os gráficos não saem do 0.0

ja removi instalei de novo, o scrip ./eth0.sh funciona normal enclusive cria um arquivo trafego.log que é atualizado

Utilizo Fedora 8 nos 3 locais

[11] Comentário enviado por manoserpa em 28/11/2009 - 09:00h

Bom dia turma.

Queria saber como monitoras as interfaces de outras estações da rede, sabe quais são os parâmetros que devo configurar?

Um abraço.


Contribuir com comentário