Gerando gráficos bacanas no MRTG

Recentemente resolvi olhar com mais carinho ao MRTG, que já uso desde muitos anos atrás, e comecei a ter novas vontades como por exemplo: monitorar a carga do servidor (loadavg), monitorar o uso do processador, a temperatura, a voltagem de alimentação (vcore), e mesmo sabendo que isso já havia sido feito anteriormente eu resolvi fazer do meu jeito.. com SHellscript! para então aplicar novas idéias: monitorar o nível de sinal do cable modem (que gera sinais negativos e o mrtg não aceita números negativos) entre outras!

Uma solução interessante para monitorar os níveis do sinal do cable modem, mas que não gostei, foi de alguém que simplesmente adicionou +20 aos números, assim eles seriam sempre positivos… mas para saber o valor real precisamos lembrar de subtrair 20…

Eu queria ir além: queria ter um gráfico negativo e positivo usando o MRTG, sem recorrer ao rrdtool ou ao cactis. Então me surgiu a idéia simples de utilizar as duas linhas de dados do MRTG: uma para o sinal negativo e outra para o sinal positivo.. com o gráfico alternando entre si e mostrando de maneira simples o nível do sinal! Foi preciso criar um script que trata a informação alternando a linha de dados para o valor retornado de acordo com o sinal (positivo ou negativo) e o resultado eu achei surpreendente! 😎

Análise do Sinal de Downstream do Cable Modem

Análise do Sinal de Downstream do Cable Modem

Agora, aguardo apenas uma média bem calculada do nível do sinal para equalizar o modem adequadamente em meu amplificador variável, deixando tudo verde! 💡

A configuração no mrtg.cfg é simples:

Target[modem_ds]: `/path/script.sh`
SetEnv[modem_ds]: MRTG_INT_IP="192.168.100.1" MRTG_INT_DESCR="eth1"
Options[modem_ds]: growright,gauge,nopercent
YLegend[modem_ds]: dBmV
ShortLegend[modem_ds]: dBmV
LegendI[modem_ds]: Nível +:
LegendO[modem_ds]: Nível -:
Legend1[modem_ds]: Nível Positivo do Sinal de Downstream do Cable Modem
Legend2[modem_ds]: Nível Negativo do Sinal de Downstream do Cable Modem
Factor[modem_ds]: 0.1
YTicsFactor[modem_ds]: 0.1
MaxBytes[modem_ds]: 200
Title[modem_ds]: Análise do Sinal de Downstream do Cable Modem

O script que eu criei é muito bacana e funciona para os modems da Motorola, para outros é preciso verificar as OIDs e o acesso snmp:

#!/bin/bash
on="`/usr/bin/snmpget -v2c -O qvU -c public 192.168.100.1 1.3.6.1.2.1.10.127.1.1.2.1.1.4`"
if [ "$on" != "No Such Object available on this agent at this OID" ] && [ -n "$on" ]; then
  value="`/usr/bin/snmpget -v2c -O qvU -c public 192.168.100.1 1.3.6.1.2.1.10.127.1.1.1.1.6.3`"
  if [ "$value" -gt 0 ]; then
    echo "$value"
    echo "0"
  else
    echo "0"
    echo "$value * -1" | bc
  fi
  echo "`/usr/bin/snmpget -v2c -O v -c public 192.168.100.1 .1.3.6.1.2.1.1.3.0 | awk '{ print $3, $4, $5 }' | sed "s/.00//"`"
  echo "`/usr/bin/snmpget -v2c -O qvU -c public 192.168.100.1 .1.3.6.1.2.1.1.5.0`"
else
  echo -en "0\n0\n0\n \n"
fi

Após essa solução criativa para o modem eu resolvi inovar gerando um gráfico dos emails recebidos e recusados pelo meu servidor!

Análise de E-mails Processados

Análise de E-mails Processados

De maneira muito mais simples que os sinais do cable modem eu criei essa configuração no mrtg.cfg:

Target[postfix]: `grep "delivered to maildir" /var/log/maillog | wc -l; grep ": reject:" /var/log/maillog | wc -l; uptime | cut -c 13- | sed 's/,/,\n/g' | head -2 | grep -v users | xargs | sed 's/,$//'; uname`
SetEnv[postfix]: MRTG_INT_IP="127.0.0.1" MRTG_INT_DESCR="lo0"
Options[postfix]: growright,nopercent,unknaszero,integer,withzeroes,perhour
YLegend[postfix]: E-mails
ShortLegend[postfix]: E-mails
LegendI[postfix]: Recebidos:
LegendO[postfix]: Recusados:
Legend1[postfix]: Fluxo de E-mails Recebidos
Legend2[postfix]: Fluxo de E-mails Recusados
MaxBytes[postfix]: 1000000
Title[postfix]: Análise de E-mails Processados

Depois de perceber que não preciso de um sistema SNMP para utilizar o mrtg, eu expandi meus horizontes para idéias também fora do convencional… tal qual como observar a variação da temperatura em São Paulo, que atua em conjunção na análise da temperatura do servidor.

Análise da Temperatura em São Paulo

Análise da Temperatura em São Paulo

Análise da Temperatura do Disco Rígido

Análise da Temperatura do Disco Rígido

Podemos observar até a flutuação do dólar!! 😆

Análise da Cotação do Dólar

Análise da Cotação do Dólar

Escreva seu comentário: