Mercurial > prosody-modules
view mod_log_slow_events/README.markdown @ 5951:d6a695abb33c
mod_ping_muc: Delay ping a configurable amount of time
If a server is restarting, checking immediately before it has a chance
to complete its restart and get ready would often fail, preventing the
possibility of transparent restarts as supported by Prosody's mod_muc.
Reconnecting immediately when a connection is closed for being idle, or
because the remote server is trying to reclaim some resources, is also
counter-productive as the connection may fail.
Also, if there is some Internet routing problem affecting s2s, it may
help to wait a bit before checking, in case the problem resolved itself
in the mean time.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 11 Aug 2024 16:10:24 +0200 |
parents | d276bf3f0464 |
children |
line wrap: on
line source
--- labels: - 'Stage-Stable' summary: Log warning when event handlers take too long ... Introduction ============ Most activities in Prosody take place within our built-in events framework, for example stanza processing and HTTP request handling, authentication, etc. Modules are able to execute code when an event occurs, and they should return as quickly as possible. Poor performance (e.g. slow or laggy server) can be caused by event handlers that are slow to respond. This module is able to monitor how long each event takes to be processed, and logs a warning if an event takes above a certain amount of time, including providing any details about the event such as the user or stanza that triggered it. The aim is to help debug why a server may not be as responsive as it should be, and ultimately which module is to blame for that. Configuration ====================== There is a single configuration option: ``` -- Set the number of seconds an event may take before -- logging a warning (fractional values are ok) log_slow_events_threshold = 0.5 ``` Metrics ======= In addition to the log messages, a new 'slow_events' metric will be exported to your configured stats backend (if any). Compatibility ------------- ------- -------------- trunk Works 0.10 Works 0.9 Doesn't work 0.8 Doesn't work ------- --------------