Commit Graph

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 ed58922389 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