mod_measure_malloc/mod_measure_malloc.lua
author Kim Alvefur <zash@zash.se>
Thu, 27 Apr 2017 19:52:42 +0200
changeset 2712 07d6077d2db7
parent 2440 mod_measure_memory/mod_measure_memory.lua@a01a3fb96302
child 3371 a83eed629d4b
permissions -rw-r--r--
mod_measure_memory: Split out mallinfo measuring into a separate module, mod_measure_malloc
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1627
2c39af0fb93b mod_measure_memory: Module for polling memory useage from Lua, meminfo() and /proc depending on availability
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     1
module:set_global();
2c39af0fb93b mod_measure_memory: Module for polling memory useage from Lua, meminfo() and /proc depending on availability
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     2
2c39af0fb93b mod_measure_memory: Module for polling memory useage from Lua, meminfo() and /proc depending on availability
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     3
local measure = require"core.statsmanager".measure;
2712
07d6077d2db7 mod_measure_memory: Split out mallinfo measuring into a separate module, mod_measure_malloc
Kim Alvefur <zash@zash.se>
parents: 2440
diff changeset
     4
local pposix = require"util.pposix";
1627
2c39af0fb93b mod_measure_memory: Module for polling memory useage from Lua, meminfo() and /proc depending on availability
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     5
2c39af0fb93b mod_measure_memory: Module for polling memory useage from Lua, meminfo() and /proc depending on availability
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     6
local measures = {};
2c39af0fb93b mod_measure_memory: Module for polling memory useage from Lua, meminfo() and /proc depending on availability
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     7
setmetatable(measures, {
1659
4d38b8c03dfe mod_measure_memory: Silence warnings [luacheck]
Kim Alvefur <zash@zash.se>
parents: 1627
diff changeset
     8
	__index = function (t, k)
4d38b8c03dfe mod_measure_memory: Silence warnings [luacheck]
Kim Alvefur <zash@zash.se>
parents: 1627
diff changeset
     9
		local m = measure("sizes", "memory."..k); t[k] = m; return m;
1627
2c39af0fb93b mod_measure_memory: Module for polling memory useage from Lua, meminfo() and /proc depending on availability
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    10
	end
2c39af0fb93b mod_measure_memory: Module for polling memory useage from Lua, meminfo() and /proc depending on availability
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    11
});
2c39af0fb93b mod_measure_memory: Module for polling memory useage from Lua, meminfo() and /proc depending on availability
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    12
module:hook("stats-update", function ()
2712
07d6077d2db7 mod_measure_memory: Split out mallinfo measuring into a separate module, mod_measure_malloc
Kim Alvefur <zash@zash.se>
parents: 2440
diff changeset
    13
	local m = measures;
07d6077d2db7 mod_measure_memory: Split out mallinfo measuring into a separate module, mod_measure_malloc
Kim Alvefur <zash@zash.se>
parents: 2440
diff changeset
    14
	for k, v in pairs(pposix.meminfo()) do
07d6077d2db7 mod_measure_memory: Split out mallinfo measuring into a separate module, mod_measure_malloc
Kim Alvefur <zash@zash.se>
parents: 2440
diff changeset
    15
		m[k](v);
07d6077d2db7 mod_measure_memory: Split out mallinfo measuring into a separate module, mod_measure_malloc
Kim Alvefur <zash@zash.se>
parents: 2440
diff changeset
    16
	end
1627
2c39af0fb93b mod_measure_memory: Module for polling memory useage from Lua, meminfo() and /proc depending on availability
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    17
end);