From 5319db938231ba5452cefb0caa1a05f43457acaa Mon Sep 17 00:00:00 2001 From: Bogdan Date: Tue, 6 Jun 2023 22:42:51 +0300 Subject: [PATCH] Set exception to observed state to handle unobserved exceptions --- .../Instrumentation/GlobalExceptionHandlers.cs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/NzbDrone.Common/Instrumentation/GlobalExceptionHandlers.cs b/src/NzbDrone.Common/Instrumentation/GlobalExceptionHandlers.cs index bd4d2c187..a5bc04ba8 100644 --- a/src/NzbDrone.Common/Instrumentation/GlobalExceptionHandlers.cs +++ b/src/NzbDrone.Common/Instrumentation/GlobalExceptionHandlers.cs @@ -13,12 +13,17 @@ namespace NzbDrone.Common.Instrumentation TaskScheduler.UnobservedTaskException += HandleTaskException; } - private static void HandleTaskException(object sender, UnobservedTaskExceptionEventArgs e) + private static void HandleTaskException(object sender, UnobservedTaskExceptionEventArgs eventArgs) { - var exception = e.Exception; + eventArgs.SetObserved(); - Console.WriteLine("Task Error: {0}", exception); - Logger.Error(exception, "Task Error"); + eventArgs.Exception.Handle(exception => + { + Console.WriteLine("Task Error: {0} {1}", exception.GetType(), exception); + Logger.Error(exception, "Task Error"); + + return true; + }); } private static void HandleAppDomainException(object sender, UnhandledExceptionEventArgs e)