<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <link>http://hg.omfa.de/prosody-hg/</link>
    <language>en-us</language>

    <title>prosody-hg: util/statistics.lua history</title>
    <description>util/statistics.lua revision history</description>
    <item>
    <title>util: Prefix module imports with prosody namespace</title>
    <link>http://hg.omfa.de/prosody-hg/log/d10957394a3c/util/statistics.lua</link>
    <description><![CDATA[util: Prefix module imports with prosody namespace]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 17 Mar 2023 16:23:16 +0100</pubDate>
</item>
<item>
    <title>openmetrics/histograms: improve code clarity</title>
    <link>http://hg.omfa.de/prosody-hg/log/7d985e5bc1fb/util/statistics.lua</link>
    <description><![CDATA[openmetrics/histograms: improve code clarity<br/>
<br/>
If buckets thresholds are to be taken as &quot;less than or equal to&quot;, then<br/>
using the less than or equal to operator seems sensible.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 27 Dec 2021 16:05:12 +0100</pubDate>
</item>
<item>
    <title>openmetrics/histograms: fix incorrect condition for bucketing</title>
    <link>http://hg.omfa.de/prosody-hg/log/7ba686696250/util/statistics.lua</link>
    <description><![CDATA[openmetrics/histograms: fix incorrect condition for bucketing<br/>
<br/>
The buckets thresholds are to be taken as &quot;less than or equal to&quot;.<br/>
The condition as written in the code did only &quot;less than&quot;, not<br/>
&quot;less than or equal to&quot;. That's fixed now.]]></description>
    <author>&#74;&#111;&#110;&#97;&#115;&#32;&#83;&#99;&#104;&#228;&#102;&#101;&#114;&#32;&#60;&#106;&#111;&#110;&#97;&#115;&#64;&#119;&#105;&#101;&#108;&#105;&#99;&#107;&#105;&#46;&#110;&#97;&#109;&#101;&#62;</author>
    <pubDate>Sun, 26 Dec 2021 22:32:00 +0100</pubDate>
</item>
<item>
    <title>Statistics: Rewrite statistics backends to use OpenMetrics</title>
    <link>http://hg.omfa.de/prosody-hg/log/5f15ab7c6ae5/util/statistics.lua</link>
    <description><![CDATA[Statistics: Rewrite statistics backends to use OpenMetrics<br/>
<br/>
The metric subsystem of Prosody has had some shortcomings from<br/>
the perspective of the current state-of-the-art in metric<br/>
observability.<br/>
<br/>
The OpenMetrics standard [0] is a formalization of the data<br/>
model (and serialization format) of the well-known and<br/>
widely-used Prometheus [1] software stack.<br/>
<br/>
The previous stats subsystem of Prosody did not map well to that<br/>
format (see e.g. [2] and [3]); the key reason is that it was<br/>
trying to do too much math on its own ([2]) while lacking<br/>
first-class support for &quot;families&quot; of metrics ([3]) and<br/>
structured metric metadata (despite the `extra` argument to<br/>
metrics, there was no standard way of representing common things<br/>
like &quot;tags&quot; or &quot;labels&quot;).<br/>
<br/>
Even though OpenMetrics has grown from the Prometheus world of<br/>
monitoring, it maps well to other popular monitoring stacks<br/>
such as:<br/>
<br/>
- InfluxDB (labels can be mapped to tags and fields as necessary)<br/>
- Carbon/Graphite (labels can be attached to the metric name with<br/>
  dot-separation)<br/>
- StatsD (see graphite when assuming that graphite is used as<br/>
  backend, which is the default)<br/>
<br/>
The util.statsd module has been ported to use the OpenMetrics<br/>
model as a proof of concept. An implementation which exposes<br/>
the util.statistics backend data as Prometheus metrics is<br/>
ready for publishing in prosody-modules (most likely as<br/>
mod_openmetrics_prometheus to avoid breaking existing 0.11<br/>
deployments).<br/>
<br/>
At the same time, the previous measure()-based API had one major<br/>
advantage: It is really simple and easy to use without requiring<br/>
lots of knowledge about OpenMetrics or similar concepts. For that<br/>
reason as well as compatibility with existing code, it is preserved<br/>
and may even be extended in the future.<br/>
<br/>
However, code relying on the `stats-updated` event as well as<br/>
`get_stats` from `statsmanager` will break because the data<br/>
model has changed completely; in case of `stats-updated`, the<br/>
code will simply not run (as the event was renamed in order<br/>
to avoid conflicts); the `get_stats` function has been removed<br/>
completely (so it will cause a traceback when it is attempted<br/>
to be used).<br/>
<br/>
Note that the measure_*_event methods have been removed from<br/>
the module API. I was unable to find any uses or documentation<br/>
and thus deemed they should not be ported. Re-implementation is<br/>
possible when necessary.<br/>
<br/>
   [0]: https://openmetrics.io/<br/>
   [1]: https://prometheus.io/<br/>
   [2]: #959<br/>
   [3]: #960]]></description>
    <author>&#74;&#111;&#110;&#97;&#115;&#32;&#83;&#99;&#104;&#228;&#102;&#101;&#114;&#32;&#60;&#106;&#111;&#110;&#97;&#115;&#64;&#119;&#105;&#101;&#108;&#105;&#99;&#107;&#105;&#46;&#110;&#97;&#109;&#101;&#62;</author>
    <pubDate>Sun, 18 Apr 2021 11:47:41 +0200</pubDate>
</item>
<item>
    <title>util.statistics: Unify API of methods to include a config table</title>
    <link>http://hg.omfa.de/prosody-hg/log/d75d805c852f/util/statistics.lua</link>
    <description><![CDATA[util.statistics: Unify API of methods to include a config table<br/>
<br/>
The primary goal here is to allow specifying an unit that each<br/>
statistic is measured in.]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Fri, 04 Jan 2019 06:56:45 +0100</pubDate>
</item>
<item>
    <title>util.statistics: Add a total count for rate counters, counting from server start.</title>
    <link>http://hg.omfa.de/prosody-hg/log/bbc879eab1bf/util/statistics.lua</link>
    <description><![CDATA[util.statistics: Add a total count for rate counters, counting from server start.]]></description>
    <author>&#69;&#109;&#109;&#97;&#110;&#117;&#101;&#108;&#32;&#71;&#105;&#108;&#32;&#80;&#101;&#121;&#114;&#111;&#116;&#32;&#60;&#108;&#105;&#110;&#107;&#109;&#97;&#117;&#118;&#101;&#64;&#108;&#105;&#110;&#107;&#109;&#97;&#117;&#118;&#101;&#46;&#102;&#114;&#62;</author>
    <pubDate>Thu, 10 Oct 2019 16:58:02 +0200</pubDate>
</item>
<item>
    <title>util.statistics,statsd,throttle,timer: Replace dependency on LuaSockect with util.time for precision time</title>
    <link>http://hg.omfa.de/prosody-hg/log/dc758422d896/util/statistics.lua</link>
    <description><![CDATA[util.statistics,statsd,throttle,timer: Replace dependency on LuaSockect with util.time for precision time]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Mon, 20 Mar 2017 00:48:28 +0100</pubDate>
</item>
<item>
    <title>util.statistics: Collect duration sample even if run fewer times than the sample interval</title>
    <link>http://hg.omfa.de/prosody-hg/log/99fa40d498cc/util/statistics.lua</link>
    <description><![CDATA[util.statistics: Collect duration sample even if run fewer times than the sample interval]]></description>
    <author>&#75;&#105;&#109;&#32;&#65;&#108;&#118;&#101;&#102;&#117;&#114;&#32;&#60;&#122;&#97;&#115;&#104;&#64;&#122;&#97;&#115;&#104;&#46;&#115;&#101;&#62;</author>
    <pubDate>Tue, 05 May 2015 00:48:55 +0200</pubDate>
</item>
<item>
    <title>util.statistics: Return 0 as percentile if data out of range</title>
    <link>http://hg.omfa.de/prosody-hg/log/2b5ced5ca31f/util/statistics.lua</link>
    <description><![CDATA[util.statistics: Return 0 as percentile if data out of range]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Fri, 30 Jan 2015 14:21:51 +0000</pubDate>
</item>
<item>
    <title>statsmanager, util.statistics: API changes, remove debugging</title>
    <link>http://hg.omfa.de/prosody-hg/log/7b2d16c14659/util/statistics.lua</link>
    <description><![CDATA[statsmanager, util.statistics: API changes, remove debugging]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Wed, 21 Jan 2015 01:26:06 +0000</pubDate>
</item>
<item>
    <title>util.statistics: New library for gathering various kinds of statistics</title>
    <link>http://hg.omfa.de/prosody-hg/log/0e29c05c3503/util/statistics.lua</link>
    <description><![CDATA[util.statistics: New library for gathering various kinds of statistics]]></description>
    <author>&#77;&#97;&#116;&#116;&#104;&#101;&#119;&#32;&#87;&#105;&#108;&#100;&#32;&#60;&#109;&#119;&#105;&#108;&#100;&#49;&#64;&#103;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;&#62;</author>
    <pubDate>Tue, 20 Jan 2015 12:31:32 +0000</pubDate>
</item>

  </channel>
</rss>
