From f650b1e83c7d6795cb9107b50eec90d593e97571 Mon Sep 17 00:00:00 2001 From: Alexey Shchepin Date: Thu, 26 Jan 2023 02:47:34 +0300 Subject: [PATCH] Log HTTP handler exceptions --- src/ejabberd_http.erl | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/ejabberd_http.erl b/src/ejabberd_http.erl index a33232422..42693514b 100644 --- a/src/ejabberd_http.erl +++ b/src/ejabberd_http.erl @@ -370,7 +370,15 @@ process(Handlers, Request) -> HandlerModule:socket_handoff( LocalPath, Request, HandlerOpts); false -> - HandlerModule:process(LocalPath, Request) + try + HandlerModule:process(LocalPath, Request) + catch + Class:Reason:Stack -> + ?ERROR_MSG( + "HTTP handler crashed: ~s", + [misc:format_exception(2, Class, Reason, Stack)]), + erlang:raise(Class, Reason, Stack) + end end, ejabberd_hooks:run(http_request_debug, [{LocalPath, Request}]), R;