From b441251aed4a45e2951bf3aad913a4c3b4f518f2 Mon Sep 17 00:00:00 2001 From: Oneric Date: Sun, 15 Dec 2024 02:50:20 +0100 Subject: [PATCH] receiver_worker: log processes crashes Oban cataches crashes to handle job failure and retry, thus it never bubbles up all the way and nothing is logged by default. For better debugging, catch and log any crashes. --- lib/pleroma/workers/receiver_worker.ex | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/pleroma/workers/receiver_worker.ex b/lib/pleroma/workers/receiver_worker.ex index 16241a75f..0b50ee649 100644 --- a/lib/pleroma/workers/receiver_worker.ex +++ b/lib/pleroma/workers/receiver_worker.ex @@ -50,5 +50,12 @@ def perform(%Job{args: %{"op" => "incoming_ap_doc", "params" => params}}) do Logger.error("Unexpected AP doc error: (raw) #{inspect(e)} from #{inspect(params)}") {:error, e} end + rescue + err -> + Logger.error( + "Receiver worker CRASH on #{inspect(params)} with: #{Exception.format(:error, err, __STACKTRACE__)}" + ) + + {:error, :crash} end end