File

tools/tb2err @ 13382:f70311588c77

mod_s2s: Close connection on smacks timeout This merges the mod_s2s_smacks_timeout behavior from prosody-modules This event is fired by mod_smacks when the connection has not responded to an ack-request for a period of time defaulting to 30 seconds, indicating that the connection has become stuck or non-responsive. Closing it prevents routing further messages via this connection and frees resources. A stuck connection may otherwise remain until for a time determined by the OS TCP subsystem, which can be quite long.
author Kim Alvefur <zash@zash.se>
date Sat, 02 Dec 2023 20:20:05 +0100
parent 13066:4aa4a51a7a77
line wrap: on
line source

#!/usr/bin/env lua
-- traceback to errors.err for vim -q
-- e.g. curl https://prosody.im/paste/xxx | tb2err > errors.err && vim -q

local path_sep = package.config:sub(1,1);
for line in io.lines() do
	local src, err = line:match("%s*(%S+)(:%d+: .*)")
	if src then
		src = src:gsub("\\", path_sep);
		local cut = src:match("/()core/")
			or src:match("/()net/")
			or src:match("/()util/")
			or src:match("/()modules/")
			or src:match("/()prosody%-modules/")
			or src:match("/()plugins/")
			or src:match("/()prosody[ctl]*$")
		if cut then
			src = src:sub(cut);
		end
		src = src:gsub("prosody%-modules/", "../modules/")
		src = src:gsub("^modules/", "plugins/")
		io.write(src, err, "\n");
	end
end