Flapping{Start,End} notifications must not depend on state changes

fixes #11899
This commit is contained in:
Michael Friedrich 2016-06-13 10:12:38 +02:00
parent 399ae42a8c
commit cdd858a0ec

View File

@ -370,7 +370,7 @@ void Checkable::ProcessCheckResult(const CheckResult::Ptr& cr, const MessageOrig
if (send_downtime_notification && IsActive())
OnNotificationsRequested(this, in_downtime ? NotificationDowntimeStart : NotificationDowntimeEnd, cr, "", "", MessageOrigin::Ptr());
if (send_notification) {
/* Flapping start/end notifications */
if (!was_flapping && is_flapping) {
if (!IsPaused())
OnNotificationsRequested(this, NotificationFlappingStart, cr, "", "", MessageOrigin::Ptr());
@ -387,11 +387,13 @@ void Checkable::ProcessCheckResult(const CheckResult::Ptr& cr, const MessageOrig
<< "Flapping: Checkable " << GetName() << " stopped flapping (" << GetFlappingThreshold() << "% >= " << GetFlappingCurrent() << "%).";
NotifyFlapping(origin);
} else if (!was_flapping && !is_flapping) {
}
/* Problem notifications */
if (send_notification && !is_flapping) {
if (!IsPaused())
OnNotificationsRequested(this, recovery ? NotificationRecovery : NotificationProblem, cr, "", "", MessageOrigin::Ptr());
}
}
}
void Checkable::ExecuteRemoteCheck(const Dictionary::Ptr& resolvedMacros)