class MetricsInflux::Module::SysNetStat
Public Class Methods
new(config, params = {})
click to toggle source
# File lib/metrics_influx/module/sysnetstat.rb, line 7 def initialize(config, params = {}) @config = config @config['stats'] ||= %w(rx_packets rx_bytes rx_errors tx_packets tx_bytes tx_errors) @config['interfaces'] ||= Dir.glob('/sys/class/net/*').map { |f| File.basename f } @params = params end
Public Instance Methods
sample()
click to toggle source
# File lib/metrics_influx/module/sysnetstat.rb, line 14 def sample @config['interfaces'].map do |intf| data = { time: Time.now.to_i } @config['stats'].each do |k| v = File.read("/sys/class/net/#{intf}/statistics/#{k}").chomp data["#{intf}_#{k}"] = v.to_i end data end end