Software /
code /
prosody-modules
Annotate
mod_measure_lua/mod_measure_lua.lua @ 5216:1d9dbe84b6e8
mod_cloud_notify: Add note about Lua version requirements to README
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Tue, 07 Mar 2023 10:26:57 +0000 |
parent | 4602:78f1515575ab |
rev | line source |
---|---|
4578
d95fcde6e39d
mod_measure_lua: add openmetrics-spirited way to collect lua memory use
Jonas Schäfer <jonas@wielicki.name>
parents:
diff
changeset
|
1 module:set_global() |
d95fcde6e39d
mod_measure_lua: add openmetrics-spirited way to collect lua memory use
Jonas Schäfer <jonas@wielicki.name>
parents:
diff
changeset
|
2 |
d95fcde6e39d
mod_measure_lua: add openmetrics-spirited way to collect lua memory use
Jonas Schäfer <jonas@wielicki.name>
parents:
diff
changeset
|
3 local custom_metric = require "core.statsmanager".metric |
d95fcde6e39d
mod_measure_lua: add openmetrics-spirited way to collect lua memory use
Jonas Schäfer <jonas@wielicki.name>
parents:
diff
changeset
|
4 local gc_bytes = custom_metric( |
d95fcde6e39d
mod_measure_lua: add openmetrics-spirited way to collect lua memory use
Jonas Schäfer <jonas@wielicki.name>
parents:
diff
changeset
|
5 "gauge", "lua_heap", "bytes", |
d95fcde6e39d
mod_measure_lua: add openmetrics-spirited way to collect lua memory use
Jonas Schäfer <jonas@wielicki.name>
parents:
diff
changeset
|
6 "Memory used by objects under control of the Lua garbage collector" |
d95fcde6e39d
mod_measure_lua: add openmetrics-spirited way to collect lua memory use
Jonas Schäfer <jonas@wielicki.name>
parents:
diff
changeset
|
7 ):with_labels() |
d95fcde6e39d
mod_measure_lua: add openmetrics-spirited way to collect lua memory use
Jonas Schäfer <jonas@wielicki.name>
parents:
diff
changeset
|
8 |
d95fcde6e39d
mod_measure_lua: add openmetrics-spirited way to collect lua memory use
Jonas Schäfer <jonas@wielicki.name>
parents:
diff
changeset
|
9 module:hook("stats-update", function () |
d95fcde6e39d
mod_measure_lua: add openmetrics-spirited way to collect lua memory use
Jonas Schäfer <jonas@wielicki.name>
parents:
diff
changeset
|
10 local kbytes = collectgarbage("count"); |
d95fcde6e39d
mod_measure_lua: add openmetrics-spirited way to collect lua memory use
Jonas Schäfer <jonas@wielicki.name>
parents:
diff
changeset
|
11 gc_bytes:set(kbytes * 1024); |
d95fcde6e39d
mod_measure_lua: add openmetrics-spirited way to collect lua memory use
Jonas Schäfer <jonas@wielicki.name>
parents:
diff
changeset
|
12 end); |
d95fcde6e39d
mod_measure_lua: add openmetrics-spirited way to collect lua memory use
Jonas Schäfer <jonas@wielicki.name>
parents:
diff
changeset
|
13 |
4602
78f1515575ab
mod_measure_lua: Use gauge instead of counter for Lua version (thanks jonas’)
Kim Alvefur <zash@zash.se>
parents:
4601
diff
changeset
|
14 custom_metric("gauge", "lua_info", "", "Lua runtime version", { "version" }):with_labels(_VERSION):set(1); |