Class: Opstat::Plugins::Disk

Inherits:
Task
  • Object
show all
Defined in:
lib/plugins/disk.rb

Constant Summary collapse

DISK_IO_STATS_FILE =
"/proc/diskstats"

Instance Method Summary collapse

Constructor Details

#initialize(name, queue, config) ⇒ Disk

Returns a new instance of Disk.



6
7
8
9
# File 'lib/plugins/disk.rb', line 6

def initialize (name, queue, config)
  super(name, queue, config)
  self
end

Instance Method Details

#disk_io_usageObject



25
26
27
28
# File 'lib/plugins/disk.rb', line 25

def disk_io_usage
  stats = File.open(DISK_IO_STATS_FILE).readlines
  return stats
end

#parseObject

TODO in memory module io.close



12
13
14
15
16
17
18
# File 'lib/plugins/disk.rb', line 12

def parse
  @count_number += 1
  report = {}
  report['disk_space'] = space_usage
  report['disk_io'] = disk_io_usage
  return report
end

#space_usageObject



19
20
21
22
23
24
# File 'lib/plugins/disk.rb', line 19

def space_usage
  io = IO.popen('df --output=source,fstype,used,avail,itotal,iused,iavail,target|sed "s#/dev/root#/dev/$(readlink /dev/root)#"')
  stats = io.readlines
  io.close
  return stats
end