File

plugins/mod_stanza_debug.lua @ 11571:a8f0f87e115a

prosody: Close the state on exit (ie garbage-collect everything) This ensures __gc is called on everything that may need it, such as database connections. It was reported in the chat by Happy that SQLite3 does not close its state cleanly in WAL mode, leaving the WAL file behind. This is probably rather a bug in mod_storage_sql, but forcing a final GC sweep should also help with such things everywhere.
author Kim Alvefur <zash@zash.se>
date Tue, 18 May 2021 20:08:37 +0200
parent 10111:0f335815244f
child 12977:74b9e05af71e
line wrap: on
line source

module:set_global();

local filters = require "util.filters";

local function log_send(t, session)
	if t and t ~= "" and t ~= " " then
		session.log("debug", "SEND: %s", t);
	end
	return t;
end

local function log_recv(t, session)
	if t and t ~= "" and t ~= " " then
		session.log("debug", "RECV: %s", t);
	end
	return t;
end

local function init_raw_logging(session)
	filters.add_filter(session, "stanzas/in",  log_recv, -10000);
	filters.add_filter(session, "stanzas/out", log_send,  10000);
end

filters.add_filter_hook(init_raw_logging);

function module.unload()
	filters.remove_filter_hook(init_raw_logging);
end