Class: MetricsInflux::Module::ProcMeminfo
- Defined in:
- lib/metrics_influx/module/procmeminfo.rb
Defined Under Namespace
Classes: Error
Instance Method Summary collapse
-
#initialize(config, params = {}) ⇒ ProcMeminfo
constructor
A new instance of ProcMeminfo.
- #sample ⇒ Object
Methods inherited from Base
Constructor Details
#initialize(config, params = {}) ⇒ ProcMeminfo
Returns a new instance of ProcMeminfo.
7 8 9 10 |
# File 'lib/metrics_influx/module/procmeminfo.rb', line 7 def initialize(config, params = {}) @config = config @params = params end |
Instance Method Details
#sample ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/metrics_influx/module/procmeminfo.rb', line 12 def sample time_now = Time.now.to_i data = { time: time_now } File.readlines('/proc/meminfo').each do |line| (k,v,unit) = line.chomp.split(/\s+/, 3) key = k[0..-2].gsub(/\(([^\)]+)\)/, '_\1') v = v.to_i case unit when 'kB' v *= 1024 when 'MB' v *= 1024 * 1024 when 'GB' v *= 1024 * 1024 * 1024 when 'TB' v *= 1024 * 1024 * 1024 * 1024 end data[k.downcase] = v end data end |