Files
moltenbar/mod/memory
T

30 lines
583 B
Ruby
Raw Normal View History

2017-05-30 15:08:45 +03:00
# vim: ft=ruby
class ModMemory < Worker
def mainloop()
while true do
mem = {}
2018-12-02 00:19:23 +03:00
File.read("/proc/meminfo").each_line do |line|
k, v = line.split[0..1]
2018-12-01 23:14:10 +03:00
mem[k] = v.to_i
2017-05-30 15:08:45 +03:00
end
2018-12-08 12:11:45 +03:00
used_part = 100 - (mem["MemAvailable:"]/(mem["MemTotal:"]/100))
2017-05-30 15:08:45 +03:00
2019-05-15 11:50:16 +03:00
if used_part > @my_config['crit_value']
fg_colour = "crit_colour"
2019-05-15 11:50:16 +03:00
elsif used_part > @my_config['warn_value']
fg_colour = "warn_colour"
2017-05-30 15:08:45 +03:00
else
fg_colour = "ok_colour"
2017-05-30 15:08:45 +03:00
end
self.write "%%{FC{%s}}%s%%{F-}" % [ fg_colour, used_part.to_s ]
2017-05-30 15:08:45 +03:00
sleep(1)
end
end
end
Modules.add("memory", "ModMemory")