mirror of
https://github.com/Icinga/icinga2.git
synced 2025-07-30 00:54:30 +02:00
Fix: Volatile check results for OK->OK transitions are logged into DB IDO statehistory
fixes #11823
This commit is contained in:
parent
e27dee5476
commit
b4843dc81b
@ -355,7 +355,8 @@ void Checkable::ProcessCheckResult(const CheckResult::Ptr& cr, const MessageOrig
|
|||||||
String old_state_str = (service ? Service::StateToString(old_state) : Host::StateToString(Host::CalculateState(old_state)));
|
String old_state_str = (service ? Service::StateToString(old_state) : Host::StateToString(Host::CalculateState(old_state)));
|
||||||
String new_state_str = (service ? Service::StateToString(new_state) : Host::StateToString(Host::CalculateState(new_state)));
|
String new_state_str = (service ? Service::StateToString(new_state) : Host::StateToString(Host::CalculateState(new_state)));
|
||||||
|
|
||||||
if (hardChange || is_volatile) {
|
/* Whether a hard state change or a volatile state change except OK -> OK happened. */
|
||||||
|
if (hardChange || is_volatile && !(IsStateOK(old_state) && IsStateOK(new_state))) {
|
||||||
OnStateChange(this, cr, StateTypeHard, origin);
|
OnStateChange(this, cr, StateTypeHard, origin);
|
||||||
Log(LogNotice, "Checkable")
|
Log(LogNotice, "Checkable")
|
||||||
<< "State Change: Checkable " << GetName() << " hard state change from " << old_state_str << " to " << new_state_str << " detected." << (is_volatile ? " Checkable is volatile." : "");
|
<< "State Change: Checkable " << GetName() << " hard state change from " << old_state_str << " to " << new_state_str << " detected." << (is_volatile ? " Checkable is volatile." : "");
|
||||||
@ -365,7 +366,8 @@ void Checkable::ProcessCheckResult(const CheckResult::Ptr& cr, const MessageOrig
|
|||||||
<< "State Change: Checkable " << GetName() << " soft state change from " << old_state_str << " to " << new_state_str << " detected.";
|
<< "State Change: Checkable " << GetName() << " soft state change from " << old_state_str << " to " << new_state_str << " detected.";
|
||||||
}
|
}
|
||||||
|
|
||||||
if (GetStateType() == StateTypeSoft || hardChange || recovery || is_volatile)
|
if (GetStateType() == StateTypeSoft || hardChange || recovery ||
|
||||||
|
is_volatile && !(IsStateOK(old_state) && IsStateOK(new_state)))
|
||||||
ExecuteEventHandler();
|
ExecuteEventHandler();
|
||||||
|
|
||||||
if (send_downtime_notification)
|
if (send_downtime_notification)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user