Sha256: 41d5bb5649e5f71ec6fad2f4b0c7f3498c49144cf06310fe4f4d9ba0abbc50ba

Contents?: true

Size: 956 Bytes

Versions: 14

Compression:

Stored size: 956 Bytes

Contents

interval 60
always_start true

default[:include_alias] = false
default[:filter] = [ 'rx bytes', 'rx errs', 'rx drop', 'tx bytes', 'tx errs', 'tx drop' ]
default[:words] =  [ 'rx bytes', 'rx packets', 'rx errs', 'rx drop', 'rx fifo', 'rx frame',
                    'rx compressed', 'rx multicast', 'tx bytes', 'tx packets', 'tx drops',
                    'tx fifo', 'tx colls', 'tx carrier', 'tx compressed' ] 

collect :os => "linux" do
  File.read('/proc/net/dev').each_line do |line|
    iface = line.split(':')[0].strip
    iface.gsub!(/\./, '_')
    next if (iface =~ /\./ && !plugin.include_alias)
    next unless line =~ /(\w*)\:\s*([\s\d]+)\s*/
    plugin.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
      event(:service => "net #{iface} #{service}", :metric => value.to_f/interval, :diff => true)
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
kurchatov-0.0.5.pre5 examples/net.rb
kurchatov-0.0.5.pre4 examples/net.rb
kurchatov-0.0.5.pre2 examples/net.rb
kurchatov-0.0.5.pre1 examples/net.rb
kurchatov-0.0.4 examples/net.rb
kurchatov-0.0.4d examples/net.rb
kurchatov-0.0.4c examples/net.rb
kurchatov-0.0.4b examples/net.rb
kurchatov-0.0.3 examples/net.rb
kurchatov-0.0.3b examples/net.rb
kurchatov-0.0.3a examples/net.rb
kurchatov-0.0.2 examples/net.rb
kurchatov-0.0.2b examples/net.rb
kurchatov-0.0.1 examples/net.rb