Commit Graph

1142 Commits

Author SHA1 Message Date
Gunnar Beutner 308ba45102 Improve error message for duplicate objects
refs #6070
2014-09-09 14:49:21 +02:00
Gunnar Beutner 8c4765c607 Add SUN_LEN compatibility macro for Haiku
refs #7115
2014-09-06 02:30:09 +02:00
Gunnar Beutner 666c92fa76 Check whether the nice() function is available
refs #7115
2014-09-06 02:20:25 +02:00
Gunnar Beutner 418e7bc417 Add #include for strings.h (strcasecmp)
refs #7115
2014-09-06 02:11:34 +02:00
Gunnar Beutner 9133c01f00 Fix spurious SSL errors
fixes #6981
2014-09-05 08:19:47 +02:00
Gunnar Beutner 039a13cf88 Implement support for systems where pipe2 returns ENOSYS
fixes #7065
fixes #6696
2014-09-03 08:10:55 +02:00
Gunnar Beutner 4da18d6de1 Build fix for GNU Hurd 2014-09-02 17:27:16 +02:00
Gunnar Beutner 6f2ea6bc08 Fix build problems with Oracle Solaris Studio
refs #6896
2014-09-02 13:09:17 +02:00
Gunnar Beutner 6ba0612644 Detect whether __COUNTER__ is available
fixes #7040
2014-08-31 11:01:37 +02:00
Gunnar Beutner eb091a87b0 Implement support for unity builds
fixes #7034
fixes #7035
2014-08-30 20:02:12 +02:00
Gunnar Beutner eaea65a366 Make props argument for NameComposer::MakeName constant 2014-08-29 16:46:46 +02:00
Gunnar Beutner 634ef772c3 Build fix for Boost 1.56
fixes #7001
2014-08-25 15:12:39 +02:00
Gunnar Beutner f7f8bd9b00 Use const-ref specifier when catching exceptions
refs #6070
2014-08-25 08:36:30 +02:00
Gunnar Beutner e31d520f6b Improve log messages for failed commands
fixes #6970
2014-08-21 11:26:43 +02:00
Gunnar Beutner 107a152a8f Improve TLS and cluster error messages
refs #6066
2014-08-20 14:07:23 +02:00
Gunnar Beutner 8485e0b94b Reword error messages a bit
refs #6070
2014-08-19 13:48:41 +02:00
Gunnar Beutner d4cdee6a1a Change log level for failed commands
fixes #6751
2014-08-19 12:58:55 +02:00
Gunnar Beutner 65bec9e904 Clean up some parts of the code 2014-08-17 17:57:41 +02:00
Gunnar Beutner 0443c85bf5 Implement support for writing the icinga2.debug file
refs #6702
2014-08-15 21:00:26 +02:00
Michael Friedrich f6c24f8964 DB IDO: Delay connection in HA RunOnce mode
refs #6827
refs #6203
2014-08-15 17:21:12 +02:00
Gunnar Beutner 39248dad42 Build fix for Windows 2014-08-07 14:23:20 +02:00
Gunnar Beutner a5d25871a1 Flush loggers in Application::Exit
fixes #6861
2014-08-07 08:34:38 +02:00
Michael Friedrich d20ee37196 Fix event command execution not calling finish handler
fixes #6856
2014-08-06 17:49:29 +02:00
Gunnar Beutner 8256638fde Use gai_strerror instead of Utility::FormatErrorNumber for getaddrinfo's error codes
fixes #6849
2014-08-06 10:43:41 +02:00
Gunnar Beutner 89b94ab8ab Make --no-stack-rlimit the first argument
fixes #6765
2014-08-06 10:35:27 +02:00
Michael Friedrich 53d3a4af5f Flush stdout before _exit()
fixes #6852
refs #6820
2014-08-05 13:52:24 +02:00
Michael Friedrich 87e63edb93 Use a local buffer for ERR_error_string()
refs #6724
refs #6682
2014-08-05 11:30:06 +02:00
Gunnar Beutner f3d55848f5 Add a missing lock in TlsStream::Close
fixes #6621
refs #6724
2014-08-05 09:35:28 +02:00
Gunnar Beutner da41725e5b Partially revert 3f647bb779
refs #6724
2014-08-05 08:41:52 +02:00
Michael Friedrich 9ae37bf109 Add verbose SSL error messages
refs #6682
2014-08-04 17:23:41 +02:00
Michael Friedrich fd233ae901 Use Application::Exit() for main app termination
refs #6682
2014-08-04 17:23:41 +02:00
Michael Friedrich 55c306796b Add Application::Exit()
refs #6682
2014-08-04 17:23:41 +02:00
Michael Friedrich 7b8dc1d97e Fix non-existing endpoint on ApiListener error
refs #6724
2014-08-04 17:23:41 +02:00
Gunnar Beutner 541dacb636 Build fix for Linux (oops) 2014-08-04 09:50:30 +02:00
Jan Andres 46dbe5a4f5 Fix incorrect usage of readdir_r
refs #6821

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2014-08-04 08:49:04 +02:00
Jan Andres 20fc8773b6 Build fix for Solaris
refs #6821

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2014-08-04 08:49:04 +02:00
Gunnar Beutner 0de728db64 Build fix for OS X. 2014-08-01 17:05:51 +02:00
Gunnar Beutner 3f647bb779 Fix OpenSSL errors during (re-)negotiation
fixes #6724
2014-08-01 15:23:07 +02:00
Gunnar Beutner 7610cc95fe Update formatting for the version message
refs #6783
2014-07-23 13:06:00 +02:00
Gunnar Beutner 4724869e1c Print application paths for --version
fixes #6783
2014-07-23 09:30:56 +02:00
Gunnar Beutner a49a598eef Make location of the /run directory configurable
fixes #6627
2014-07-22 13:26:37 +02:00
Gunnar Beutner 5dcf1a777b Fix stack rlimit problem
fixes #6450
2014-07-21 13:33:01 +02:00
Gunnar Beutner 4b157ac54f Change return type for Socket::Pool to bool
refs #6617
2014-07-04 09:31:43 +02:00
Gunnar Beutner 1723d97ed0 Revert "Fix deadlock in ApiClient::SendMessage"
This reverts commit 0ac6e97f32.
2014-07-01 08:57:54 +02:00
Gunnar Beutner 61ba2e647e Add some missing SSL flags
refs #6368
2014-06-30 15:44:08 +02:00
Gunnar Beutner 0ac6e97f32 Fix deadlock in ApiClient::SendMessage
fixes #6368
2014-06-30 12:52:43 +02:00
Gunnar Beutner 62896cb9a5 Increase default stack size
fixes #6588
2014-06-27 08:18:32 +02:00
Gunnar Beutner 96521ead10 Fix incorrect path in an error message
fixes #6492
2014-06-26 14:16:37 +02:00
Gunnar Beutner 3ece0cff4d Fix build warnings
fixes #6488
2014-06-26 14:12:37 +02:00
Gunnar Beutner ad1a11f882 Remove source line information from stacktraces
fixes #6576
2014-06-25 09:18:53 +02:00
Michael Friedrich 1eb77b0cd7 Replace recursive implementation with a forward loop in Utility::MkDirP()
That way we always move into the tree, but not start in the deepest
level and may limit the tree level too in the future, if required.

Solves the Win32 implementation by moving the general mkdir() call into
Utility::MkDir().

refs #6328
2014-06-13 09:10:35 +02:00
Michael Friedrich 2acf6a063e Fix syncing zones.d from etc/ to var/lib in a recursive manner
Missing mkdir -p basically. Introducing Utility::MkDirP() which still
requires Win32 implementation.

refs #6328
2014-06-12 23:28:46 +02:00
Michael Friedrich 09ad04b09a Error messages: Use strerror() for message formatting.
Refs #6070
2014-06-05 17:45:02 +02:00
Michael Friedrich 1064dc28fc Error messages: Gracefully handle PID file errors.
Refs #6070
2014-06-05 17:44:41 +02:00
Michael Friedrich 0c021d94cb Error Messages: Catch and log all Socket class exceptions.
Refs #6070
2014-06-05 16:17:53 +02:00
Michael Friedrich 6a080edf80 Error Messages: Catch boost::regex exceptions.
Refs #6070
2014-06-05 16:13:28 +02:00
Michael Friedrich a416987031 Error messages: Add logging to Socket class.
Refs #6070
2014-06-05 15:45:37 +02:00
Michael Friedrich 17668af2c2 Error messages: Fix Logger exceptions.
Refs #6070
2014-06-05 15:35:30 +02:00
Michael Friedrich 2989c00680 Error messages: Enable logging in TlsStream class.
Refs #6070
2014-06-05 15:34:54 +02:00
Michael Friedrich f1e77a0579 Error Messages: Deal with socket exceptions.
Refs #6070
2014-06-05 14:36:50 +02:00
Michael Friedrich 739c6d53a5 Remove unused member variable: DynamicObject::m_Privileges.
Fixes #6376
2014-06-02 11:32:00 +02:00
Gunnar Beutner 157de9f3bb Fix a situation where some threadpool work items are never executed.
Fixes #6349
2014-05-28 15:57:48 +02:00
Michael Friedrich 076d297931 Change log message identifier for libbase.
Refs #6346
2014-05-28 14:42:00 +02:00
Gunnar Beutner 33cf660c04 Fix missing timer events.
Fixes #6349
2014-05-28 13:46:39 +02:00
Gunnar Beutner 41a9b7d5c0 Remove thread names from log messages.
Fixes #6345
2014-05-28 11:46:47 +02:00
Gunnar Beutner e7c09dac97 Remove icinga::ErrorInformation.
Fixes #6333
2014-05-27 15:51:38 +02:00
Gunnar Beutner 7f5d8a36b4 Split Utility::GetHostName into two functions.
Fixes #6312
2014-05-27 10:20:33 +02:00
Gunnar Beutner 3f2df5b656 Make sure that Utility::GetHostName() returns an FQDN.
Fixes #6312
2014-05-26 17:32:18 +02:00
Gunnar Beutner f9512dd495 Make sure Application::InitializeBase() when RLIMIT_NOFILE is set to "unlimited".
Refs #6257
2014-05-26 07:40:47 +02:00
Gunnar Beutner 632026cd9f Rename C++ header files.
Fixes #6291
2014-05-25 16:27:14 +02:00
Gunnar Beutner 778b51ab6d Improve log messages for the Process class.
Refs #6070
2014-05-23 19:00:55 +02:00
Gunnar Beutner 16a2d36bdc Rename --debug to --log-level.
Refs #6276
2014-05-23 18:11:21 +02:00
Gunnar Beutner 4cf293837f Change the default number of threads for the ThreadPool class.
Fixes #6279
2014-05-23 12:35:18 +02:00
Michael Friedrich 5ec300f68e Add debug log severity for console logger.
Fixes #6276
2014-05-23 11:57:08 +02:00
Gunnar Beutner 2e18407270 Close inherited FDs.
Fixes #6257
2014-05-23 06:31:52 +02:00
Michael Friedrich 1df7518b35 Move more log messages to 'notice' severity.
Refs #6070
2014-05-22 23:47:03 +02:00
Gunnar Beutner 1bc1356fe6 Windows build fix. 2014-05-22 21:32:08 +02:00
Michael Friedrich 4296ec3987 Change the most chatting log messages to 'notice' severity.
Refs #6070
2014-05-22 16:07:57 +02:00
Michael Friedrich 0713918c5e Extract exception error info message.
Refs #6070
2014-05-22 16:07:57 +02:00
Michael Friedrich 7462c8320a Add 'notice' severity to *Logger.
Refs #6070
2014-05-22 16:07:57 +02:00
Gunnar Beutner 46165dbccf Make sort order for Utility::{Glob,GlobRecursive} deterministic.
Fixes #5854
2014-05-22 13:12:58 +02:00
Gunnar Beutner 2350593ef0 Fix logrotate config.
Fixes #6229
2014-05-22 11:22:30 +02:00
Michael Friedrich af951819bc Add MessageOrigin to OnVarsChanged.
Refs #6187
Refs #5219
2014-05-19 18:17:47 +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 b814d89ce0 Fix command timeout.
Fixes #6232
2014-05-19 13:09:49 +02:00
Gerd von Egidy 541de0de78 Add Process::GetPID and make it work on Unix and Windows.
Refs #6118
2014-05-18 18:44:57 +02:00
Gerd von Egidy e0d4b9fb80 Unlink the pidfile when we really shutdown (not reload).
Refs #6118
2014-05-18 18:44:54 +02:00
Gerd von Egidy e93a22b440 Proof of concept how a real reload-handling with systemd could work.
Refs #6118
2014-05-18 18:39:35 +02:00
Gunnar Beutner 7310a254e8 Parallellize restoring objects from the state file.
Fixes #6226
2014-05-18 09:20:23 +02:00
Gunnar Beutner b2246f3af9 Build fix for Windows.
Refs# 6191
2014-05-17 08:38:28 +02:00
Gunnar Beutner 3a1ce23aeb Implicitly set zone attribute for files includes from zones.d.
Refs #6191
2014-05-13 14:40:12 +02:00
Gunnar Beutner 0d36cc8d5f Implement support for the zones.d config directory.
Refs #6191
2014-05-13 13:19:43 +02:00
Gunnar Beutner c58aa9e86f Improve error message when execvpe() fails.
Fixes #6160
2014-05-12 10:58:17 +02:00
Gunnar Beutner 9b7702195a Don't use colors for the whole log message.
Refs #6070
2014-05-12 10:27:01 +02:00
Gunnar Beutner 9c3e399188 Remove unnecessary includes.
Fixes #6189
2014-05-11 18:11:32 +02:00
Gunnar Beutner 6a8db4035d Fix another couple of compiler warnings.
Refs #5823
2014-05-11 08:36:51 +02:00
Gunnar Beutner 12c8814bd8 Fix some more compiler warnings.
Refs #5823
2014-05-11 06:43:01 +02:00
Gunnar Beutner c7b5e4c31e Fix some compiler warnings.
Refs #5823
2014-05-11 06:04:43 +02:00
Michael Friedrich d06d4f2540 Include monitoring plugin commands seperately.
Fixes #6130
2014-05-10 19:02:51 +02:00
Gunnar Beutner 0e34968e8f Implement for loops.
Fixes #6183
2014-05-10 11:26:56 +02:00
Gunnar Beutner 042e4270bf Fix an issue where expired Timer pointers caused other timers to be delayed.
Fixes #6179
2014-05-09 19:26:31 +02:00
Gunnar Beutner b367187c0b Implement HA for IDO connections.
Refs #6107
2014-05-09 13:02:30 +02:00
Gunnar Beutner 4c022199f4 Reimplement load-balancing for checks.
Refs #6107
2014-05-09 11:45:21 +02:00
Gunnar Beutner dade476533 Remove the ZlibStream class and the stream_bio functionality.
Fixes #6119
2014-05-09 10:23:54 +02:00
Gunnar Beutner 45270f1bb8 Refactor the agent and cluster components.
Refs #6107
2014-05-08 09:13:04 +02:00
Gunnar Beutner 0571d8a464 Run INITIALIZE_ONCE() after static initializers.
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
Gunnar Beutner e2fe1c8a6b Properly shut down TLS streams.
Refs #6107
2014-05-06 10:40:36 +02:00
Gunnar Beutner 0484706324 Make sure handles aren't inherited by the child process.
Refs #6107
2014-05-06 10:40:36 +02:00
Michael Friedrich 7e164291a0 Make AddGroup() unique.
Refs #6105
2014-05-02 00:38:46 +02:00
Gunnar Beutner 630a1a28e2 Make Application::ReadPidFile work on Windows.
Refs #5788
2014-05-01 20:09:38 +02:00
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
Gunnar Beutner 4ed798385d Improve bug messages.
Refs #4635
2013-11-26 18:35:36 +01:00
Gunnar Beutner d4cc6fb5e0 Improve compatibility with Solaris.
Fixes #5129
2013-11-24 01:00:35 +01:00
Gunnar Beutner e32a149049 Glob: Use stat() instead of lstat().
Refs #5123
2013-11-22 10:41:57 +01:00
Gunnar Beutner 7a3a8de83c Optimize IDO queries.
Refs #5124
2013-11-22 10:32:53 +01:00
Gunnar Beutner 0978e46d5a Implement file type flags for Utility::Glob.
Fixes #5123
2013-11-22 09:03:52 +01:00
Gunnar Beutner 7a79886922 Fix deadlock in WorkQueue::Enqueue.
Fixes #5120
2013-11-21 13:54:01 +01:00
Gunnar Beutner 92dd32eb68 Implement support for high-level stack traces.
Refs #5085
2013-11-21 09:42:27 +01:00
Gunnar Beutner 062110339b Fix spelling mistake.
Refs #5085
2013-11-21 08:30:16 +01:00
Gunnar Beutner 43ab2b69a4 Fix handle leak in the ThreadPool class.
Fixes #5078
2013-11-21 07:46:12 +01:00
Gunnar Beutner 39dcf20a89 Implement support for stack traces for STL exceptions.
Fixes #5114
2013-11-20 21:55:14 +01:00
Gunnar Beutner 1676af8b2d Implement signal handler for SIGTERM.
Fixes #5087
2013-11-17 20:04:27 +01:00
Gunnar Beutner 0f28e55925 Implement support for non-standard "multi" performance data.
Refs #5082
2013-11-17 03:29:43 +01:00
Gunnar Beutner 687c88bea0 Don't kill too many worker threads at once.
Refs #5050
2013-11-15 14:04:03 +01:00
Gunnar Beutner 979df4e110 Create new threads more aggressively right after program start.
Refs #5050
2013-11-15 12:36:52 +01:00
Gunnar Beutner 9a93cc83b3 Include thread pool ID in debug messages.
Refs #5050
2013-11-15 12:20:19 +01:00
Gunnar Beutner f5f8de8137 Fix compatibility with OpenSSL <1.0.0.
Refs #3657
2013-11-13 10:36:57 +01:00
Gunnar Beutner a5e3c70bcc Implement support for CRLs.
Fixes #3657
2013-11-13 10:30:40 +01:00
Gunnar Beutner 6ccf4497f2 Fix unit tests on Windows.
Fixes #5068
2013-11-13 09:08:17 +01:00
Gunnar Beutner 4f1cb83f31 Fix Convert::ToString.
Fixes #5054
2013-11-11 13:04:18 +01:00
Gunnar Beutner 893243db5f Fix exception in Value::ToJson().
Refs #5049
2013-11-11 09:31:36 +01:00
Gunnar Beutner eb746b9929 Optimize DynamicObject::HasAuthority().
Refs #5049
2013-11-11 08:39:35 +01:00
Gunnar Beutner 17834e0a77 Ignore invalid fields in the state file.
Refs #5039
2013-11-09 18:30:17 +01:00
Gunnar Beutner ba6f64a0ec Remove GetType().
Refs #5036
2013-11-08 21:37:21 +01:00
Gunnar Beutner 2a6151e935 Use anonymous namespaces for INITIALIZE_ONCE().
Refs #5036
2013-11-08 21:12:47 +01:00
Gunnar Beutner 98c3431dda Add missing == operator for the Value class.
Refs #5036
2013-11-08 21:12:22 +01:00
Gunnar Beutner e546cd854d Clean up the DynamicType class.
Refs #5036
2013-11-08 16:07:21 +01:00
Gunnar Beutner 0a67e760bd Optimize GraphiteWriter::SendMetric.
Fixes #5037
2013-11-08 15:43:14 +01:00
Gunnar Beutner a84536bea3 Implement serializer support for arbitrary classes.
Fixes #5024
2013-11-08 14:08:59 +01:00
Gunnar Beutner 038be974e4 Implement additional operators for the Value and String classes.
Refs #2710
2013-11-07 16:07:52 +01:00
Gunnar Beutner 14553139ae Implement String::FindFirstNotOf.
Refs #2710
2013-11-07 16:07:52 +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 5e68746128 Implement Utility::DemangleSymbolName on Windows.
Fixes #5010
2013-11-05 20:26:05 +01:00
Gunnar Beutner 27f527d0ad Implement String::GetData.
Fixes #5008
2013-11-05 18:59:39 +01:00
Gunnar Beutner 2617521ce3 Fix exception in Exception in IdoPgsqlConnection::Query.
Fixes #5002
2013-11-05 13:35:59 +01:00
Gunnar Beutner b5b56e5438 Implement Type::GetBaseType().
Refs #4996
2013-11-05 08:56:35 +01:00
Gunnar Beutner b1ddc71925 Merge ReflectionObject methods into the Object class.
Refs #4996
2013-11-05 08:56:30 +01:00
Gunnar Beutner 2140cef041 Implement the ReflectionType class.
Refs #4996
2013-11-05 08:56:18 +01:00
Gunnar Beutner 3cfccba1ea Implement "hello world" test app.
Refs #4995
2013-11-05 08:34:34 +01:00
Gunnar Beutner 22f0f388a7 Link libase against libdl.
Fixes #4994
2013-11-04 09:38:13 +01:00
Gunnar Beutner 8586f90379 Implement support for loading OS X libraries.
Refs #4993
2013-11-04 07:49:51 +01:00
Gunnar Beutner ee07cc9d06 Fix: ASSERT in WorkQueue::Enqueue fails
Refs #4991
2013-11-03 13:57:18 +01:00
Gunnar Beutner f2307c4242 Add cmake build files.
Refs #4962
2013-11-03 13:45:26 +01:00
Gunnar Beutner 2c143fbdf8 Remove unused files.
Refs #4962
2013-11-03 11:12:47 +01:00
Gunnar Beutner 375c5a53c6 Don't join threads that are already dead.
Refs #4990
2013-11-03 10:58:57 +01:00
Gunnar Beutner 8279fbd633 Fix deadlock in ThreadPool::Join.
Refs #4989
2013-11-02 10:38:54 +01:00
Gunnar Beutner fcc96cfe8f Fix compilation with Visual Studio 2013.
Refs #4987
2013-11-01 00:13:30 +01:00
Gunnar Beutner 6abf16e6ed Fix deadlock in ThreadPool::Join.
Refs #4986
2013-10-31 19:10:36 +01:00
Gunnar Beutner 7a751eb8af Fix DynamicObject::HasAuthority.
Refs #4979
2013-10-30 15:59:14 +01:00
Gunnar Beutner 4ce0f1e7bb Implement WorkQueue::GetThreadId.
Refs #4758
2013-10-30 13:13:09 +01:00
Gunnar Beutner ef55412855 Fix libdl detection on FreeBSD.
Refs #4977
2013-10-30 13:01:50 +01:00
Gunnar Beutner dc21088680 Fix make dist.
Refs #4976
2013-10-30 12:18:08 +01:00
Gunnar Beutner 9f1c4539dc Remove libltdl dependency.
Refs #4964
2013-10-30 12:00:55 +01:00
Gunnar Beutner db4b3b78d6 Implement class compiler.
Refs #4963
2013-10-28 14:27:36 +01:00
Gunnar Beutner ab402cbfaf Remove unused #includes. 2013-10-22 10:13:35 +02:00
Michael Friedrich 622e4d7f25 Start log flush timer after binding the stream.
refs #4890
2013-10-21 14:15:21 +02:00
Michael Friedrich 07d9a59fe0 Flush StreamLogger periodically.
fixes #4890
2013-10-21 14:09:14 +02:00
Gunnar Beutner 3cb6e3bf82 Make sure to #include <pthread_np.h> on FreeBSD. 2013-10-21 09:52:45 +02:00
Michael Friedrich 39f11334ab Add NOTIFICATION{AUTHOR,AUTHORNAME,COMMENT} macros.
fixes #4914
2013-10-19 00:19:16 +02:00
Gunnar Beutner e5b3a59aa3 Set thread names for the BufferedStream thread procs. 2013-10-18 11:46:19 +02:00
Gunnar Beutner 89d313008d Fix: GraphiteWriter: reconnect on broken socket.
Fixes #4883
2013-10-18 09:11:21 +02:00
Gunnar Beutner c824fc4f9f Fix error message. 2013-10-18 08:48:15 +02:00
Gunnar Beutner 917f288a95 Clean up socket code. 2013-10-18 08:26:48 +02:00
Gunnar Beutner c4941bb3c5 Close all file descriptors before restarting.
Refs #4905
2013-10-17 18:24:35 +02:00
Gunnar Beutner 5647694c2a Build fix. 2013-10-17 15:52:26 +02:00
Gunnar Beutner 65f4176fa8 Fix deadlock in WorkQueue::Join(). 2013-10-17 15:49:53 +02:00
Gunnar Beutner 492aed030e Improve the error message for GetX509Certificate(). 2013-10-17 15:46:50 +02:00
Gunnar Beutner fa845775a2 Fix crashes when restarting Icinga. 2013-10-17 10:56:42 +02:00
Gunnar Beutner b4ab6c8253 Re-implement WorkQueue item limit. 2013-10-17 10:19:17 +02:00
Gunnar Beutner eed901304a Fix deadlock in WorkQueue::Enqueue(). 2013-10-17 09:14:06 +02:00
Gunnar Beutner a03c58f27e MakeSSLContext: Check if keys match. 2013-10-15 21:24:55 +02:00
Gunnar Beutner 1bce8cec97 Fix: ZlibStream doesn't work even if libssl supports zlib.
Fixes #4848
2013-10-15 12:59:49 +02:00
Gunnar Beutner db90a785db Win64 build fix. 2013-10-10 23:30:05 +02:00
Gunnar Beutner 494fb90547 Make sure Registry<> types are unique. 2013-10-10 23:07:34 +02:00
Gunnar Beutner 1b0977a512 Windows build fix. 2013-10-10 23:07:33 +02:00
Gunnar Beutner fdc3f32544 Make bug message somewhat more useful. 2013-10-10 14:29:23 +02:00
Gunnar Beutner fe5c925a63 Windows build fix. 2013-10-09 15:03:24 +02:00
Gunnar Beutner 3f922e5eac Implement Application::GetVersion().
Fixes #4801
2013-10-09 08:46:31 +02:00
Gunnar Beutner d36e2ebd1a Build fix for CentOS 5.9.
Fixes #4819
2013-10-08 15:43:36 +02:00
Gunnar Beutner f449eb9e84 Implement Utility::Random(). 2013-10-03 22:10:46 +02:00
Michael Friedrich e8bd81bddc db_ido: Add idoutils 1.x schema, check required 1.10.0 version.
fixes #4766
2013-09-27 15:56:22 +02:00
Gunnar Beutner 1e4d38725b Make sure WorkQueue::m_Executing is initialized. 2013-09-26 10:25:04 +02:00
Gunnar Beutner bf1a800e39 Update copyright information. 2013-09-25 07:45:56 +02:00
Gunnar Beutner 137c726920 base: Limit work queue size. 2013-09-21 17:53:14 +02:00
Gunnar Beutner 132695a460 base: Limit buffer size for BufferedStream objects. 2013-09-20 09:45:05 +02:00
Gunnar Beutner 74a4432bad Fix: DynamicObject::HasPrivileges should always return true if privs == 0. 2013-09-19 14:47:17 +02:00
Gunnar Beutner a10a4013c7 Change log timestamp format. 2013-09-19 00:06:14 +02:00
Gunnar Beutner 2487d7069c Fix workqueue dispatch. 2013-09-18 17:38:40 +02:00
Gunnar Beutner 3946c388c5 Fix lock contention in ThreadPool::Post. 2013-09-18 11:22:52 +02:00
Gunnar Beutner db2f7d5bf3 Use short name for threadpool worker threads. 2013-09-18 09:32:16 +02:00
Gunnar Beutner e7da4057f9 Implement support for work queues. 2013-09-18 09:09:16 +02:00
Gunnar Beutner 2ed8f1aaa7 Fix memory leak in NetString::ReadStringFromStream. 2013-09-18 07:47:46 +02:00
Gunnar Beutner 31a55987e5 cluster: Implement domain support. 2013-09-17 13:18:40 +02:00
Gunnar Beutner 21c35aabf4 Fix logging performance problem. 2013-09-16 08:59:28 +02:00
Gunnar Beutner 68ec21f13f cluster: Another fix for authority checks. 2013-09-13 07:50:23 +02:00
Gunnar Beutner 95909d82fe cluster: Implement authority checks. 2013-09-12 10:04:04 +02:00
Gunnar Beutner 8a1293f750 Improve error messages for socket error. 2013-09-12 07:50:09 +02:00
Gunnar Beutner 4c23245898 Re-enable TLS compression (again). 2013-09-11 17:12:28 +02:00
Gunnar Beutner 7961dc4e78 Remove DynamicObject::Start call. 2013-09-11 15:38:04 +02:00
Gunnar Beutner 3261ad7106 ThreadPool: Add missing lock. 2013-09-11 10:42:36 +02:00
Gunnar Beutner 7fcde9eca8 cluster: Fix idle timeout. 2013-09-11 09:18:15 +02:00
Gunnar Beutner d4bb2102fb Revert "Revert "Enable TLS compression.""
This reverts commit 1a9c4b6a37.
2013-09-11 08:52:47 +02:00
Gunnar Beutner 1a9c4b6a37 Revert "Enable TLS compression."
This reverts commit b95d0d3264.
2013-09-11 07:53:41 +02:00
Gunnar Beutner b95d0d3264 Enable TLS compression. 2013-09-11 07:48:47 +02:00
Gunnar Beutner 15fae2bf2a Refactor how Application objects work. 2013-09-10 16:03:36 +02:00
Gunnar Beutner a14e72c292 Fix null ptr for Application::GetInstance(). 2013-09-09 14:10:04 +02:00
Gunnar Beutner 161c933edc Build fix: Check if pthread_setname_np() is available. 2013-09-08 13:13:37 +02:00
Gunnar Beutner 4bf0f6b21f Remove unused field. 2013-09-05 09:59:57 +02:00
Gunnar Beutner 7e7a565770 cluster: Send config updates. 2013-09-04 15:47:15 +02:00
Gunnar Beutner e05f270459 base: Don't set thread name for the first thread. 2013-09-03 15:44:31 +02:00
Gunnar Beutner fe0fb171d0 Remove debug code. 2013-09-03 14:10:57 +02:00
Gunnar Beutner ba6be063b6 cluster: Compress log files. 2013-09-03 14:05:03 +02:00
Gunnar Beutner ec6326b55e Fix incorrect indentation. 2013-09-02 12:02:43 +02:00
Gunnar Beutner 6ed052ce85 base: Don't throw exception for valid netstrings. 2013-09-02 11:09:29 +02:00
Gunnar Beutner d5650c90c9 Fix grammar mistake. 2013-09-02 10:53:01 +02:00
Gunnar Beutner 2db418118b Fix build warning. 2013-09-01 06:04:23 +02:00
Gunnar Beutner 86e2f3dd81 Windows build fix. 2013-09-01 06:01:27 +02:00
Gunnar Beutner e8c61a578f Implement restarting Icinga. 2013-08-30 14:27:24 +02:00
Gunnar Beutner 519ce78727 Implement script variables IcingaPrefixDir, IcingaLocalStateDir, IcingaPkgLibDir, IcingaPkgDataDir and IcingaStatePath. 2013-08-30 12:04:24 +02:00
Gunnar Beutner 7f52e04a01 Implement OS-specific support for thread names. 2013-08-30 10:19:32 +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 91724814d8 Fix: State file doesn't work for generated service objects. 2013-08-29 16:53:57 +02:00
Gunnar Beutner fa9ab6c768 Build fix. 2013-08-29 16:09:11 +02:00
Gunnar Beutner 4800329410 Add log message to DynamicObject::RestoreObjects(). 2013-08-29 16:08:03 +02:00
Gunnar Beutner 52b645ed17 Increase minimum number of threads. 2013-08-29 15:49:11 +02:00
Gunnar Beutner 911f64c411 Fix state file functionality. 2013-08-29 10:40:43 +02:00
Gunnar Beutner f134ed61bc Fix: ::Start must be called after restoring the state file.
Fixes #4654
2013-08-29 10:17:12 +02:00
Gunnar Beutner 1de88b0559 Fix the ASSERT() macro. 2013-08-29 09:04:33 +02:00
Gunnar Beutner e0c452bb00 Build fix for --enable-debug. 2013-08-28 16:49:58 +02:00
Gunnar Beutner 58a932ab6f Add error info for ftruncate() call. 2013-08-28 10:48:19 +02:00
Gunnar Beutner f39f69d390 Refactor ASSERT macro. 2013-08-28 08:18:58 +02:00
Gunnar Beutner 42cc9cc9b5 Bug fix for ThreadPool::KillWorker(). 2013-08-27 15:57:00 +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 82b3b81b91 Windows build fix. 2013-08-20 08:29:38 +02:00
Gunnar Beutner 74822e929a Implement missing + operator for the Value class.
Fixes #4497
2013-08-19 08:53:59 +02:00
Gunnar Beutner 7a87fc0d5e Fix INITIALIZE_ONCE(). 2013-08-01 11:15:11 +02:00
Gunnar Beutner b9e988f309 Fix include guards for initialize.h. 2013-08-01 11:10:02 +02:00
Gunnar Beutner bdd2adc85e Implement INITIALIZE_ONCE(). 2013-08-01 11:08:06 +02:00
Gunnar Beutner a8f880e1b6 Fix compiler warning. 2013-07-31 08:29:45 +02:00
Gunnar Beutner 73beb278cf compat: Fix timestamps. 2013-07-25 09:45:40 +02:00
Gunnar Beutner 28726e5025 Implement status updates for services. 2013-07-24 10:55:04 +02:00
Gunnar Beutner cab2b41e56 Implement shift operator for the Value class. 2013-07-23 09:11:53 +02:00
Gunnar Beutner 3a7bae618a Implement IDO (well, part of it anyway). 2013-07-16 10:19:13 +02:00
Michael Friedrich 36e9e9adbd custom attr: move into DynamicObject using GetCustom() 2013-07-12 15:13:05 +02:00
Michael Friedrich a5d3b74da6 tcpsocket: fix fd on setsockopt SO_REUSEADDR 2013-07-12 11:03:36 +02:00
Gunnar Beutner 4961523e91 Add DECLARE_PTR_TYPEDEFS macro for Ptr/WeakPtr typedefs. 2013-07-09 08:43:52 +02:00
Michael Friedrich 8c3663ab0e stream: remove ReadLine maxLength
it doesn't do what its name suggests.

refs #4370
2013-07-04 09:41:51 +02:00
Michael Friedrich 80c91aa91e stream/livestatus: refactor ReadLine with context saving 2013-07-03 16:16:38 +02:00
Gunnar Beutner d2b31f6a06 Implement notification conditions.
Fixes #2841
2013-06-26 09:08:50 +02:00
Gunnar Beutner f3d0738e93 Implement script variables. 2013-06-25 09:21:42 +02:00
Gunnar Beutner 0d64a8fd32 Don't seal DynamicObject updates. 2013-06-19 10:37:50 +02:00
Gunnar Beutner e30d3c5691 Implement command timeouts.
Fixes #2723
2013-06-13 12:05:24 +02:00
Gunnar Beutner d042a181bd Refactor commands and implement event handlers.
Fixes #3877
Fixes #4001
2013-06-13 11:33:00 +02:00
Gunnar Beutner 4fadd3bfa0 Remove the ILogger interface.
Fixes #3860
2013-06-06 11:26:30 +02:00
Gunnar Beutner b8669d67ca Fix inheritance for config types. 2013-06-06 11:26:00 +02:00
Gunnar Beutner f4d04f8172 Fix ThreadPool exception on shutdown.
Fixes #3891
2013-05-13 09:58:24 +02:00
Gunnar Beutner b4fa556ac6 Fix: ConfigItem types and names are not case-insensitive
Fixes #4044
2013-05-08 10:46:50 +02:00
Gunnar Beutner 10dff1d8c1 Removed dependency on boost/uuid. 2013-05-03 11:26:18 +02:00
Gunnar Beutner 4db8b09ff7 Build fix. 2013-04-22 11:39:23 +02:00
Gunnar Beutner 0fcbfdb236 Windows build fix. 2013-04-19 15:28:34 +02:00
Gunnar Beutner d86767e8e3 Fix memory leak in the StdioStream class. 2013-04-19 15:06:45 +02:00
Gunnar Beutner fe4fd67405 Bugfixes for the BufferedStream class. 2013-04-19 14:47:41 +02:00
Gunnar Beutner 5db55ea384 Fix 'make distcheck'. 2013-04-19 13:17:17 +02:00
Gunnar Beutner fcdb690b48 Even more unit tests. 2013-04-19 12:58:16 +02:00
Gunnar Beutner d0113e33da Add more unit tests. 2013-04-19 11:27:18 +02:00
Gunnar Beutner 8a1d24042d Implement complex 1.x timeperiod definitions. 2013-04-17 14:26:04 +02:00
Gunnar Beutner 2e600a7810 More bugfixes for timeperiods. 2013-04-16 10:55:23 +02:00
Gunnar Beutner 23b75fd30d Fix crash when application config item is missing. 2013-04-08 10:02:06 +02:00
Gunnar Beutner 4e5e488b17 Remove unused #include. 2013-04-08 09:49:53 +02:00
Gunnar Beutner 6ef5d2deba Fix FIFO bug. 2013-04-08 09:44:12 +02:00
Gunnar Beutner 06839ba4b0 Fix case where all threadpool threads are killed. 2013-04-05 14:32:16 +02:00
Gunnar Beutner 1682ff2839 Optimize replication messages. 2013-04-05 14:05:00 +02:00
Gunnar Beutner d9730f5b83 Bugfixes for the replication component. 2013-04-05 12:09:26 +02:00
Gunnar Beutner 09f395a7de Refactor the socket subsystem. 2013-04-04 16:08:40 +02:00
Gunnar Beutner ca4157ea24 Fix memory leaks in the config parser. 2013-04-04 13:51:36 +02:00
Gunnar Beutner 8ac0a80101 Bugfixes for the socket subsystem. 2013-04-02 11:08:35 +02:00
Gunnar Beutner 49c6c358b1 Bugfixes for the JSON-RPC sub-system. 2013-04-01 16:25:23 +02:00
Gunnar Beutner b0c8f3f626 Make thread pool utilization calculation more accurate. 2013-03-28 12:14:39 +00:00
Gunnar Beutner 2e051ad9e2 Minor performance tweaks. 2013-03-27 18:02:51 +00:00
Gunnar Beutner babc948cd0 Performance improvements for Value -> double conversions. 2013-03-27 06:26:42 +00:00
Gunnar Beutner 70e96aa2f0 Refactor ScriptFunctions. 2013-03-25 19:47:02 +00:00
Gunnar Beutner ba152d6dc4 Windows build fix. 2013-03-25 18:01:02 +00:00
Gunnar Beutner fd3e92ea0c Refactor AsyncTasks. 2013-03-25 17:36:15 +00:00
Gunnar Beutner e739dfd88f EventQueue: Further changes to how we determine the optimal number of threads. 2013-03-25 16:12:25 +01:00
Gunnar Beutner 167be058f0 More EventQueue tuning. 2013-03-23 20:38:41 +01:00
Gunnar Beutner 8b065b36df Process class: Pipe FD should be blocking. 2013-03-23 18:36:28 +01:00
Gunnar Beutner 6b6be8eec3 Even more tuning. 2013-03-23 15:58:21 +01:00
Gunnar Beutner dc2efae421 More tuning. 2013-03-23 12:54:14 +01:00
Gunnar Beutner 7ac65b0a47 Tune thread spawning behavior. 2013-03-23 12:50:07 +01:00
Gunnar Beutner d04a04d897 Make the event queue adaptive. 2013-03-23 12:23:13 +01:00
Gunnar Beutner 27ceabf3c0 Process class: Use the global EventQueue instead of a custom queue. 2013-03-23 00:26:56 +01:00
Gunnar Beutner 28335db4ba Windows build fix. 2013-03-22 16:05:48 +01:00
Gunnar Beutner 97fee26289 Remove @threadsafety doc strings
Fixes #3889
2013-03-22 12:02:20 +01:00
Gunnar Beutner c63684a72f Shell-escape macros. 2013-03-22 10:58:47 +01:00
Gunnar Beutner 1f570ea9f7 Implement Icinga1.x-style compat log file rotation
Fixes #3874
2013-03-20 11:11:46 +01:00
Gunnar Beutner 8e4cc0de25 Reschedule timers even if the OnTimerExpired handler threw an exception. 2013-03-19 16:12:28 +01:00
Gunnar Beutner 734f76af96 Windows build fix. 2013-03-18 22:40:40 +01:00
Gunnar Beutner 5cd387016d Refactored #includes (Part 6). 2013-03-18 19:02:42 +01:00
Gunnar Beutner 2a8bc3ca0f Refactor #includes (Part 5). 2013-03-18 17:39:40 +01:00
Gunnar Beutner 6e251251f0 Fix example time period. 2013-03-18 11:59:26 +01:00
Gunnar Beutner e6553a7140 Fix unit tests. 2013-03-18 11:15:46 +01:00
Gunnar Beutner c3975af6ec Refactor #includes (Part 4). 2013-03-18 11:02:18 +01:00
Gunnar Beutner 19726d2429 Linux build fix. 2013-03-17 22:14:40 +01:00
Gunnar Beutner 949b4c6356 Add missing file. 2013-03-17 20:22:41 +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 4e765c58de Another windows build fix. 2013-03-15 13:53:50 +01:00
Gunnar Beutner b404798234 Implement support for Exception::GetLastStackTrace on OS X. 2013-03-15 13:44:45 +01:00
Gunnar Beutner 8d52535fad Windows build fix. 2013-03-15 13:39:53 +01:00
Gunnar Beutner fae83d2ef6 Fix symbol visibility issue for REGISTER_CONFIG_FRAGMENT(). 2013-03-15 12:27:03 +01:00
Gunnar Beutner 9a05e2b269 Windows build fix. 2013-03-15 11:52:10 +01:00
Gunnar Beutner ee46731f41 Fix --disable-shared
Fixes #3852
2013-03-15 11:21:16 +01:00
Gunnar Beutner 0f9acdffbb Fix: Only take one work item from the event queue per iteration. 2013-03-15 09:10:57 +01:00
Gunnar Beutner 7c46bb4f7d Use 'explicit' for constructors. 2013-03-14 23:52:52 +01:00
Gunnar Beutner 49620ef0ed XNU build fixes. 2013-03-14 15:14:07 +01:00
Gunnar Beutner 1ef7399cea Remove support for anonymous dictionary items. 2013-03-14 12:40:02 +01:00
Gunnar Beutner 442a2dbc7d Implement timeperiods. 2013-03-13 16:04:53 +01:00
Gunnar Beutner 98ab009b91 Cleaned up VS project files. 2013-03-12 19:49:24 +01:00
Gunnar Beutner c594ee7c30 Fix compiler warnings on Windows. 2013-03-12 18:56:13 +01:00
Gunnar Beutner 98f7515eee Fix writing the PID file if there is no previous PID file. 2013-03-12 16:02:35 +01:00
Gunnar Beutner 5fcdc51e3c Windows build fix. 2013-03-12 15:35:51 +01:00
Gunnar Beutner 62cb4e14a6 Make mode variable const. 2013-03-12 14:50:40 +01:00
Gunnar Beutner 9ea0cb4353 Truncate the PID file before writing the new PID. 2013-03-12 14:06:59 +01:00
Gunnar Beutner fc337a51e7 Add missing default implementation for DynamicObject::Stop(). 2013-03-12 14:01:11 +01:00
Gunnar Beutner d7492ab823 Remove libpopen_noshell. 2013-03-12 14:01:01 +01:00
Gunnar Beutner 69a2842d4e Implement DynamicObject::Stop(). 2013-03-12 13:48:37 +01:00
Gunnar Beutner 3c363499bb Eliminate the Component class.
Fixes #3832
Fixes #3840
2013-03-12 13:45:54 +01:00
Gunnar Beutner 91c82263a5 Fix some deadlocks in the TlsStream class. 2013-03-12 11:56:14 +01:00
Gunnar Beutner 4b2d828b99 Refactor the init script and remove the -d option.
Fixes #3666
2013-03-12 11:48:45 +01:00
Gunnar Beutner 412a44e697 Windows build fix. 2013-03-11 14:08:55 +01:00
Gunnar Beutner d8edd98e41 Add more information to exceptions. 2013-03-11 13:47:17 +01:00
Gunnar Beutner 6f51230a79 Don't instantiate abstract objects.
Fixes #3669
2013-03-11 12:04:10 +01:00
Gunnar Beutner c728e85c8c Implement attribute filters. 2013-03-10 15:11:32 +01:00
Gunnar Beutner 98ba1424b5 Implement proper support for JSON arrays. 2013-03-10 09:08:59 +01:00
Gunnar Beutner a38263b3c8 Implement livestatus commands. 2013-03-10 05:10:51 +01:00
Gunnar Beutner 27505536f9 Add livestatus component. 2013-03-10 03:09:01 +01:00
Gunnar Beutner 375746d710 Fix deadlocks in the Socket/Stream classes. 2013-03-09 15:56:56 +01:00
Gunnar Beutner 5a861b0de0 Fix race condition in Process::WorkerThreadProc. 2013-03-09 15:41:07 +01:00