Software /
code /
prosody-modules
File
mod_prometheus/README.markdown @ 5173:460f78654864
mod_muc_rtbl: also filter messages
This was a bit tricky because we don't want to run the JIDs
through SHA256 on each message. Took a while to come up with this
simple plan of just caching the SHA256 of the JIDs on the
occupants.
This will leave some dirt in the occupants after unloading the
module, but that should be ok; once they cycle the room, the
hashes will be gone.
This is direly needed, otherwise, there is a tight race between
the moderation activities and the actors joining the room.
author | Jonas Schäfer <jonas@wielicki.name> |
---|---|
date | Tue, 21 Feb 2023 21:37:27 +0100 |
parent | 4790:bb66e87a3604 |
child | 5413:c90011054335 |
line wrap: on
line source
--- labels: - Statistics summary: Implementation of the Prometheus protocol ... Description =========== This module implements the Prometheus reporting protocol, allowing you to collect statistics directly from Prosody into Prometheus. See the [Prometheus documentation][prometheusconf] on the format for more information. [prometheusconf]: https://prometheus.io/docs/instrumenting/exposition_formats/ **Note:** For use with Prosody trunk (0.12) we recommend the bundled [mod_http_openmetrics](https://prosody.im/doc/modules/mod_http_openmetrics) instead. This module (mod_prometheus) will continue to be available in the community repository for use with older Prosody versions. Configuration ============= mod\_prometheus itself doesn’t have any configuration option, but it requires Prosody’s [internal statistics provider](https://prosody.im/doc/statistics#built-in_providers) to be enabled. You may also want to change the default collection interval to the one your statistics consumer is using. See below for more information. ```lua statistics = "internal" statistics_interval = 15 -- in seconds ``` ::: {.alert .alert-warning} **NOTE:** Make sure to put the statistics variables in the global section of the configuration, **not** in a `VirtualHost` or `Component` section. You can use `prosodyctl check` if you are unsure and want to check your configuration. ::: See also the documentation of Prosody’s [HTTP server](https://prosody.im/doc/http), since Prometheus is an HTTP protocol that is how you can customise its URL. The default one being http://localhost:5280/metrics Scrape interval vs statistics_interval -------------------------------------- The `statistics_interval` should be set to `"manual"` on trunk if and only if you have a single Prometheus instance scraping Prosody. This will allow the internal statistics gathering to run optimally. If you have multiple instances scraping Prosody, set `statistics_interval` to the scrape interval of Prometheus to avoid errors in rate calculations and similar. Future work will allow the use of `"manual"` with multiple Prometheus instances and varying scrape intervals (stay tuned). Compatibility ============= ------- ------------- trunk Works (but replaced by [mod_http_openmetrics](https://prosody.im/doc/modules/mod_http_openmetrics)) 0.11 Works 0.10 Works 0.9 Does not work ------- -------------