Osmius, descubrí pachube y con un script en ruby es super fácil monitorizar la línea.
Los pasos son:
(1) Te creas una cuenta en pachube.
(2) Te creas un script en ruby o en lo que quieras como este:
require 'rubygems'
require 'mechanize'
require 'logger'
require 'json'
agent = Mechanize.new
agent.user_agent = 'Individueller User-Agent'
agent.user_agent_alias = 'Linux Mozilla'
agent.open_timeout = 3
agent.read_timeout = 4
agent.keep_alive = false
# agent.log = Logger.new(STDOUT)
agent.auth('admin', 'secreta')
url = 'http://192.168.1.1/info.html'
page = agent.get url
up = 0
down = 0
page.search('td').each do |td|
if up == 1
up = td.content
end
if td.content.match('Upstream')
up = 1
end
if down == 1
down = td.content
end
if td.content.match('Downstream')
down = 1
end
end
puts up
puts down
# mandamos la info a pachube
begin
http = Net::HTTP.new('api.pachube.com', 80)
http.start do |http|
req = Net::HTTP::Put.new("/v2/feeds/23385.csv", {'X-PachubeApiKey' => 'tu-api-del-feed'})
req.body = "0, #{up}\r\n1,#{down}\r\n"
resp = http.request(req)
puts resp.body
end
puts "Submitted to Pachube"
rescue
puts "Problem submitting results to Pachube"
puts $!
end
3) Lo metes en el cron:
*/10 * * * * /opt/local/bin/ruby /Users/juantomas/router.rb >> /tmp/router.log
4) En mi caso se va rellenado un gráfico como este:
5) Si tienes una cuenta en osmius, como pachube te exporta los datos en xml, json y csv lo puedes integrar con toda clase de alarmas y gráficos mucho mejores que con pachube 😉
El script es para el router comtrend que distribuye jazztel pero es muy fácil modificarlo para que obtenga los valores de otros routers.
]]>