diff --git a/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs b/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs index c05fe2332..bf755059b 100644 --- a/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs +++ b/DUI3/Speckle.Connectors.DUI/ContainerRegistration.cs @@ -54,14 +54,27 @@ public static IServiceCollection AddEventsAsTransient(this IServiceCollection se public static IServiceProvider UseDUI(this IServiceProvider serviceProvider, bool initializeDocumentStore = true) { //observe the unobserved! - TaskScheduler.UnobservedTaskException += async (_, args) => + TaskScheduler.UnobservedTaskException += (_, args) => { - await serviceProvider - .GetRequiredService() - .GetEvent() - .PublishAsync(args.Exception); - serviceProvider.GetRequiredService().LogError(args.Exception, "Unobserved task exception"); - args.SetObserved(); + try + { + serviceProvider + .GetRequiredService() + .CreateLogger("UnobservedTaskException") + .LogError(args.Exception, "Unobserved task exception"); + } +#pragma warning disable CA1031 + catch (Exception e) +#pragma warning restore CA1031 + { + Console.WriteLine("Error logging unobserved task exception"); + Console.WriteLine(args.Exception); + Console.WriteLine(e); + } + finally + { + args.SetObserved(); + } }; if (initializeDocumentStore)