Gente, acho que deve ter alguma coisa errada, pois aqui funciona direto do mikrotik. E olha que eu sou iniciante em mikrotik.
Quem precisar de ajuda, me pergunte a partir de segunda-feira.
Gente, acho que deve ter alguma coisa errada, pois aqui funciona direto do mikrotik. E olha que eu sou iniciante em mikrotik.
Quem precisar de ajuda, me pergunte a partir de segunda-feira.
Última edição por armc_2003; 07-03-2008 às 20:49. Razão: esqueci do resto da mensagem
re-li o tópico e já estou começando a achar que não é isso que os colegas querem, mas vou enviar o que eu fiz aqui no meu RouterOS:
Tools -> Graphing -> Interface Rules -> Add
Tools -> Graphing -> Queue Rules -> Add
Com isso eu tenho o gráfico de tráfego de todos os usuários atualizado a cada 5 minutos. Mas tem que ter configurado as QUEUE.
E também o tráfego de cada interface.
Bom se for isso o que entendi, tá aí.....
Espero que tenha ajudado alguem.
tenho esta solucao aqui no meu provedor...
pega o sinal dos cliente das 4 pcis q tenho...
1 - pega as informacoes dos clientes on-line;
2 - pegar o mac dos clientes;
3 - pega o ip dos cliente;
4 - converte o mac de hexadecimal para decimal;
5 - pega o sinal do cliente;
6 - pega o tx e rx do cliente;
7 - grava num arquivo localmente para posterior tratamento...
segue parte do script...
#################
# configuracoes #
#################
ipmkt="x.x.x.x"
destino=/var/www/html/graficos/sinal/index.php
if_norte="3"
if_sul="4"
if_leste="5"
if_oeste="6"
################
# painel norte #
################
norte=`snmpwalk -v 1 -c public -On $ipmkt .1.3.6.1.2.1.4.22.1.2.$if_norte`
echo "$norte" | while read LINHA
do
mac=`echo $LINHA | awk '{print $4}'`
ip=`echo $LINHA | awk '{print $1}' | cut -d. -f13,14,15,16`
# converter mac para maiusculos
MAC=`echo $mac | tr [:lower:] [:upper:]`
# separar os numeros hexadecimais
n1=`echo $MAC | cut -d: -f1`
n2=`echo $MAC | cut -d: -f2`
n3=`echo $MAC | cut -d: -f3`
n4=`echo $MAC | cut -d: -f4`
n5=`echo $MAC | cut -d: -f5`
n6=`echo $MAC | cut -d: -f6`
# converter de hexadecimal para decimal
N1=`echo "ibase=16;($n1)" | bc`
N2=`echo "ibase=16;($n2)" | bc`
N3=`echo "ibase=16;($n3)" | bc`
N4=`echo "ibase=16;($n4)" | bc`
N5=`echo "ibase=16;($n5)" | bc`
N6=`echo "ibase=16;($n6)" | bc`
sinal=`snmpget -c public -v1 $ipmkt -Ov .1.3.6.1.4.1.14988.1.1.1.2.1.3.$N1.$N2.$N3.$N4.$N5.$N6.$if_norte | awk '{print $2}'` &> /dev/null
tx=`snmpget -c public -v1 $ipmkt -Ov .1.3.6.1.4.1.14988.1.1.1.2.1.4.$N1.$N2.$N3.$N4.$N5.$N6.$if_norte | awk '{print $2}'` &> /dev/null
rx=`snmpget -c public -v1 $ipmkt -Ov .1.3.6.1.4.1.14988.1.1.1.2.1.5.$N1.$N2.$N3.$N4.$N5.$N6.$if_norte | awk '{print $2}'` &> /dev/null
echo "$sinal = $ip = download=$tx / upload=$rx = $n1.$n2.$n3.$n4.$n5.$n6 = $N1.$N2.$N3.$N4.$N5.$N6" >> norte1
done
# ordenar resultado norte
sort -r norte1 > norte2
depois so vc repetir para as outras interfaces... trocando onde tiver norte por: sul, leste, oeste e no final geral do script tratar o resultador como lhe convier... fazendo um index.php para mostrar o resultado.. popular uma base mysql ou mesmo criar diretamente um grafico com rrdtool.
espero q ajude.
Neon
Mas vc tem uma maquina linux pra fazer isso ?? ou roda no windows??
galera...
alguem sabe um tutorial para me ajudar a fazer o rrdtool capturar os dados e gerar os graficos?
pois nao consigui entender nenhum documento que achei sobre isso!
obrigado desde ja!
recebi a sua tbm...o que faço sempre é conseguir aqui antes e depois postar tudo bonitinho pros amigos!
eu instalei o snmp no debian, rrdtool tbm!
com ajuda dos scripts postado pelo usuario Mr_Dom em outro tópico e com ajuda dele por msn (muito obrigado), consigui gerar os dados que queria, que é quantidade de pessoas conectadas ao Mikrotik!
depois criar o grafico com o RRDTool...gerou beleza, mas o que não consigui ainda foi automatizar a captação dos dados e a criação dos graficos!!
criei o script e agendei a cada 5 minutos pelo crontab, mas nao funciona! queria saber certinho como que faz isso, pois tentei de varias maneiras e nada!
outra coisa que vou fazer após eu fazer isso dar certo, é buscar o número de conectados por Interface!!
Código com créditos ao usuario Mr_Dom!
#!/bin/sh
sinal=`snmpwalk -Os -c public -v 1 xxx.xxx.xxx.xxx .1.3.6.1.4.1.14988.1.1.1.2.1.3.0 | wc -l`
rrdupdate nome_arquivo.rrd N:$sinal
echo $sinal
#
#Gráfico da Último Dia
rrdtool graph nome_arquivo.png --interlaced -a PNG -w 600 -h 125 \
--start end-12h -t "CLIENTES DIARIO" \
-v "clientes" \
'DEF:signal=moleta1.rrd:signal:AVERAGE' \
'LINE2:signal#0000FF:Qtdade' \
'GPRINT:signal:MIN: Mínimo\:%2.lf c' \
'GPRINT:signal:MAX: Máximo\:%2.lf c' \
'GPRINT:signal:AVERAGE: Média\:%4.1lf c' \
'GPRINT:signal:LAST: Último\:%2.lf c' \
#Gráfico da Última Semana
rrdtool graph nome_arquivo.png --interlaced -a PNG -w 600 -h 125 \
--start end-1w --end 00:00 -t "CLIENTES Semanal" \
-v "Clientes" \
'DEF:signal=moleta1.rrd:signal:AVERAGE' \
'LINE2:signal#0000FF:Qtdade' \
'GPRINT:signal:MIN: Mínimo\:%2.lf c' \
'GPRINT:signal:MAX: Máximo\:%2.lf c' \
'GPRINT:signal:AVERAGE: Média\:%4.1lf c' \
'GPRINT:signal:LAST: Último\:%2.lf c' \
como perguntado em off, se vc esta em duvida de como fazer o grafico com o rrdtools, segue um link de um post meu na linux-br exatamente sobre isso..
(linux-br) Calcular tamanho do link
Neon
a dificuldade agora é fazer o crontab executar os scripts automaticamente..não vai nem a pau!!
gerei 2 scripts- 1º gera os dados do mikrotik
o 2º- cria o grafico com os dados..
fiz o 1º rodar a cada 2 minutos e o 2º a cada 5 minutos.
mas nao roda..
scripts:
arquivo.sh
#!/bin/sh
sinal=`snmpwalk -Os -c public -v 1 172.21.97.9 .1.3.6.1.4.1.14988.1.1.1.2.1.3.0 | wc -l`
rrdupdate moleta1.rrd N:$sinal
echo $sinal
arquivo2.sh
#!/bin/sh
#Gráfico da Último Dia
rrdtool graph /var/www/moleta/grafico1.png --interlaced -a PNG -w 600 -h 125 \
--start end-12h -t "CLIENTES DIARIO" \
-v "clientes" \
'DEF:signal=rep1.rrd:signal:AVERAGE' \
'LINE2:signal#0000FF:Qtdade' \
'GPRINT:signal:MIN: Mínimo\:%2.lf c' \
'GPRINT:signal:MAX: Máximo\:%2.lf c' \
'GPRINT:signal:AVERAGE: Média\:%4.1lf c' \
'GPRINT:signal:LAST: Último\:%2.lf c' \
#Gráfico da Última Semana
rrdtool graph grafico2.png --interlaced -a PNG -w 600 -h 125 \
--start end-1w --end 00:00 -t "CLIENTES Semanal" \
-v "Clientes" \
'DEF:signal=moleta1.rrd:signal:AVERAGE' \
'LINE2:signal#0000FF:Qtdade' \
'GPRINT:signal:MIN: Mínimo\:%2.lf c' \
'GPRINT:signal:MAX: Máximo\:%2.lf c' \
'GPRINT:signal:AVERAGE: Média\:%4.1lf c' \
'GPRINT:signal:LAST: Último\:%2.lf c' \
crontab
*/2 * * * * root sh /etc/arquivo.sh &> /dev/null
*/5 * * * * root sh /etc/arquivo2.sh &> /dev/null