Mercurial > prosody-modules
view mod_log_events_by_memory/README.markdown @ 5381:32a9817c7516
mod_firewall: Initialize compiled chunk just once for all handlers
This should fix a case where some stateful dependencies (such as throttles)
produce separate instances for every call to new_handler(), leading to
surprising behaviour (e.g. rules executed via JUMP CHAIN vs ::deliver would
have separate rate limits).
This also adds better error handling in case the compiled code fails to run
for some reason.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Fri, 28 Apr 2023 13:27:06 +0100 |
parents | f781a90018f4 |
children |
line wrap: on
line source
This module compares the memory usage reported by Lua before and after each event and reports it to the log if it exceeds the configuration setting `log_memory_threshold` (in bytes). ``` lua log_memory_threshold = 20*1024 ``` If you are looking to identify memory leaks, please first read [Three kinds of memory leaks](https://blog.nelhage.com/post/three-kinds-of-leaks/). Prosody runs on Lua which uses automatic memory management with garbage collection, so the numbers reported by this module are very likely to be useless for the purpose of identifying memory leaks. Large, but temporary, increases in memory usage can however highlight other kinds of performance problems and sometimes even provide hits for where to look for memory leaks.