class Riemann::Babbler::Plugin::Net
Constants
- WORDS
Public Instance Methods
collect()
click to toggle source
# File lib/riemann/babbler/plugins/net.rb, line 25 def collect f = File.read('/proc/net/dev') status = Array.new f.split("\n").each do |line| iface = line.split(':')[0].strip iface.gsub!(/\./, '_') next if (iface =~ /\./ && !plugin.include_alias) next unless line =~ /(\w*)\:\s*([\s\d]+)\s*/ WORDS.map do |service| service end.zip( $2.split(/\s+/).map { |str| str.to_i } ).each do |service, value| next unless plugin.filter.include? service status << { :service => "#{plugin.service} #{iface} #{service}", :metric => value.to_f/plugin.interval, :as_diff => true } end end status end
init()
click to toggle source
# File lib/riemann/babbler/plugins/net.rb, line 19 def init plugin.set_default(:service, 'net') plugin.set_default(:include_alias, false) plugin.set_default(:filter, ['rx bytes', 'rx errs', 'rx drop', 'tx bytes', 'tx errs', 'tx drop']) end