Class: Opstat::Parsers::Memory

Inherits:
Object
  • Object
show all
Includes:
Logging
Defined in:
lib/parsers/memory.rb

Instance Method Summary collapse

Methods included from Logging

#log_level, #oplogger, #preconfig_logger

Instance Method Details

#parse_data(data:, time:) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/parsers/memory.rb', line 8

def parse_data(data:, time:)
  memory = YAML::load(data.join)
  oplogger.debug memory
  begin
    return [{
      :total => memory["MemTotal"].split[0].to_i,
      :free => memory["MemFree"].split[0].to_i,
      :used => memory["MemTotal"].split[0].to_i - memory["MemFree"].split[0].to_i - (memory["Buffers"].to_i + memory["Cached"].split[0].to_i + memory["SReclaimable"].split[0].to_i - memory["Shmem"].split[0].to_i),
      :cached => memory["Cached"].split[0].to_i + memory["SReclaimable"].split[0].to_i - memory["Shmem"].split[0].to_i,
      :buffers => memory["Buffers"].split[0].to_i,
      :swap_total => memory["SwapTotal"].split[0].to_i,
      :swap_free => memory["SwapFree"].split[0].to_i,
      :swap_used => memory["SwapTotal"].split[0].to_i - memory["SwapFree"].split[0].to_i
    }]
  rescue Exception => e
    return []
  end
end