Sha256: 51a4cccd93e4231c7ff21e6c844e8a28ece54025e677b0dffa37dab40c7184e6
Contents?: true
Size: 743 Bytes
Versions: 1
Compression:
Stored size: 743 Bytes
Contents
require 'json' class Riemann::Babbler::Panels < Riemann::Babbler def init plugin.set_default(:service, 'panels') plugin.set_default(:interval, 60) plugin.set_default(:url, 'http://localhost/panel.json') plugin.states.set_default(:critical, 60) end def collect json = JSON.parse rest_get(plugin.url) good, bad = 0, 0 json["panels"].each do |panel| panel["status"] == "offline" ? bad += 1 : good += 1 end [ {:service => plugin.service + " online", :description => "online panels in #{plugin.url}", :metric => good, :state => 'ok' }, {:service => plugin.service + " offline", :description => "all panels in #{plugin.url}", :metric => bad + good, :state => 'ok' } ] end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
riemann-babbler-1.0.1 | lib/riemann/babbler/plugins/panels.rb |