Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
[dev.icinga.com #2537] add trigger_time to downtimes to allow calculating of flexible downtimes endtime #945
This issue has been migrated from Redmine: https://dev.icinga.com/issues/2537
Created by mfriedrich on 2012-04-22 18:30:42 +00:00
as we have learned in #2536 the core won't keep track about the downtime trigger time, but only the start, end, entry times are kept.
the problem is that on a flexible downtime with a duration less that end-start time, this will result in relooping/rescheduling the short flexible downtime for the host/service even if this has ended after one duration.
in order to allow fixing #2536, we need to add an entry to the downtime section - my proposal is "trigger_time" which gets populated only once - when the downtime is started, when downtime ends, this must be reset to 0L.
as this an objects change again, it needs to be kept the compatible abi breaking workaround at the end of the downtime struct.
furthermore, this requires changes for the event broker, as well idoutils recognizing the trigger_time as well.
2012-04-22 20:02:28 +00:00 by mfriedrich f03dbcd
2012-04-22 20:52:41 +00:00 by mfriedrich 8d315d0
2012-04-22 21:23:58 +00:00 by mfriedrich e17125c
2012-04-23 00:06:38 +00:00 by mfriedrich b7a29ac
2012-04-23 11:37:19 +00:00 by mfriedrich 2bfc1d4
2012-04-28 08:52:20 +00:00 by mfriedrich 51997db
2012-04-28 08:53:29 +00:00 by mfriedrich dc1569b
2012-04-28 08:56:48 +00:00 by mfriedrich 8422f24
Updated by mfriedrich on 2012-04-22 19:29:36 +00:00
adding this requires further changes.
Updated by mfriedrich on 2012-04-22 19:37:29 +00:00
to clarify what we do for fixing #2536
if we happen to trigger the flexible downtime, we check if the currenttime is greater equal than trigger_time (time when the flex downtime started) plus added the duration it lasts. so we can be sure about the 1x duration it should last, and can safely expire the downtime.
this change requires further tests for all variants of course.