File

mod_traceback/mod_traceback.lua @ 6206:ac7e2992fe6e

mod_rest: Strip down error payloads to avoid stack overflow When the util.error feature of including a traceback in the error, util.json can't serialize it as it is often self-referential.
author Kim Alvefur <zash@zash.se>
date Sun, 16 Mar 2025 17:04:51 +0100
parent 5875:dde9d21a599f
line wrap: on
line source

module:set_global();

local traceback = require "util.debug".traceback;

local signal = module:get_option_string(module.name, "SIGUSR1");
module:hook("signal/" .. signal, function()
	module:log("info", "Received %s, writing traceback", signal);
	local f = io.open(prosody.paths.data .. "/traceback.txt", "a+");
	f:write(traceback(), "\n");
	f:close();
end);