34 Commits

Author SHA1 Message Date
Edgar Fuß
cfef9fdadc Introduce redundancy groups for Dependency Objects
Traditional behaviour was to regard all dependecies as cumulative (e.g., the parent considered unreachable if any one dependency is violated), commit ed5892238916ab667a4c9d904bd73acd3ed162f2 made all dependencies regarded redundant (e.g., the parent considered unreachable only if all dependency are violated). This may lead to unrelated services (or even hosts vs. services) inadvertantly regarded to be redundant to each other.

Most importantly, applying the explicit "disable-host-service-checks" dependency described in the "Monitoring Basics" chapter will defeat all other dependencies.

This commit introduces a new "redundancy_group" attribute for dependencies.
Specifying a redundancy_group causes a dependency to be regarded as redundant only inside that redundancy group.
Dependencies lacking a redundancy_group attribute are regarded as essential for the parent.

This allows for both cumulative and redundant dependencies and even a combination (cumulation of redundancies, like SSH depeding on both LDAP and DNS to function, while operating redundant LDAP servers as well as redundant DNS resolvers).

This commit lacks changes to the tests.
2023-02-21 16:23:36 +01:00
Yonas Habteab
28c29c1fbc Don't allow to change object parent,host/service_name at runtime 2022-09-09 18:26:28 +02:00
Alexander A. Klimov
ebfa73388f dependency.ti: fix typo
refs #8180
2021-02-04 18:29:54 +01:00
Michael Friedrich
d14a88235d Replace Copyright header with a short version, part I
CLion -> replace in path
2019-02-25 14:48:22 +01:00
Michael Friedrich
44c3b83769 icinga.com: Update '*.ti' 2018-10-18 09:30:00 +02:00
Gunnar Beutner
90496b5456 Build libraries as static libraries 2018-01-02 23:29:48 +01:00
Michael Insel
158ae2188e Change copyright header for 2018 2018-01-02 12:08:55 +01:00
Gunnar Beutner
325e4a2fb9 Use nullptr instead of <Type>::Ptr() 2017-11-30 17:47:09 +01:00
Michael Friedrich
b7caf0820d Ensure that *.icinga.com is used everywhere
fixes #13897
fixes #13277
2017-01-10 17:19:12 +01:00
Michael Friedrich
743a726752 state_filters_real shouldn't be visible in the API
fixes #12171
2016-07-19 20:09:39 +02:00
Michael Friedrich
ab4ba18238 Allow strings in Dependency states filter
refs #11445
2016-06-24 14:17:24 +02:00
Gunnar Beutner
b8e911b0e5 Make sure the dependency graph is properly updated when adding and removing objects
fixes #11686
fixes #11374
2016-05-09 14:30:12 +02:00
Gunnar Beutner
599929b0f6 Update copyright headers for 2016 2016-01-12 08:29:59 +01:00
Gunnar Beutner
1a6b41787a Implement joins for status queries
fixes #10060
2015-09-22 09:45:23 +02:00
Gunnar Beutner
f45f6ccd82 Implement support for tracking dependencies between config objects
refs #9096
2015-08-25 13:54:05 +02:00
Gunnar Beutner
e2290d5012 Implement support for unregistering objects
refs #9101
2015-08-15 20:07:11 +02:00
Michael Friedrich
d7970f5bb1 Implement modified attributes v2
refs #9081
refs #9093
2015-08-15 20:07:10 +02:00
Gunnar Beutner
ec7224e3ed Generate C++ code for type validators
fixes #7709
fixes #8867
2015-03-27 07:59:27 +01:00
Gunnar Beutner
4da3b1c5b3 Make sure that Notification objects are activated after Host/Service objects
fixes #8517
2015-02-25 12:43:38 +01:00
Michael Friedrich
aac53c1dd1 Add 'ignore_soft_states' attribute to Dependency objects
fixes #7326
2015-02-23 10:13:20 +01:00
Michael Friedrich
78bfd0204c Update copyright year 2015-01-22 12:00:23 +01:00
Gunnar Beutner
e1c95d4fa0 Improve config compiler's memory usage 2014-11-08 13:21:51 +01:00
Gunnar Beutner
92896311f3 Implement support for C/C++ comments in the TI compiler
fixes #5018
2014-10-17 19:44:31 +02:00
Michael Friedrich
56327f8e35 Dependencies: Fix disable_notifications = true as default setting
fixes #7257
2014-10-11 19:33:03 +02:00
Gunnar Beutner
eaea65a366 Make props argument for NameComposer::MakeName constant 2014-08-29 16:46:46 +02:00
Gunnar Beutner
632026cd9f Rename C++ header files.
Fixes #6291
2014-05-25 16:27:14 +02:00
Michael Friedrich
601e10cb46 Use CustomVarObject instead of DynamicObject for all libicinga objects.
Fixes #6187
2014-05-19 17:57:58 +02:00
Gunnar Beutner
606834e190 Rename the notification attributes.
Fixes #5906
2014-04-09 10:25:23 +02:00
Gunnar Beutner
cea15e11dc Implement new state and type filters.
Fixes #5906
2014-04-07 14:00:18 +02:00
Gunnar Beutner
ad42367999 Refactor name helper classes a bit.
Refs #5925
2014-04-06 08:15:07 +02:00
Gunnar Beutner
00fd51e628 Implement relative object names.
Fixes #5925
2014-04-05 22:17:37 +02:00
Gunnar Beutner
c42a582307 Rename "short_name", "host" and "sevice" attributes.
Fixes #5857
2014-04-05 09:15:40 +02:00
Gunnar Beutner
23e9630682 Implement host checks.
Refs #5919
2014-04-04 15:57:54 +02:00
Gunnar Beutner
22d53cf3b5 Implement a new object type for service dependencies.
Fixes #2799
2014-03-05 09:57:29 +01:00