public void TestTaskUnhandled()
        {
            var            taskCompletion = new TaskCompletionSource <bool>();
            UnobservedType observedType   = UnobservedType.AppDomain;

            var handlers = new UnobservedHandlers((object sender, Exception exception, bool isTerminating, UnobservedType sourceType) =>
            {
                observedType = sourceType;
                taskCompletion.SetResult(true);

                return(true);
            });

            Task.Factory.StartNew(() =>
            {
                Task.Delay(100).GetAwaiter().GetResult();
                handlers.TestTaskUnhandled(this);
            });

            var completedTask = Task.WhenAny(taskCompletion.Task, Task.Delay(5000)).GetAwaiter().GetResult();

            Assert.IsTrue(completedTask.Id == taskCompletion.Task.Id, "The task id was not expected");
            Assert.IsTrue(observedType == UnobservedType.TaskScheduler, "Triggered type was not expected");
        }
        /// <inheritdoc />
        protected override bool UnhandledExceptionRaised(object sender, Exception exception, bool isTerminating, UnobservedType sourceType)
        {
            Logger.LogError(exception, "An unhandled exception of type {exceptionType} was caught in legacy even processor instance with StatefulSet index {statefulSetIndexCount} with a terminating value of {isTerminating}", sourceType, KubernetesStatefulSetIndex, isTerminating);

            return(false);
        }