Alexander Aleksandrovič Klimov
8f0b7910b9
Merge pull request #8775 from Icinga/bugfix/problem-notification-at-downtime-end-2.12
...
Send problem notifications after downtime end for checkables in child zones (2.12)
2021-05-26 11:04:56 +02:00
Alexander Aleksandrovič Klimov
bb4356cc83
Merge pull request #8782 from Icinga/bugfix/concurent-notification-send-and-delete-2.12
...
Fix crash when notifications are sent while the notification object is deleted (2.12)
2021-05-26 11:01:55 +02:00
Julian Brost
35c9c656a0
AddDowntime: return Downtime::Ptr instead of String containing the name
...
At numerous places in the code, something like this is performed:
String name = Downtime::AddDowntime(...);
Downtime::Ptr downtime = Downtime::GetByName(name);
However, `downtime` can be a `nullptr` after this as it is possible that
the downtime is deleted in between.
This commit changes the return type of `Downtime::AddDowntime` to return
a Downtime::Ptr instead of the full name of the downtime. `AddDowntime`
performs the very same `GetByName()` operation internally, but handles
the `nullptr` case correctly and throws an exception.
2021-05-25 15:59:55 +02:00
Julian Brost
0cef85cf83
Properly handle service downtime referencing a deleted host
...
Only two out of three cases were handled properly by the code: host
downtimes referencing a deleted host and service downtimes referencing a
deleted service worked fine. However, if a service downtime references a
deleted host, `Host::GetByName()` returns `nullptr` which isn't
accounted for. Use `Service::GetByNamePair()` instead as this performs a
check for the host being null internally.
2021-05-25 15:59:55 +02:00
Julian Brost
30b7a1e65b
Use reference-counted pointer in notification callback
...
`this` could be deleted after `Notification::BeginExecuteNotification`
exited and before `Notification::ExecuteNotificationHelper` finished.
This is fixed by constructing a `Notification::Ptr` and operate on that
one as it is properly reference-counted.
2021-05-25 15:59:29 +02:00
Julian Brost
ddafaa0add
Only handle event::SetSuppressed{Notifications,NotificationTypes} within the local zone
...
Note that even when passing `nullptr` as target zone to `RelayMessage()`, the
cluster message will still be sent to the parent zone. These incoming messages
will now be rejected by the parent nodes. At the moment, there's no way to only
send within the local zone.
2021-05-25 15:58:17 +02:00
Alexander Aleksandrovič Klimov
2ed72c0947
Merge pull request #8506 from Icinga/bugfix/children-recover-too-late
...
On recovery: re-check children
2020-12-11 15:41:49 +01:00
Alexander A. Klimov
854939a8ce
On recovery: re-check children
2020-12-02 12:24:40 +01:00
Alexander A. Klimov
668bf06424
Don't fire suppressed notifications if last parent recovery >= last check result
2020-12-02 12:03:19 +01:00
Noah Hilverling
7a7726c20f
Merge pull request #8174 from Icinga/bugfix/7567
...
Revert "MacroProcessor::ResolveArguments(): skip null argument values"
2020-09-21 13:59:10 +02:00
Noah Hilverling
cde3db70d1
Merge pull request #8228 from Icinga/bugfix/downtime-checkable-getname
...
Check !!downtime->GetCheckable() before downtime->GetCheckable()->GetName()
2020-09-14 09:38:28 +02:00
Alexander A. Klimov
8b0ba2275a
Check !!downtime->GetCheckable() before downtime->GetCheckable()->GetName()
...
... not to crash while removing a downtime from a disappeared checkable.
2020-09-11 14:47:46 +02:00
Alexander A. Klimov
ade891bbf5
Revert "MacroProcessor::ResolveArguments(): skip null argument values"
...
This reverts commit e4bdcedbca069cb9d42c40ce6ce8054ed3ee1b58.
2020-08-13 10:39:55 +02:00
Noah Hilverling
ddf1e50d93
ProcessCheckResult(): Make sure hosts aren't locked during Service::GetSeverity()
2020-08-11 15:24:54 +02:00
Eric Lippmann
e8745f7e96
Merge pull request #7816 from Icinga/feature/notification-timeperiod-6167
...
Re-send notifications previously suppressed by their time periods
2020-08-03 10:04:27 +02:00
Alexander A. Klimov
c515822649
Re-send notifications previously suppressed by their time periods
...
refs #6167
2020-07-29 17:13:41 +02:00
Alexander A. Klimov
37c2c7ba90
Checkable#Start(): if #last_check_started > last check, set #next_check to #last_check_started
...
refs #7888
2020-07-28 11:54:13 +02:00
Alexander A. Klimov
4585a404d6
Checkable#ExecuteCheck(): set #last_check_started to now before #UpdateNextCheck()
...
refs #7888
2020-07-28 11:54:13 +02:00
Alexander A. Klimov
9dc297987e
Sync Checkable#last_check_started
...
refs #7888
2020-07-28 11:54:13 +02:00
Alexander A. Klimov
11c6c11076
Add Checkable#last_check_started
...
refs #7888
2020-06-09 12:03:02 +02:00
Alexander A. Klimov
c4a8afbe5f
Icinga DB: record ack expiries
...
refs #8012
2020-05-15 12:02:51 +02:00
Noah Hilverling
4c9e4959f3
Merge pull request #7823 from Icinga/bugfix/unify-application-start-times
...
Fix timing point for Application::GetStartTime() (related to command endpoint grace period)
2020-03-09 09:45:57 +01:00
Alexander A. Klimov
aa258685be
Checkable#next_update: always use #check_interval if !#enable_active_checks
2020-03-06 10:03:56 +01:00
Alexander A. Klimov
0e24462064
Fire Checkable::OnFlappingChange only if flapping is enabled
...
refs #7885
2020-03-04 14:58:32 +01:00
Noah Hilverling
8f061ae80e
Fix OnHostProblemChanged signal
2020-03-04 10:55:07 +01:00
Michael Friedrich
8e62fc8efb
Fix 'check_timeout' not being forwarded to agent command endpoints
...
fixes #6992
2020-02-27 11:46:52 +01:00
Michael Friedrich
d53eb34520
Unify Application::GetStartTime() and drop GetMainTime()
...
This essentially moves the start time into the scope when main
starts to "do something", after the reload and configuration handling
is done.
2020-02-11 17:26:15 +01:00
Michael Friedrich
ae8a0b6a64
Introduce Application::GetUptime()
2020-02-11 16:47:50 +01:00
Michael Friedrich
3a4fb840d4
Tests: Add multi parent dependency test case
2020-02-11 15:13:25 +01:00
Michael Friedrich
9b0365ab43
Fix logical error with zero dependencies in IsReachable()
2020-02-11 15:13:25 +01:00
Henrik Triem
d0c0beb8be
Change behaviour of multiple dependencies (all failed = unreachable)
2020-02-11 15:13:25 +01:00
Michael Friedrich
f961370e36
ApiEvents: Fix AcknowledgementCleared code quality
2020-02-06 13:03:04 +01:00
Alexander A. Klimov
86bbb79869
Checkable#next_update: ignore re-scheduled #next_check if !#enable_active_checks
...
refs #7790
2020-01-31 11:49:47 +01:00
Michael Friedrich
7e1e8b3393
Revert "Add NotificationResult class"
...
This reverts commit 9621fd2e4bc337befb46a4c885d80ccfce95f5ab.
2020-01-07 14:26:09 +01:00
Michael Friedrich
3605076f8b
Revert "Add OnNewNotificationResult signal and ProcessNotificationResult handler"
...
This reverts commit ac483f2a8a07e4962068408d18b10a17204b6454.
2020-01-07 14:26:07 +01:00
Michael Friedrich
152709071d
Revert "Implement last_notification_result handling for Notification objects"
...
This reverts commit 1706b297a50aceafdbbfe8ed8d46c8d01c114464.
2020-01-07 14:21:06 +01:00
Michael Friedrich
d242b41704
Revert "Make NotificationResult available for events: Cluster and Features"
...
This reverts commit 566e59bbfa385ec1a023c32a1feb895791950032.
2020-01-07 14:20:59 +01:00
Michael Friedrich
55e13fd001
Revert "Fix license headers"
...
This reverts commit 48b3d25ce2ea9c6b48115f4bed2f9ac90a748c70.
2020-01-07 14:20:45 +01:00
Alexander A. Klimov
4f68cfd299
IcingaDB: include consistent IDs, start time and end time in icinga:history:stream:{flapping,acknowledgement}
...
refs #7689
2019-12-10 10:44:26 +01:00
Alexander A. Klimov
829d07aefe
Introduce Checkable#acknowledgement_last_change
...
refs #7689
2019-12-10 10:44:23 +01:00
Alexander A. Klimov
98ba1c03d0
Make Checkable#flapping_last_change consistent across nodes
...
refs #7689
2019-12-10 10:11:24 +01:00
Alexander A. Klimov
da6a9174d1
Checkable#ClearAcknowledgement(): OnAcknowledgementCleared() at most once
2019-12-05 11:54:33 +01:00
Alexander A. Klimov
798ea54173
Refuse acking an already acked checkable
2019-12-05 11:08:16 +01:00
Noah Hilverling
71ef1de964
Merge pull request #7667 from Icinga/feature/icingadb-acks-history
...
IcingaDB: populate icinga:history:stream:acknowledgement
2019-12-05 09:20:36 +01:00
Alexander A. Klimov
798c56b809
IcingaDB: update service state on Host#problem change
...
refs #7673
2019-12-03 17:37:51 +01:00
Alexander A. Klimov
ea5403a55c
Extend Checkable::OnAcknowledgementCleared by removedBy
2019-12-03 17:00:54 +01:00
Alexander A. Klimov
1931501040
Checkable#GetProblem(): consider PENDING not a problem
2019-12-03 16:56:43 +01:00
Noah Hilverling
ed1cede0a7
Merge pull request #7646 from Icinga/feature/remove-comment-author
...
/v1/actions/remove-comment: let users specify themselves
2019-11-26 16:07:09 +01:00
Noah Hilverling
6508e880b4
Merge pull request #7655 from Icinga/bugfix/commenttype
...
CommentType: remove unused variants
2019-11-26 15:47:45 +01:00
Alexander A. Klimov
dcfc494d4d
CommentType: remove unused variants
2019-11-26 11:29:04 +01:00