Commit Graph

485 Commits

Author SHA1 Message Date
Gunnar Beutner e2416b5b54 Check return values of SymGetLineFromAddr64 and SymFromAddr. 2013-03-07 16:00:10 +01:00
Gunnar Beutner 5a166f83d7 Move pidfile and command pipe to /var/run/icinga2 rather than /var/run
Fixes #3670
2013-03-07 12:23:43 +01:00
Gunnar Beutner 02be9010e7 Implemented LAST*STATE* macros. 2013-03-07 12:04:20 +01:00
Gunnar Beutner 659fcf8fa3 Fix cppcheck warnings. 2013-03-06 15:41:13 +01:00
Gunnar Beutner 6f7b553acd Bugfixes for the *:Invalidate*Cache() calls. 2013-03-06 13:01:51 +01:00
Gunnar Beutner 70fa21dfbc Various bugfixes. 2013-03-06 11:04:20 +01:00
Gunnar Beutner be95f3171d Even more code refactoring. 2013-03-04 15:52:42 +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 f98c448c95 Remove the compatido component. 2013-02-28 11:01:59 +01:00
Gunnar Beutner 5228d7f10b Implemented compat support for users and user groups. 2013-02-28 10:50:20 +01:00
Gunnar Beutner 975c527b07 Bugfix: Output dummy check data for hosts that don't have a hostcheck. 2013-02-28 10:26:01 +01:00
Gunnar Beutner e9d32eeada Implemented user groups. 2013-02-27 21:49:03 +01:00
Gunnar Beutner 6bf086dc91 Implemented notification_interval attribute for hosts. 2013-02-27 18:15:01 +01:00
Gunnar Beutner e98fd3e3eb Bug fixes for the new cache code. 2013-02-27 16:04:49 +01:00
Gunnar Beutner d666960fa0 Refactor the cache code... again. 2013-02-27 15:23:25 +01:00
Gunnar Beutner e9648f35bc Make the services/notifications caches thread safe.
Send notifications based on the notification_interval setting.
2013-02-27 12:44:51 +01:00
Gunnar Beutner 163f0a9f5c Implemented support for disabling notifications. 2013-02-26 12:37:25 +01:00
Gunnar Beutner 45f8bfb730 Checker: Use Ptrs rather than WeakPtrs.
Fixes #3732
2013-02-26 10:58:32 +01:00
Gunnar Beutner 35c79a76c1 Make attribute lookups O(1). 2013-02-26 10:13:54 +01:00
Gunnar Beutner 0a0bb967a4 Make sure we don't block on write() while holding locks. 2013-02-24 12:47:24 +01:00
Gunnar Beutner 2ef255b9f6 Fine-grained locks (WIP, Part 9). 2013-02-24 01:10:34 +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 4306c6c07a Fine-grained locks (WIP, Part 8). 2013-02-21 16:12:50 +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 1daeb8c010 Fine-grained locks (WIP, Part 5). 2013-02-19 12:17:31 +01:00
Gunnar Beutner 3dace35cf1 Fine-grained locks (WIP, Part 3). 2013-02-18 23:44:24 +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 023d17c675 Implement per-thread event queues. 2013-02-15 06:48:30 +01:00
Gunnar Beutner 34cc7347ca Bugfix: Reschedule the delegation timer after starting it. 2013-02-13 12:18:36 +01:00
Gunnar Beutner b17cafd0cf Make the delegation interval configurable. 2013-02-13 09:59:38 +01:00
Gunnar Beutner c878065a1f Don't load the replication component on standalone instances.
Fixes #3687
2013-02-11 23:37:39 +01:00
Gunnar Beutner 4888a26c0e Checker: Use weak_ptrs to keep track of services. 2013-02-11 13:05:08 +01:00
Gunnar Beutner dd93206113 Fixed exception in command pipe thread after sending Icinga SIGTERM. 2013-02-10 12:42:14 +01:00
Gunnar Beutner f8851aa79d Bugfix: host and source groups don't have display names. 2013-02-09 20:37:03 +01:00
Gunnar Beutner 84482bb39d Removed alias property, added display_name. 2013-02-09 17:50:47 +01:00
Gunnar Beutner d124e37c91 Implemented status.dat support for notifications. 2013-02-09 17:33:50 +01:00
Gunnar Beutner c44ad7b06b Implemented notification request messages, notifications dictionary for hosts/services and state-based notifications. 2013-02-09 15:20:10 +01:00
Gunnar Beutner 3ab071fbcb Made the debug log level slightly less spammy. 2013-02-09 10:55:54 +01:00
Gunnar Beutner 4fcda6699f Bugfix: use short names in servicegroup objects. 2013-02-09 01:49:45 +01:00
Gunnar Beutner 29b056c848 Remove separate host ack/downtime/comments functionality.
Fixes #3663
2013-02-09 01:16:43 +01:00
Gunnar Beutner 6c23481a55 Bugfix: Local events for changed attributes aren't processed at transaction commit time.
Fixes #3605
2013-02-08 23:40:28 +01:00
Gunnar Beutner 3458b7d9d1 Implement service shortnames.
Refs #3660
2013-02-08 15:38:22 +01:00
Gunnar Beutner 09309b3899 Reschedule check timer after each finished check. 2013-02-08 10:39:31 +01:00
Gunnar Beutner 601c7d25d1 Implement sub-second check intervals.
Fixes #3656
2013-02-08 10:17:41 +01:00
Gunnar Beutner b14027ec73 Move EXPORT_COMPONENT() macros to the beginning of the files.
Fixes #3654
2013-02-08 07:11:14 +01:00
Gunnar Beutner 1017f78b0b Added dummy project files for the notification component. 2013-02-07 21:19:19 +01:00
Gunnar Beutner 1b4a9a3a21 Redesign dependencies.
Fixes #3646
2013-02-07 20:29:35 +01:00
Michael Friedrich 0de681be5d Compat: implemented log_path config getter (no functionality yet)
fixes #2796
2013-02-07 18:34:50 +01:00
Gunnar Beutner a64fa1b994 objects.cache: Implement service dependencies
Fixes #3639
2013-02-06 22:41:40 +01:00
Gunnar Beutner 39bd164625 objects.cache: Service definitions should include the display_name property. 2013-02-06 15:54:13 +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 59f1d3ffc0 Fix warnings on initial startup (i.e. without a state file).
Fixes #3606
2013-02-05 15:43:38 +01:00
Gunnar Beutner c4293cfa25 Added init script.
Fixes #3114
2013-02-04 12:52:39 +01:00
Gunnar Beutner f2e17bdd09 Fixed compiler warnings (-Wextra). 2013-02-02 22:13:54 +01:00
Gunnar Beutner 5492d6fac3 Bugfix: Unhandled exception in Service::CheckTimerHandler.
Fixes #3607
2013-02-01 19:27:36 +01:00
Gunnar Beutner 7835563e03 Fixed some compiler warnings. 2013-02-01 15:44:03 +01:00
Gunnar Beutner dedd4256c1 Bugfix: Use service names instead of aliases. 2013-02-01 10:51:45 +01:00
Gunnar Beutner 070607a1d1 Implement Service::OnCheckResultReceived, rename ServiceStateChangeMessage to CheckResultMessage
Fixes #3597
2013-01-31 16:51:50 +01:00
Gunnar Beutner 9862ab5324 Implement triggered downtime for services.
Fixes #3583
2013-01-31 13:57:14 +01:00
Gunnar Beutner b9d02b0482 Bugfix: Use service name in status.dat (rather than alias). 2013-01-31 09:51:37 +01:00
Gunnar Beutner e967d931fd Fixed building with --disable-shared. 2013-01-30 23:52:11 +01:00
Gunnar Beutner 7b03c77b66 Bugfix: some legacy_id changes didn't cause the cache to get updated. 2013-01-30 15:24:02 +01:00
Gunnar Beutner 49cc9f5898 Remove expired comments and downtimes. 2013-01-30 14:28:13 +01:00
Gunnar Beutner 20958d0ba8 Bugfix: look up legacy_id for triggered_by downtimes. 2013-01-30 11:10:47 +01:00
Gunnar Beutner 6e119dafee Use UUIDs to uniquely identify comments and downtimes. 2013-01-30 09:59:22 +01:00
Gunnar Beutner c7550971fe Implemented comments.
Fixes #3558
2013-01-29 16:29:09 +01:00
Gunnar Beutner e5ee9b9ea9 Renamed ExternalCommand to ExternalCommandProcessor.
Fixes #3579
2013-01-29 15:47:38 +01:00
Gunnar Beutner 4643444913 Added missing files. 2013-01-29 15:47:38 +01:00
Gunnar Beutner 8e8e607b2e Implement downtimes.
Fixes #2833
2013-01-29 14:19:54 +01:00
Gunnar Beutner 3846a10f0e Unset force_next_check after each check. 2013-01-28 13:24:51 +01:00
Gunnar Beutner 15e6337594 Fixed incorrect variable name in ReplicationComponent::ServiceStateChangeRequestHandler. 2013-01-28 10:07:48 +01:00
Gunnar Beutner 2e78899347 Implement statistics for passive service checks. 2013-01-28 09:01:47 +01:00
Gunnar Beutner fc782473db Implemented status.dat support for host acknowledgements. 2013-01-27 11:54:50 +01:00
Gunnar Beutner 2f98f56119 Re-schedule checks when re-assigning them to a different checker. 2013-01-25 13:09:23 +01:00
Gunnar Beutner 54ffa0a144 Implement the PROCESS_FILE external command. 2013-01-24 23:42:02 +01:00
Gunnar Beutner 335a0b3067 Implement support for enabling/disabling passive checks. 2013-01-24 23:11:54 +01:00
Gunnar Beutner cd30cb48c8 compatido: Update to use new *Group::GetMembers() functions
Fixes #3564
2013-01-24 20:46:26 +01:00
Gunnar Beutner ad5256588d Implemented ServiceGroup::GetMembers() and HostGroup::GetMembers(). 2013-01-24 13:21:35 +01:00
Gunnar Beutner 8819b4c843 Bug fix: Remove pending services from the idle services set. 2013-01-24 11:14:17 +01:00
Gunnar Beutner 7447d340cc Bug fix: Continue executing checks even if the first matching service is disabled. 2013-01-24 11:07:37 +01:00
Gunnar Beutner db6c89bc58 Update service state when delegation is unsuccessful
Fixes #3548
2013-01-24 10:40:31 +01:00
Gunnar Beutner e334f126c8 Checker: don't report missed checks after restarting Icinga
Fixes #3253
2013-01-23 15:28:32 +01:00
Gunnar Beutner 249b19a69a Implement acknowledgements.
Fixes #3557
2013-01-23 13:21:07 +01:00
Gunnar Beutner 65c0334b28 Reuse pipe inode if it already exists.
Fixes #3552
2013-01-23 10:18:23 +01:00
Gunnar Beutner 71ec1d2b95 Implement enable_checks property for services.
Fixes #3550
2013-01-22 16:01:08 +01:00
Gunnar Beutner f694954512 ExternalCommand: use exceptions instead of return values.
Fixes #3549
2013-01-22 15:13:51 +01:00
Gunnar Beutner 7e31cb639f Implement property change handler for next_check.
Fixes #3547
2013-01-22 12:44:23 +01:00
Gunnar Beutner 61f2b5f0cf Pass through timestamps to external command handlers. 2013-01-22 12:39:33 +01:00
Gunnar Beutner 8c2ab8f552 Move service check code into the Service class.
Fixes #3546
2013-01-22 11:07:09 +01:00
Gunnar Beutner c97b480b1e Implement support for anonymous multicast messages.
Fixes #3545
2013-01-22 10:14:52 +01:00
Gunnar Beutner 989d7139f3 Refactor scheduling stuff from *CheckTask into the checker component
Fixes #3067
2013-01-22 09:40:37 +01:00
Gunnar Beutner 02de634c12 Implement REGISTER_SCRIPTFUNCTION() and clean up how check types are registered. 2013-01-22 09:21:50 +01:00
Gunnar Beutner ecb044b679 Disable command pipe functionality on Windows. 2013-01-22 08:47:56 +01:00
Gunnar Beutner c20ae866b7 Implemented support for external commands. 2013-01-22 08:34:29 +01:00
Gunnar Beutner 624b17be1a Remove /GM flag for Debug|x64
Fixes #3537
2013-01-22 08:26:47 +01:00
Gunnar Beutner ccbb98e64a Use String::ToString() in CompatComponent::ProcessCommand(). 2013-01-21 13:45:27 +01:00
Gunnar Beutner d4a6d68ef0 Implemented parsing command pipe data. 2013-01-21 13:39:20 +01:00
Gunnar Beutner 853dbfa82e Implemented command pipe (sort of). 2013-01-21 13:08:08 +01:00
Gunnar Beutner 5a7aeb1f19 Fix: Endpoints were not properly marked as local. 2013-01-18 09:37:27 +01:00
Gunnar Beutner 83772d4386 Implemented DynamicType support.
Fixes #3477
2012-12-04 08:42:24 +01:00
Gunnar Beutner 6a03ab5220 Fixed build warning for compatido. 2012-11-26 08:33:40 +01:00
Gunnar Beutner 0785a082e9 Minor cleanups. 2012-11-23 11:04:08 +01:00
Gunnar Beutner 1bf945f367 Fixed indentation. 2012-11-22 13:16:38 +01:00
Gunnar Beutner 321d66023f Refactored the socket classes. 2012-11-22 12:04:32 +01:00
Gunnar Beutner e57bf22d82 Fix: Renaming temp files didn't work on Windows.
Fixes #3216
2012-10-17 11:35:06 +02:00
Gunnar Beutner 677d8e00bf Changed log level for debug message. 2012-10-15 18:25:56 +02:00
Gunnar Beutner 3fe13b3ad3 Fixed grammar mistake. 2012-10-15 08:54:08 +02:00
Gunnar Beutner ac11c84813 Only log check timer when we actually created any tasks. 2012-10-15 08:52:31 +02:00
Gunnar Beutner b740628042 Bugfix: Delegation didn't work for local-only instances. 2012-10-12 15:45:33 +02:00
Gunnar Beutner 26da51e071 Bugfix: The delegation component should use only non-local checker endpoints. 2012-10-12 10:33:11 +02:00
Gunnar Beutner a5046ae7bf Bugfix: Replicated objects weren't removed on peer instances when they were removed on the source instance. 2012-10-12 09:58:34 +02:00
Michael Friedrich 6db4f2c3bc Compat IDO: move some log msg to debug level 2012-10-09 00:59:43 +02:00
Michael Friedrich c63a9da326 Merge branch 'master' of git.icinga.org:icinga2
Conflicts:
	components/compatido/compatidocomponent.cpp
2012-10-08 10:33:25 +02:00
Michael Friedrich f9c4543112 Compat IDO: remove more hardcoded values, prepare setting the socket 2012-10-08 10:26:07 +02:00
Gunnar Beutner 4f450a464c Wrapped VERSION in #ifndef and moved it to the top of the file. 2012-10-08 10:14:43 +02:00
Michael Friedrich ad1207166c Compat IDO: hardcode program version for now, fixes windoze 2012-10-08 09:58:28 +02:00
Michael Friedrich 208cceaf27 Compat IDO: serialize dumps (refs #3257)
- dump config once, protect it from status dumps
- send process start to ido2db to allow deletion of inactive objects
2012-10-07 23:45:55 +02:00
Michael Friedrich 87ae4f4642 Compat IDO: make sending of data serialized (refs #3257), always send hello 2012-10-07 22:20:54 +02:00
Michael Friedrich d42dd6e03f Compat IDO: add reconnect to ido2db, if not connected (refs #3207) 2012-10-07 22:02:44 +02:00
Michael Friedrich 7c45e460e6 CompatIDO: cleanup, add more default values with their correct type 2012-10-05 22:28:06 +02:00
Michael Friedrich 1b0a482742 CompatIDO: implement first draft of {en,dis}able objects supported in ido2db 1.8 refs #3157 2012-10-03 01:25:44 +02:00
Michael Friedrich c2bad406ef Configuration: use underscore in attributes, document all using new locations
... from #3228

fixes #3222
2012-10-02 14:44:57 +02:00
Michael Friedrich 4609f7d980 install: create all dirs needed by automake install
refs #3228
2012-10-02 14:44:22 +02:00
Michael Friedrich 4b768c2680 Compat: default localstatedir mkdir will be $prefix/var/icinga2 2012-10-02 13:23:35 +02:00
Michael Friedrich edb9a47c97 compat: add config options: {status,objects}path
requires automake target for localstatedir as default, if not set.

refs #2796
2012-09-28 14:26:01 +02:00
Michael Friedrich 54ca22be04 compatido: now REALLY make those default config options static
refs #3158
2012-09-28 13:14:03 +02:00
Michael Friedrich 37e0309c1d compatido: fix namespace for default config options
refs #3158
2012-09-28 12:33:40 +02:00
Michael Friedrich 71cbfe8fea Merge branch 'mfriedrich/compatido' 2012-09-28 12:15:23 +02:00
Michael Friedrich 550a7959d7 compatido: add config options: socket_{address, port}, instance_name
fixes #3158
2012-09-28 12:13:50 +02:00
Gunnar Beutner 7db1591393 Fixed Windows build dependencies for compatido. 2012-09-28 12:09:00 +02:00
Michael Friedrich 1a78a0b5e1 compatido: remove CompatIdoComponent::GetName()
fixes #3205
2012-09-28 10:35:42 +02:00
Michael Friedrich faf741e3b9 compatido: replace gettimeofday with Utility::GetTime()
* fixes build on windows
* only timestamp (4) of idomod requires seconds.useconds as output,
which needs proper formatting within a stringstream -
std::precision(17) is required.
* all other timestamps are just unix seconds, so we require static casts
to integer here
2012-09-27 22:12:59 +02:00
Michael Friedrich e294afe7b4 compatido: general cleanup 2012-09-27 18:39:13 +02:00
Michael Friedrich c726adb550 Merge branch 'master' into mfriedrich/compatido 2012-09-25 15:18:15 +02:00
Gunnar Beutner b13e14d221 Changed header for the status.dat file. 2012-09-25 11:38:40 +02:00
Michael Friedrich 8886155fb0 Merge branch 'master' into mfriedrich/compatido 2012-09-25 11:07:17 +02:00
Gunnar Beutner f53f8e64fd Renamed NagiosCheckTask to PluginCheckTask.
Fixes #3146
2012-09-25 09:08:50 +02:00
Michael Friedrich 6932258b56 compatido: apply x64 fixes, and renaming stuff to included vs files - tests required 2012-09-24 18:01:42 +02:00
Michael Friedrich f5d2924452 Merge branch 'master' into mfriedrich/compatido
Conflicts:
	components/Makefile.am
	configure.ac
	icinga2.sln
2012-09-24 17:48:46 +02:00
Michael Friedrich 35d3bbd50e compatido: dump RETAINED config types only, quickfix, now icinga web shows some stuff 2012-09-24 17:41:05 +02:00
Michael Friedrich a1e476e155 compatido: drop idoprotoapi.h, put hardcoded values with desc instead 2012-09-22 18:05:43 +02:00
Michael Friedrich 6aa01cacc6 compatido: make status update intervals some constants 2012-09-22 15:58:42 +02:00
Michael Friedrich 454adc5a90 Merge branch 'master' into compatido 2012-09-22 15:07:43 +02:00
Gunnar Beutner b9b009b6da Build fix for Windows. 2012-09-21 16:28:14 +02:00
Gunnar Beutner bb8935fe9b Added Win64 build support. 2012-09-21 16:15:36 +02:00
Gunnar Beutner 5921337b46 Merged convenience component into libicinga. 2012-09-21 13:49:14 +02:00
Gunnar Beutner 97829fbfcd Cleaned up the code a bit. 2012-09-21 09:43:06 +02:00