Mercurial > prosody-modules
view mod_measure_malloc/mod_measure_malloc.lua @ 5810:76b57bcfe1b2
mod_pubsub_serverinfo: Warm-up opt-in cache
By warming up the cache that contains the opt-in data, the first publication has a better chance of including domain names for remote domains that opt-in.
Without this change, those domains are named only after the _second_ publication, which can take a while. New users are likely thrown off by that.
author | Guus der Kinderen <guus.der.kinderen@gmail.com> |
---|---|
date | Thu, 04 Jan 2024 16:19:55 +0100 |
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);