view mod_log_slow_events/README.markdown @ 5243:d5dc8edb2695

mod_http_oauth2: Use more compact IDs UUIDs are nice but so verbose! The reduction in entropy for the nonce should be fine since the timestamp is also counts towards this, and it changes every second (modulo clock shenanigans), so the chances of someone managing to get the same client_secret by registering with the same information at the same time as another entity should be negligible.
author Kim Alvefur <zash@zash.se>
date Sat, 11 Mar 2023 22:46:27 +0100
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
  ------- --------------