Commit Graph

564 Commits

Author SHA1 Message Date
Michael Friedrich 80c91aa91e stream/livestatus: refactor ReadLine with context saving 2013-07-03 16:16:38 +02:00
Gunnar Beutner 8e880a3f39 Fix include directory for ltdl.h. 2013-07-02 16:56:01 +02:00
Michael Friedrich 43793a1884 compatlog: fix boost algorithm include 2013-07-02 13:38:06 +02:00
Gunnar Beutner 1179d37fa0 compat: Refactor check_command/event_handler code. 2013-07-02 10:24:27 +02:00
Gunnar Beutner bf58700c10 compat: Make sure commands have unique names. 2013-07-02 09:35:03 +02:00
Gunnar Beutner 049fbcb3cb compat: Escape new-lines in commands. 2013-07-02 09:16:06 +02:00
Gunnar Beutner eb95e9a718 Make sure the CGIs don't croak on our objects.cache file. 2013-07-02 08:52:47 +02:00
Gunnar Beutner 03e019580a Implement dumping commands and timeperiods. 2013-07-02 08:44:03 +02:00
Michael Friedrich 207b91224b compat: dump commands to objects.cache
service->notifications may create duplicates.
2013-07-01 20:12:03 +02:00
Michael Friedrich 91e36eb90d compat: add more missing attributes 2013-07-01 19:04:08 +02:00
Michael Friedrich 9334c1e346 notifications: refactor NotificationSent message
like flapping and downtimes behave now.

refs #4361
2013-07-01 17:56:21 +02:00
Michael Friedrich ce9c390ed9 flapping: fix division by 0, add compat status, extcmds
and some debug output.

refs #4360
refs #2711
2013-07-01 17:25:30 +02:00
Michael Friedrich bd6e5d11ac compatlog: use flapping threshold/current
fixes #4360
2013-07-01 14:49:04 +02:00
Michael Friedrich 4de7908b94 compatlog: add flapping messages
refs #4360
2013-07-01 14:44:56 +02:00
Gunnar Beutner e2714525c9 Remove the built-in attributes notes_url and action_url. 2013-07-01 13:55:25 +02:00
Gunnar Beutner 4766e801a2 objects.cache: Add support for the "notes" attribute. 2013-07-01 13:51:00 +02:00
Gunnar Beutner 23c87f6eaf Implement support for custom variables.
Fixes #4344
2013-07-01 13:46:50 +02:00
Michael Friedrich b906b51d3b refactor downtime message handling (wip) 2013-07-01 11:28:49 +02:00
Michael Friedrich 6f7b231302 compatlog: refactor custom/acknowledgement notifications with author/commenttext
refs #4361
2013-07-01 11:17:58 +02:00
Michael Friedrich cd48a4946a compatlog: fix checkcommand name
refs #4361
2013-07-01 10:03:00 +02:00
Michael Friedrich 3af0559b4a Compat: log notifications (wip)
- we need a way to figure out which last commend id (or, author and
  text) where set when type is CUSTOM or ACKNOWLEDGEMENT
- GetCheckCommandName was required too
- not sure if notifications.cpp is the correct location

refs #4361
refs #3985
refs #2750
2013-06-28 21:31:38 +02:00
Michael Friedrich 147cd81328 add downtime message (started,stopped,cancelled) and compat logger
refs #3985
refs #2750
2013-06-28 13:40:01 +02:00
Michael Friedrich 7c0a71bc29 Compat: split cr output into (long_)output, log only output
status.dat requires output, and long_output seperated for proper
representation by guis and addons (they cannot be changed for
compatibility reasons, we must change).

logging an ALERT requires only the output (first line of the check
result output).

fixes #3882
fixes #4348
2013-06-26 18:23:59 +02:00
Michael Friedrich c9fb309200 tools: move mkembedconfig into subdir
preparation for moving the conversion script into tools/

refs #4337
2013-06-24 16:05:18 +02:00
Gunnar Beutner fe35791b1b status.dat: Escape new-lines in multi-line plugin output
Fixes #3671
2013-06-24 11:35:56 +02:00
Gunnar Beutner ea0052f208 Fix: Compat Log: abort on OwnLock()
Fixes #4332
2013-06-24 08:56:49 +02:00
Gunnar Beutner 6f158ff793 Implement external commands for flapping detection. 2013-06-21 10:28:21 +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 0fcbfdb236 Windows build fix. 2013-04-19 15:28:34 +02:00
Gunnar Beutner 5db55ea384 Fix 'make distcheck'. 2013-04-19 13:17:17 +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 acfa3e6475 Fix deadlock in ReplicationComponent::EndpointConnectedHandler. 2013-04-01 17:21:57 +02:00
Gunnar Beutner 2e051ad9e2 Minor performance tweaks. 2013-03-27 18:02:51 +00:00
Gunnar Beutner 1375c64ad9 Release checker mutex before writing log message. 2013-03-27 15:27:45 +00:00
Gunnar Beutner 70e96aa2f0 Refactor ScriptFunctions. 2013-03-25 19:47:02 +00:00
Gunnar Beutner fd3e92ea0c Refactor AsyncTasks. 2013-03-25 17:36:15 +00:00
Gunnar Beutner f5c77463b1 Bug fix for reminder notifications. 2013-03-21 15:24:00 +01:00
Gunnar Beutner 99bd0f0189 Implement the 'notification_period' attribute. 2013-03-21 13:42:46 +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 8b53735cc9 Move the notification_interval option to the Notification class.
Fixes #3821
2013-03-20 10:08:27 +01:00
Gunnar Beutner 80c3a70107 Implement the CheckResultReader type. 2013-03-19 16:20:46 +01:00
Gunnar Beutner a21cf21d52 Implement the CompatLog type. 2013-03-19 13:04:30 +01:00
Gunnar Beutner 734f76af96 Windows build fix. 2013-03-18 22:40:40 +01:00
Gunnar Beutner 2a8bc3ca0f Refactor #includes (Part 5). 2013-03-18 17:39:40 +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 27e1d311de Fix dependencies for mkembedconfig. 2013-03-15 13:35:39 +01:00
Gunnar Beutner 4d5e924bc6 Add mkembedconfig as a dependency for the .conf -> .cpp build step. 2013-03-15 11:56:30 +01:00
Gunnar Beutner ee46731f41 Fix --disable-shared
Fixes #3852
2013-03-15 11:21:16 +01:00
Gunnar Beutner 49620ef0ed XNU build fixes. 2013-03-14 15:14:07 +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 d15a21a0d2 Windows build fix. 2013-03-12 18:42:35 +01:00
Gunnar Beutner edab378b11 Add missing VS project files. 2013-03-12 17:34:58 +01:00
Gunnar Beutner 5fcdc51e3c Windows build fix. 2013-03-12 15:35:51 +01:00
Gunnar Beutner 3c363499bb Eliminate the Component class.
Fixes #3832
Fixes #3840
2013-03-12 13:45:54 +01:00
Gunnar Beutner d8edd98e41 Add more information to exceptions. 2013-03-11 13:47:17 +01:00
Gunnar Beutner f34778eb86 *NIX build fix. 2013-03-10 22:55:57 +01:00
Gunnar Beutner 7274d4680e Implement some more tables. 2013-03-10 22:20:13 +01:00
Gunnar Beutner ed912b0e23 Prepare support for table joins. 2013-03-10 18:50:22 +01:00
Gunnar Beutner 6c7af283c0 Add missing files in Makefile.am. 2013-03-10 17:57:49 +01:00
Gunnar Beutner fbf08257ad Implement the "Stats" header. 2013-03-10 17:54:46 +01:00
Gunnar Beutner fd6deeeee6 Implement "Negate" header. 2013-03-10 15:27:55 +01:00
Gunnar Beutner dc27ddaada Combine all top-level filters into a single filter (with operator "and"). 2013-03-10 15:23:41 +01:00
Gunnar Beutner 79579e9bb1 *NIX build fix. 2013-03-10 15:14:14 +01:00
Gunnar Beutner c728e85c8c Implement attribute filters. 2013-03-10 15:11:32 +01:00
Gunnar Beutner ad77c873ba Implement filters for "and" and "or". 2013-03-10 12:24:03 +01:00
Gunnar Beutner 8bda3bc63c Added dummy tables: contactgroups and contacts. 2013-03-10 09:55:46 +01:00
Gunnar Beutner d7efa9e24c Implement basic livestatus GET queries. 2013-03-10 09:23:13 +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 5d0fa0f6c9 Removed dummy timeperiod definition. 2013-03-09 00:01:04 +01:00
Gunnar Beutner d7a995e752 status.dat/objects.cache: check_interval/retry_interval should be in minutes. 2013-03-09 00:00:43 +01:00
Gunnar Beutner f771ede8f1 Fixed deadlock. 2013-03-09 00:00:10 +01:00
Gunnar Beutner cada2abeb3 Implement automated stacktraces for exceptions. 2013-03-07 19:44:39 +01:00
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