Use available memory

Signed-off-by: fbt <fbt@fleshless.org>
This commit is contained in:
Jack L. Frost 2018-12-01 23:14:10 +03:00
parent 5e5815efb1
commit cdc42088b9
1 changed files with 6 additions and 7 deletions

View File

@ -4,22 +4,21 @@ class ModMemory < Worker
def mainloop() def mainloop()
while true do while true do
mem = {} mem = {}
data = File.read("/proc/meminfo").scan(/Mem(Total|Available):\s+([0-9]+)/).map do |k, v| data = File.read("/proc/meminfo").scan(/(.+):\s+([0-9]+)/).map do |k, v|
mem[k] = v mem[k] = v.to_i
end end
mem["free_part"] = mem["Available"].to_i/(mem["Total"].to_i/100) mem["avail_part"] = mem["MemAvailable"]/(mem["MemTotal"]/100)
mem["used_part"] = 100 - mem["free_part"]
if mem["used_part"] > @my_config['crit_value'] if mem["avail_part"] < @my_config['crit_value']
fg_colour = @my_config['crit_colour'] fg_colour = @my_config['crit_colour']
elsif mem["used_part"] > @my_config['warn_value'] elsif mem["avail_part"] < @my_config['warn_value']
fg_colour = @my_config['warn_colour'] fg_colour = @my_config['warn_colour']
else else
fg_colour = @my_config['ok_colour'] fg_colour = @my_config['ok_colour']
end end
self.write "%%{F%s}%s%%{F-}" % [ fg_colour, mem["used_part"].to_s ] self.write "%%{F%s}%s%%{F-}" % [ fg_colour, mem["avail_part"].to_s ]
sleep(1) sleep(1)
end end