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: 47.079 ]

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

Software Livre X Microsoft

Netcat - O canivete suíco do TCP/IP

Captive Portal Customizado

Instalando o Linux Ubuntu 8.04 Hardy Heron

Variety - Instalação e configuração

Leitura recomendada

Trabalhos gráficos no Biglinux

Vetorizando um rosto com o Inkscape

O emocional e a imagem

Instalando e configurando desktop 3d no Debian Etch 64 bits

Programação visual (módulo 2)

  
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




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts