view mod_measure_malloc/mod_measure_malloc.lua @ 5420:aa068449b0b6

mod_http_oauth2: Bail out of implicit flow on invalid or missing redirect Probably hasn't been tested, and maybe never will since it's disabled and more or less deprecated in OAuth 2.1
author Kim Alvefur <zash@zash.se>
date Sat, 06 May 2023 12:23:22 +0200
parents b9af1ccac98b
children
line wrap: on
line source

module:set_global();

local metric = require"core.statsmanager".metric;
local pposix = require"util.pposix";

local allocated = metric(
	"gauge", "malloc_heap_allocated", "bytes",
	"Allocated bytes by mode of allocation",
	{"mode"}
);

local used = metric(
	"gauge", "malloc_heap_used", "bytes",
	"Used bytes"
):with_labels();

local unused = metric(
	"gauge", "malloc_heap_unused", "bytes",
	"Unused bytes"
):with_labels();

local returnable = metric(
	"gauge", "malloc_heap_returnable", "bytes",
	"Returnable bytes"
):with_labels();

module:hook("stats-update", function ()
	local meminfo = pposix.meminfo();
	if meminfo.allocated then
		allocated:with_labels("sbrk"):set(meminfo.allocated);
	end
	if meminfo.allocated_mmap then
		allocated:with_labels("mmap"):set(meminfo.allocated_mmap);
	end
	if meminfo.used then
		used:set(meminfo.used);
	end
	if meminfo.unused then
		unused:set(meminfo.unused);
	end
	if meminfo.returnable then
		returnable:set(meminfo.returnable);
	end
end);