diff --git a/components/notification/notificationcomponent.cpp b/components/notification/notificationcomponent.cpp index 358da3052..9e474eb80 100644 --- a/components/notification/notificationcomponent.cpp +++ b/components/notification/notificationcomponent.cpp @@ -78,6 +78,8 @@ void NotificationComponent::NotificationTimerHandler(void) Service::Ptr service = notification->GetService(); bool reachable = service->IsReachable(); + notification->SetNextNotification(Utility::GetTime() + notification->GetNotificationInterval()); + bool send_notification; { @@ -89,14 +91,10 @@ void NotificationComponent::NotificationTimerHandler(void) if (service->GetState() == StateOK) continue; - send_notification = reachable && !service->IsInDowntime() && !service->IsAcknowledged(); + if (!reachable || service->IsInDowntime() || service->IsAcknowledged()) + continue; } - notification->SetNextNotification(Utility::GetTime() + notification->GetNotificationInterval()); - - if (!send_notification) - continue; - try { Log(LogInformation, "notification", "Sending reminder notification for service '" + service->GetName() + "'"); notification->BeginExecuteNotification(NotificationProblem, service->GetLastCheckResult(), false);