Software /
code /
prosody-modules
File
mod_stats39/README.md @ 6043:7b093a9b95ea
mod_report_forward: Fix traceback on error message passed to datetime function
If archive:get() returns an error, e.g. because it can't find a message
with the given ID, it may return e.g. nil, "item-not-found" or similar
where the error condition ends up in reported_message_time, which gets
passed to util.datetime, which thus ends up doing math to a string or
error object.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Wed, 06 Nov 2024 22:25:41 +0100 |
parent | 6003:fe081789f7b5 |
line wrap: on
line source
--- labels: - 'Statistics' ... This module provides **public** access to Prosodys [internal statistics][doc:statistics] trough the [XEP-0039: Statistics Gathering] protocol. This is a simple protocol that returns triplets of name, unit and value for each know statistic collected by Prosody. The names used are the internal names assigned by modules or statsmanager, names from the registry are **not** used. # Configuration Enabled as usual by adding to [`modules_enabled`][doc:modules_enabled]: ```lua -- Enable Prosodys internal statistics gathering statistics = "internal" -- and enable the module modules_enabled = { -- other modules "stats39"; } ``` # Usage ## Example Statistics can be queried from the XML console of clients that have one: ```xml C: <iq type="get" to="example.com" id="dTMERjt5"> <query xmlns="http://jabber.org/protocol/stats"/> </iq> S: <iq type="result" to="example.com" id="dTMERjt5"> <query xmlns="http://jabber.org/protocol/stats"> <stat name="cpu.clock:amount" value="0.212131"/> <stat name="cpu.percent:amount" value="0"/> <stat name="memory.allocated:amount" value="8.30259e+06"/> <stat name="memory.allocated_mmap:amount" value="401408"/> <stat name="memory.lua:amount" value="6.21347e+06"/> <stat name="memory.returnable:amount" value="13872"/> <stat name="memory.rss:amount" value="2.03858e+07"/> <stat name="memory.total:amount" value="6.53885e+07"/> <stat name="memory.unused:amount" value="14864"/> <stat name="memory.used:amount" value="8.28773e+06"/> <stat name="/*/mod_c2s/connections:amount" value="0"/> <stat name="/*/mod_c2s/ipv6:amount" value="0"/> <stat name="/*/mod_s2s/connections:amount" value="0"/> <stat name="/*/mod_s2s/ipv6:amount" value="0"/> <stat name="stats.collection:duration" unit="seconds" value="0.000125647"/> <stat name="stats.processing:duration" unit="seconds" value="0"/> </query> </iq> ``` # Compatibly Prosody version Works ----------------- ------- 0.9.x No 0.10.x Yes 0.11.x Yes Trunk[^1] No [^1]: Does not work with trunk since the [change to OpenMetrics](https://hg.prosody.im/trunk/rev/5f15ab7c6ae5)