Commit Graph

681 Commits

Author SHA1 Message Date
Gunnar Beutner e9fddcc575 Build fix for Windows.
Refs #5788
2014-05-01 11:27:43 +02:00
Gunnar Beutner f989bbd678 Make sure that WQ threads are started after Daemonize().
Fixes #6063
2014-04-29 13:17:08 +02:00
Gunnar Beutner b119c3285b Change log level for some messages.
Fixes #6072
2014-04-29 11:01:28 +02:00
Gerd von Egidy 1e321f0959 Fix possible race when the reload-process determines it's parent pid and the true parent has ended
Now transfers the true parent pid as parameter to --reload-internal.

Refs #5788
2014-04-29 10:34:02 +02:00
Gerd von Egidy 9f56b6ee74 Fix handling of m_RequestRestart in RunEventLoop, improve reload timeout
Refs #5788
2014-04-29 10:34:02 +02:00
Gerd von Egidy 3ece2ba643 Fix logging during shutdown procedure.
Refs #5788
2014-04-29 10:34:02 +02:00
Gerd von Egidy 3a294bbd5d Fork new process from previous daemon on reload.
The previously planned logic of forking a new daemon from the reload-process didn't work with
systemd: systemd does not allow long-running processes started from within the reload command.

Replaces parameter --reload with --reload-internal which is used when starting the new daemon.

Refs #5788
2014-04-29 10:34:01 +02:00
Gerd von Egidy 33bd909b71 Add --reload command-line parameter.
Refs #5788
2014-04-29 10:34:01 +02:00
Gunnar Beutner ea24147d0d Add uptime information to the "icinga" check type.
Fixes #6064
2014-04-28 09:23:52 +02:00
Gunnar Beutner e6fb8caace Implement loop detection for cluster links.
Refs #5467
2014-04-25 15:07:13 +02:00
Gunnar Beutner 737441f201 Fix deadlock in TlsStream::{Read,Write}.
Refs #5467
2014-04-25 15:07:13 +02:00
Michael Friedrich d0af8a226b Fix headers. 2014-04-23 15:57:58 +02:00
Michael Friedrich c239f84fd7 Revert "Add group apply (creates object only once and sets membership)."
This reverts commit 559a4fef67.

Refs #5910
2014-04-23 14:59:48 +02:00
Gunnar Beutner 951c61ed16 Use fewer threads by default.
Refs #6053
2014-04-22 20:53:46 +02:00
Gunnar Beutner e489c98e6d Make the debug log less spammy.
Refs #4865
2014-04-22 07:47:10 +02:00
Gunnar Beutner 66faec2689 Build fix for OS X. 2014-04-22 07:13:16 +02:00
Gunnar Beutner 6b55e7827d Implement support for environment variables on Windows.
Fixes #6049
2014-04-21 20:15:03 +02:00
Gunnar Beutner 6d6e91cd2d Implement Windows support for the Process class.
Fixes #3684
2014-04-21 15:44:36 +02:00
Gunnar Beutner 088b15e964 Build fix for Clang >= 3.4.
Fixes #5360
2014-04-20 14:12:20 +02:00
Gunnar Beutner e749f6eae5 Make sure the installer doesn't overwrite config files.
Refs #4865
2014-04-20 11:22:15 +02:00
Gunnar Beutner 9905a4e09b Fix crash in Timer::AdjustTimers.
Refs #4865
2014-04-20 07:21:38 +02:00
Gunnar Beutner e19948fc95 Add agent setup wizard for Windows.
Refs #4865
2014-04-18 12:39:50 +02:00
Gunnar Beutner 0fb55f3404 Fix NSIS installer and Windows service.
Refs #4865
2014-04-18 12:15:01 +02:00
Michael Friedrich 5b359ea518 Add CompatUtility::GetModifiedAttributesList() for Livestatus.
Fixes #6042
2014-04-17 16:01:44 +02:00
Michael Friedrich 72f7537fa6 Add modified attributes for user and command vars.
Fixes #6043
2014-04-17 15:20:28 +02:00
Michael Friedrich 8cfce66604 Fix custom var override.
Refs #5956
Refs #5962
2014-04-16 17:52:12 +02:00
Michael Friedrich 7c0d93ea0a Add modified attributes for vars dictionary.
- new external commands
- raw values for 'vars'
- OnVarsChanged() signal for db_ido customvariablestatus updates
- refactor db_ido customvariable config updates

Refs #5956
Refs #5962
2014-04-16 17:52:12 +02:00
Gunnar Beutner ed057de512 Add missing ::Stop calls.
Refs #4865
2014-04-16 15:01:31 +02:00
Michael Friedrich 559a4fef67 Add group apply (creates object only once and sets membership).
Refs #5910
2014-04-15 14:55:29 +02:00
Gunnar Beutner 9fc5e6217a Build fix for Windows.
Refs #6008
2014-04-14 09:59:00 +02:00
Gunnar Beutner 8c771d51e4 Fix another exception issue with FreeBSD.
Refs #6008
2014-04-14 03:02:33 +02:00
Gunnar Beutner 0ea144a64d Set OpenSSL locking callback.
Refs #4865
2014-04-12 21:22:59 +02:00
Gunnar Beutner 06fdaeb2b2 Fix file descriptors not getting closed properly
Refs #4865
2014-04-12 08:16:57 +02:00
Gunnar Beutner 5dbf8f95de Another build fix for Windows.
Refs #5987
2014-04-09 12:44:35 +02:00
Gunnar Beutner c2b18d4f35 Windows build fix.
Refs #5987
2014-04-09 12:38:26 +02:00
Gunnar Beutner a16ef350e2 Avoid unnecessary copies for DynamicType::GetObjects.
Fixes #5987
2014-04-09 12:22:23 +02:00
Gunnar Beutner ec7c90d5d7 Allow dictionaries to contain null values.
Fixes #5986
2014-04-09 10:52:13 +02:00
Gunnar Beutner 1c115297f9 Rename the service state constants.
Fixes #5964
2014-04-08 09:11:54 +02:00
Gunnar Beutner 2ab208e452 Fix invalid timeout for poll().
Fixes #5963
2014-04-08 07:11:38 +02:00
Michael Friedrich 9ab4b3dd16 Remove the 'Icinga' prefix for global constants.
Fixes #5960
2014-04-07 21:42:23 +02:00
Gunnar Beutner ad42367999 Refactor name helper classes a bit.
Refs #5925
2014-04-06 08:15:07 +02:00
Gunnar Beutner 70062b5884 Make sure that Utility::GlobRecursive doesn't recurse into . and ..
Fixes #5946
2014-04-05 23:23:42 +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
Michael Friedrich 5c58eb368c Merge 'macros' and 'custom' attributes into 'vars', part 1.
Refs #5855
2014-04-03 11:35:25 +02:00
Gunnar Beutner 5c72e52903 Implement operator - for arrays.
Fixes #5923
2014-04-02 17:39:36 +02:00
Gunnar Beutner 0683fca535 Allow anonymous functions to be garbage-collected.
Fixes #5921
2014-04-02 17:27:04 +02:00
Gunnar Beutner ebf8ed3019 Remove support for external scripting languages.
Fixes #5920
2014-04-02 17:27:04 +02:00
Gunnar Beutner 2c17305536 Implement additional arguments for log().
Fixes #5902
2014-04-01 09:33:54 +02:00
Gunnar Beutner e3d96eb62d Build fix for FreeBSD. 2014-03-31 18:30:57 +02:00
Gunnar Beutner aba2a09245 Build fix for FreeBSD/OS X. 2014-03-31 00:08:43 +02:00
Gunnar Beutner b58c9ee3f8 Build fix.
Refs #5780
2014-03-30 15:08:29 +02:00
Gunnar Beutner 397fee13ff Allow "object" and "apply" in AST expressions.
Refs #5870
2014-03-30 15:04:53 +02:00
Gunnar Beutner 04dcceef59 Implement Utility::GetSymbolName and Utility::GetSymbolSource for Windows.
Refs #5870
2014-03-30 01:20:58 +01:00
Gunnar Beutner 9897358fc6 Add missing lock in DeserializeObject().
Refs #5870
2014-03-30 01:20:57 +01:00
Gunnar Beutner eb30f69454 Fix crash in DiagnosticInformation().
Refs #5870
2014-03-30 01:20:57 +01:00
Gunnar Beutner 0e79abb8f2 Implement instance variable "templates" for config objects.
Refs #5884
2014-03-28 14:46:19 +01:00
Gunnar Beutner 54063f0b9f Rename __name and __type properties.
Refs #5870
2014-03-28 14:17:55 +01:00
Gunnar Beutner 8bfb60b7fa Improve error message for invalid inline service definitions.
Refs #5846
2014-03-24 11:23:05 +01:00
Gunnar Beutner db2f1b3398 Add missing brace.
Refs #5846
2014-03-24 09:27:30 +01:00
Gunnar Beutner 27955843c0 Move Addr2Line function to the Utility class.
Refs #5846
2014-03-23 19:39:25 +01:00
Gunnar Beutner 09f1c46714 Implement the exit() script function.
Refs #5846
2014-03-23 17:26:36 +01:00
Gunnar Beutner aacc699dd4 Refactor the config parser's AST.
Refs #5846
2014-03-23 11:27:40 +01:00
Gunnar Beutner 3afad7a96d Implement comparison operators for operands of different types.
Refs #5846
2014-03-22 08:40:35 +01:00
Gunnar Beutner 3c067e9547 Don't show stack traces for user errors.
Refs #5846
2014-03-22 08:38:46 +01:00
Gunnar Beutner 0c7d53503d Resolve relative paths for StackTrace::Addr2Line.
Fixes #5792
2014-03-21 08:44:55 +01:00
Michael Friedrich fc7d7cc9eb DB IDO: Send endpoint authority for status updates.
Refs #5636
2014-03-20 18:03:47 +01:00
Gunnar Beutner 1ea91ef49f Windows build fix. 2014-03-20 15:53:45 +01:00
Gunnar Beutner 3ad233400e Make accessing undefined variables an error (instead of a warning).
Fixes #5809
2014-03-20 15:31:48 +01:00
Gunnar Beutner cb0c1b01d5 Add special cases for Array and Dictionary in Value::GetTypeName().
Refs #5804
2014-03-20 14:28:29 +01:00
Gunnar Beutner 012c0caeec Implement union() and intersection() functions.
Fixes #5801
2014-03-20 14:25:40 +01:00
Gunnar Beutner 8e472211cb Add missing file. 2014-03-20 13:45:10 +01:00
Gunnar Beutner 02fc3278c8 Implement missing operators for the Value class.
Fixes #5804
2014-03-20 13:02:31 +01:00
Gunnar Beutner 3383951791 Implement regex() and match() functions.
Refs #5789
2014-03-19 12:46:23 +01:00
Gunnar Beutner e21e2ef707 Make Value operators const where possible.
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 4d6088bee1 Stop checks during shutdown.
Fixes #5784
2014-03-17 09:04:19 +01:00
Gunnar Beutner ecce27f9da Fix null pointer dereference in Timer::AdjustTimers.
Fixes #5783
2014-03-17 08:41:53 +01:00
Gerd von Egidy 40b88422d2 Output child pid to debug log when forking.
Fixes #5756

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2014-03-14 13:52:04 +01:00
Gunnar Beutner 737675387d Windows build fix. 2014-03-14 13:23:04 +01:00
Gunnar Beutner 3556f9afde Use more threads for Process I/O.
Refs #5748
2014-03-14 13:21:11 +01:00
Gunnar Beutner 5252041c6b Fix Process timeouts.
Fixes #5759
2014-03-14 12:16:49 +01:00
Gunnar Beutner 51dc2bea2d Fix: Plugin-based checks are broken.
Fixes #5751
2014-03-13 12:05:27 +01:00
Michael Friedrich 76001c70e3 Build fix. 2014-03-12 17:51:42 +01:00
Gunnar Beutner f30517a9e2 Build fix. 2014-03-12 13:19:06 +01:00
Gunnar Beutner f3c085df44 Call Process callbacks asynchronously.
Refs #5748
2014-03-12 11:06:17 +01:00
Gunnar Beutner f391a32487 Decrease the maximum number of threads allowed per ThreadPool.
Refs #5748
2014-03-12 10:52:07 +01:00
Gunnar Beutner bfc5d2a4be Use fewer threads for plugin-based checks.
Fixes #5748
2014-03-12 10:25:06 +01:00
Gunnar Beutner e693486dae Fix file descriptor leak in StackTracce::Addr2Line.
Fixes #5735
2014-03-10 13:38:36 +01:00
Michael Friedrich 14d8f8a12e Documentation: Add Domains.
Fixes #5288
2014-03-07 15:21:57 +01:00
Gunnar Beutner f8a2ddc464 Include source file name and line numbers in stack traces.
Fixes #5715
2014-03-06 10:59:13 +01:00
Michael Friedrich f890a7ae8c Refactor status/perfdata stats registry.
Fixes #5622
2014-02-20 15:25:58 +01:00
Michael Friedrich 84be5e3413 Implement StatsFunction Registry for features.
Refs #5622
2014-02-17 17:53:41 +01:00
Gunnar Beutner 8055eaa8b8 Revert "Set stack size rlimit."
This reverts commit 36c0af7a85.
2014-02-14 12:28:21 +01:00
Gunnar Beutner 36c0af7a85 Set stack size rlimit.
Fixes #5659
2014-02-14 10:44:28 +01:00
Gunnar Beutner b968850bc1 Make Visual Studio 2010 happy (maybe).
Fixes #5637
2014-02-12 10:16:52 +01:00
Michael Friedrich e534f9bc1b Add Cluster Health Check.
Fixes #5438
2014-02-07 15:19:37 +01:00
Michael Friedrich 7d9dc1a36b Fix including a non-existing directory exception requires path information.
Fixes #5618
2014-02-07 13:23:26 +01:00
Michael Friedrich 1e0a11c7f2 Add IcingaNodeName script variable, set as check source (WIP).
Fixes #5471
Fixes #5473
2014-02-06 15:38:06 +01:00
Gunnar Beutner 984ffb7421 Fix memory leak in Utility::GlobRecursive.
Fixes #5604
2014-02-05 13:53:56 +01:00
Gunnar Beutner 238d90401c Implement an option to disable use of vfork().
Fixes #5583
2014-01-31 08:44:00 +01:00
Gunnar Beutner e0596f2d33 Fix UNIX sockets on FreeBSD.
Fixes #5567
2014-01-28 09:58:19 +01:00
Michael Friedrich 815a34a535 Filelogger must not truncate log file, but append its stream.
Refs #5448
2014-01-14 17:25:05 +01:00
Michael Friedrich 555d72150a Update copyright header.
Fixes #5424
2014-01-09 00:32:11 +01:00
Gunnar Beutner 21fb0d9872 Implement "safe mode" for icinga::Deserialize.
Fixes #5035
2013-12-18 10:27:58 +01:00
Michael Friedrich 79f5618eba Use std::string::find() in String::Contains().
Refs #5355
2013-12-17 18:34:05 +01:00
Michael Friedrich 7fa9188df8 Add String::Contains().
Refs #5355
2013-12-17 18:34:05 +01:00
Gunnar Beutner b2ec194a82 Update log level for some messages.
Fixes #5357
2013-12-17 14:26:48 +01:00
Gunnar Beutner 41d4ba169f Embed constants into lib{base,icinga,db_ido}.
Fixes #5247
2013-12-17 14:24:29 +01:00
Gunnar Beutner 65b41c51ff Fix compiler warnings in ThreadPool::ThreadPool.
Refs #5349
2013-12-17 07:52:26 +01:00
Gunnar Beutner 79e960f7cb Fix a log message.
Refs #5342
2013-12-16 17:23:34 +01:00
Gunnar Beutner 162cee5c40 Remove the ConsoleLogger class and keep the default console log enabled until we daemonize.
Refs #5342
2013-12-16 17:23:23 +01:00
Michael Friedrich f4c132ca5b Move command argument logging into the unix process class.
Refs #5225
2013-12-16 16:22:22 +01:00
Gunnar Beutner 2f58071b6f Fix race condition in Logger::GetLoggers.
Fixes #5341
2013-12-16 09:53:50 +01:00
Gunnar Beutner f08bca220d Fix race condition in icinga::Log.
Refs #5337
2013-12-15 18:46:09 +01:00
Gunnar Beutner 4563bb355f Fix another race condition in DynamicObject::Start.
Fixes #5330
2013-12-14 07:36:49 +01:00
Michael Friedrich 5f54406057 Log commands and their arguments.
Fixes #5225
2013-12-13 17:37:00 +01:00
Gunnar Beutner 7fbdf1d633 Fix crash in icinga::Log.
Fixes #5330
2013-12-13 15:13:20 +01:00
Gunnar Beutner e7184225f3 Improve performance for icinga::Deserialize.
Refs #5327
2013-12-13 14:08:11 +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 37179cdf32 Improve config compiler performance.
Refs #5327
2013-12-13 14:07:37 +01:00
Gunnar Beutner 98733fc105 Add timestamp to crash dumps.
Fixes #5315
2013-12-12 14:38:34 +01:00
Johannes Meyer 9229aa4948 Merge branch 'feature/Array-insert-functionality' into next
resolves #5320
2013-12-12 13:53:27 +01:00
Gunnar Beutner 7a107b7dbd Improve compatibility with C++11.
Fixes #5307
2013-12-11 16:40:55 +01:00
Gunnar Beutner af6df9f268 Improve compatibility with Windows.
Fixes #5287
2013-12-09 13:46:53 +01:00
Gunnar Beutner ab2e1e99e2 ScriptVariableRegistry::GetInstance should not be defined inline.
Fixes #5284
2013-12-09 12:26:25 +01:00
Gunnar Beutner 203cf73bf7 Improve error messages for the check result reader.
Fixes #5275
2013-12-09 09:52:09 +01:00
Gunnar Beutner 41ded2858c Implement scheduled downtimes.
Fixes #3584
2013-12-06 13:45:18 +01:00
Gunnar Beutner 6714796ecd Set rlimits in the Application class (rather than in the init script).
Fixes #5260
2013-12-05 11:11:03 +01:00
Gunnar Beutner e540685e13 Implement support for constants in the config parser.
Refs #4946
2013-12-04 11:32:45 +01:00
Gunnar Beutner 30c989074b Implement support for making script variables constant.
Refs #4946
2013-12-04 10:41:26 +01:00
Gunnar Beutner 6625346922 Speed up config compiler.
Fixes #5255
2013-12-03 09:59:21 +01:00
Gunnar Beutner 4648b82b33 Fix compiler warning for Utility::GlobRecursive.
Refs #5246
2013-12-02 11:18:16 +01:00
Gunnar Beutner 29f9117e58 Avoid using dynamic_pointer_cast when possible.
Refs #5246
2013-12-02 11:18:16 +01:00
Gunnar Beutner 954d2d53a2 Further decrease WQ lock contention.
Refs #5246
2013-12-02 11:18:16 +01:00
Gunnar Beutner 553bd3246b Improve compatibility with -fvisibility=hidden.
Refs #5246
2013-12-02 11:07:41 +01:00
Gunnar Beutner f05858d3ad Avoid unnecessary copies when iterating over dictionaries.
Refs #5246
2013-12-02 11:07:38 +01:00
Gunnar Beutner 1c0f9fe9ac Fix WorkQueue lock contention.
Fixes #5245
2013-12-02 08:38:53 +01:00
Gunnar Beutner 9f7e5b1845 Fix compiler warning.
Refs #5245
2013-11-29 17:06:48 +01:00
Gunnar Beutner dd200d0937 Increase default work queue size.
Fixes #5244
2013-11-29 15:27:11 +01:00
Gunnar Beutner f8d2172c27 Implement include_recursive config directive.
Fixes #5238
2013-11-29 12:26:31 +01:00
Gunnar Beutner cac4167e79 Fix initial check schedule.
Fixes #5240
2013-11-28 20:56:48 +01:00
Gunnar Beutner 4ffc22516a Renice child processes.
Fixes #5237
2013-11-28 15:15:28 +01:00
Gunnar Beutner f9c53ad295 Implement workqueue statistics.
Refs #5235
2013-11-28 12:12:24 +01:00
Gunnar Beutner 6d53bd1c8f Make sure IDO reconnect attempts don't recurse.
Refs #5235
2013-11-28 10:36:43 +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 25da7a2291 Add sysconf dir to the version info message.
Refs #5224
2013-11-27 11:47:14 +01:00
Gunnar Beutner 9d8edd286f Implement IcingaSysconfDir variable.
Refs #5224
2013-11-27 09:46:31 +01:00