Commit Graph

182 Commits

Author SHA1 Message Date
Michael Friedrich 43dd9729d7 Change log message identifier for libconfig.
Refs #6346
2014-05-28 14:42:00 +02:00
Gunnar Beutner 632026cd9f Rename C++ header files.
Fixes #6291
2014-05-25 16:27:14 +02:00
Gunnar Beutner 9c3e399188 Remove unnecessary includes.
Fixes #6189
2014-05-11 18:11:32 +02:00
Gunnar Beutner 0c31bae792 Config validator: Make sure that objects are not abstract.
Fixes #6148
2014-05-09 19:40:56 +02:00
Gunnar Beutner 45270f1bb8 Refactor the agent and cluster components.
Refs #6107
2014-05-08 09:13:04 +02:00
Gunnar Beutner b1dab6c074 Implement support for the "package" keyword.
Refs #6107
2014-05-08 09:13:04 +02:00
Michael Friedrich e04d200d36 Allow EvaluateRules() to keep rules for the next iteration.
Refs #6105
2014-05-02 00:23:29 +02:00
Michael Friedrich 3c2dae1804 Evaluate object rules (group assign) before and after creating objects with apply rules.
Refs #6105
2014-05-01 23:51:42 +02:00
Gerd von Egidy 19afcd894a Split ConfigItem::ActivateItems() into ConfigItem::ValidateItems() and ConfigItem::ActivateItems().
Also removes the -Z commandline parameter: won't be needed when this feature is done.

Refs #5788
2014-04-29 10:34:01 +02:00
Michael Friedrich 7a147d268e Add group assign/ignore rules.
Fixes #5910
2014-04-23 15:50:00 +02:00
Gunnar Beutner a16ef350e2 Avoid unnecessary copies for DynamicType::GetObjects.
Fixes #5987
2014-04-09 12:22:23 +02:00
Gunnar Beutner ad42367999 Refactor name helper classes a bit.
Refs #5925
2014-04-06 08:15:07 +02:00
Gunnar Beutner 020eaf99ab Fix yet another validation issue.
Refs #5925
2014-04-05 23:23:49 +02:00
Gunnar Beutner 8d81f4b90a Fix another bug with relative object names.
Refs #5925
2014-04-05 23:23:49 +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 66e769672c Fix failed assertion in ConfigItem::GetProperties.
Refs #5870
2014-03-28 23:01:35 +01:00
Gunnar Beutner 54063f0b9f Rename __name and __type properties.
Refs #5870
2014-03-28 14:17:55 +01:00
Gunnar Beutner 8958d2f69f Implement the "import" keyword.
Refs #5869
2014-03-28 11:22:36 +01:00
Gunnar Beutner 013690e486 Remove __parent element for +=, -=, *= and /= operators.
Refs #5846
2014-03-24 11:34:41 +01:00
Gunnar Beutner 8e699ac0fa Fix scoping rules for object definitions.
Refs #5846
2014-03-24 11:23:47 +01:00
Gunnar Beutner aacc699dd4 Refactor the config parser's AST.
Refs #5846
2014-03-23 11:27:40 +01:00
Gunnar Beutner dde483d7a8 Make config error messages more awesome.
Refs #5825
2014-03-21 15:39:52 +01:00
Michael Friedrich 1d32c5b2d3 Add --no-validate option and skip duplicate validation on (re)start.
Fixes #5800
2014-03-19 20:59:18 +01:00
Gunnar Beutner caad7a7973 Implement the 'apply template' directive.
Refs #5789
2014-03-19 12:46:23 +01:00
Michael Friedrich ce737ff2f3 Change copyright header (again).
Fixes #5424
2014-03-19 11:42:47 +01:00
Gunnar Beutner f9e8e204f9 Fix: Crash when state file is invalid.
Fixes #5361
2014-01-28 14:33:21 +01:00
Michael Friedrich 555d72150a Update copyright header.
Fixes #5424
2014-01-09 00:32:11 +01:00
Gunnar Beutner 3e5af43e4d Don't cache config item properties.
Refs #5400
2013-12-20 13:31:13 +01:00
Gunnar Beutner 38aa231a2d Discard unused config items as early as possibly.
Refs #5400
2013-12-20 13:31:13 +01:00
Michael Friedrich 9452bc7095 Only print config validation for existing objects.
Refs #5298
2013-12-16 09:39:14 +01:00
Gunnar Beutner 807d0a47e6 Fix spelling mistake in ConfigItem::ActivateItems.
Fixes #5334
2013-12-15 18:47:11 +01:00
Gunnar Beutner 0af81f2da2 Fix race conditions in the config compiler.
Fixes #5335
2013-12-15 11:54:22 +01:00
Gunnar Beutner 4563bb355f Fix another race condition in DynamicObject::Start.
Fixes #5330
2013-12-14 07:36:49 +01:00
Michael Friedrich c66878fa45 Add config validation stats.
Fixes #5298
2013-12-13 16:53:40 +01:00
Gunnar Beutner f8d7f7799e Improve WorkQueue performance
Refs #5327
2013-12-13 14:08:06 +01:00
Gunnar Beutner b4f2f06b88 Implement ParallelWorkQueue class.
Refs #5327
2013-12-13 14:08:02 +01:00
Gunnar Beutner b5792a0b81 Avoid using ConfigItem::GetObject when possible.
Refs #5327
2013-12-13 14:07:57 +01:00
Gunnar Beutner 37179cdf32 Improve config compiler performance.
Refs #5327
2013-12-13 14:07:37 +01:00
Gunnar Beutner 41ded2858c Implement scheduled downtimes.
Fixes #3584
2013-12-06 13:45:18 +01:00
Gunnar Beutner 6625346922 Speed up config compiler.
Fixes #5255
2013-12-03 09:59:21 +01:00
Gunnar Beutner f05858d3ad Avoid unnecessary copies when iterating over dictionaries.
Refs #5246
2013-12-02 11:07:38 +01:00
Gunnar Beutner 640136fbdb Make object, type and variable names case-sensitive.
Fixes #5228
2013-11-27 12:29:42 +01:00
Gunnar Beutner 6acc017707 Remove namespace qualifiers for boost::make_shared and boost::enable_shared_from_this.
Fixes #5012
2013-11-07 08:28:33 +01:00
Gunnar Beutner 816d0e8d73 Fix config validation.
Fixes #4888
2013-10-16 13:37:54 +02:00
Gunnar Beutner bf1a800e39 Update copyright information. 2013-09-25 07:45:56 +02:00
Gunnar Beutner a7e25beb06 Improve config validation.
Fixes #4391
2013-09-24 13:13:14 +02:00
Gunnar Beutner c9ec28440e Another bugfix for the event order. 2013-08-29 19:25:34 +02:00
Gunnar Beutner a3eed67774 Fix order for startup events. 2013-08-29 19:05:06 +02:00
Gunnar Beutner 911f64c411 Fix state file functionality. 2013-08-29 10:40:43 +02:00
Gunnar Beutner f39f69d390 Refactor ASSERT macro. 2013-08-28 08:18:58 +02:00
Gunnar Beutner f49bb3d150 Refactor JSON-RPC library and implement check-result messages. 2013-08-27 12:21:41 +02:00
Gunnar Beutner e9e55cd8c0 Remove the replication feature and clean up the code. 2013-08-26 14:56:38 +02:00
Gunnar Beutner 97fee26289 Remove @threadsafety doc strings
Fixes #3889
2013-03-22 12:02:20 +01:00
Gunnar Beutner 6df051fad3 Fix: The order in which config items are defined should not matter
Fixes #3733
2013-03-19 07:09:06 +01:00
Gunnar Beutner c3975af6ec Refactor #includes (Part 4). 2013-03-18 11:02:18 +01:00
Gunnar Beutner 9d076c3c03 Refactor #includes (Part 3). 2013-03-17 20:19:29 +01:00
Gunnar Beutner 0bb0711d72 Refactor #includes (Part 2). 2013-03-16 21:18:53 +01:00
Gunnar Beutner 3073200b53 Cleaned up #includes (Part 1). 2013-03-15 18:21:29 +01:00
Gunnar Beutner 0029bc30b7 Fix null pointer dereference in ConfigItem::Commit(). 2013-03-11 13:07:21 +01:00
Gunnar Beutner 6f51230a79 Don't instantiate abstract objects.
Fixes #3669
2013-03-11 12:04:10 +01:00
Gunnar Beutner e2416b5b54 Check return values of SymGetLineFromAddr64 and SymFromAddr. 2013-03-07 16:00:10 +01:00
Gunnar Beutner be95f3171d Even more code refactoring. 2013-03-04 15:52:42 +01:00
Gunnar Beutner 4cecbfa01e Fixed deadlock in ConfigItem::Commit(). 2013-03-02 14:11:12 +01:00
Gunnar Beutner 48485c5f26 More lock refactoring. Yay. 2013-03-02 09:07:47 +01:00
Gunnar Beutner 572a477da3 Refactored object locking code. 2013-03-01 12:07:52 +01:00
Gunnar Beutner 404b1807e6 Removed PCH support (as it's clearly not working properly). 2013-02-22 08:12:43 +01:00
Gunnar Beutner 5e91f6c54d Fine-grained locks (WIP, Part 7). 2013-02-20 19:52:25 +01:00
Gunnar Beutner 997ca3a77a Fine-grained locks (WIP, Part 6). 2013-02-19 23:02:08 +01:00
Gunnar Beutner a4c7052a6e Fine-grained locks (WIP, Part 2). 2013-02-18 14:40:24 +01:00
Gunnar Beutner c63c28dd9c Fine-grained locks (WIP, Part 1). 2013-02-17 19:14:34 +01:00
Gunnar Beutner 580f2e1fcc Use Host constructor/destructor/OnAttributeChange instead of OnCommitted/OnRemoved for Host->services
Fixes #3612
2013-02-08 21:05:08 +01:00
Gunnar Beutner b887f14d96 Use BOOST_THROW_EXCEPTION instead of boost::throw_exception()
Fixes #3636
2013-02-06 12:51:12 +01:00
Gunnar Beutner d463bed478 Config: Implement detection of missing required attributes
Fixes #3627
2013-02-06 00:32:05 +01:00
Gunnar Beutner 7a150d2c29 Validate config objects before trying to activate them.
Fixes #3619
2013-02-05 13:06:42 +01:00
Gunnar Beutner b997462eef Bugfix: Crash while reloading config
Fixes #3621
2013-02-03 15:47:11 +01:00
Gunnar Beutner 768fd50703 Config: Changing a template ConfigItem must cause child ConfigObjects to be updated.
Fixes #2791
2013-01-31 15:26:54 +01:00
Gunnar Beutner eab6411892 Config: Implement dumping the config in text form
Fixes #2754
2013-01-30 23:02:46 +01:00
Gunnar Beutner c99d4b19a9 Throw exception for missing types. 2013-01-23 10:41:38 +01:00
Gunnar Beutner 83772d4386 Implemented DynamicType support.
Fixes #3477
2012-12-04 08:42:24 +01:00
Gunnar Beutner 8e2801e062 Updated documentation. 2012-09-19 12:32:39 +02:00
Gunnar Beutner 9bc93ce4a9 Renamed 'doc' to 'docs'.
Moved Doxygen files to docs/.
Removed cJSON directory.
Moved libraries into lib/.
Renamed 'config' to 'm4'.
Renamed 'dyn' library to 'config'.
2012-09-07 10:27:31 +02:00