Commit Graph

695 Commits

Author SHA1 Message Date
Michael Friedrich ccd60bbc4b macros: fix param name for ResolveMacros 2013-07-16 17:11:18 +02:00
Michael Friedrich d5579d9e2f Config: add macros/custom dictionaries to Host Service definition
additive inheritance (+=) works with templates too.
2013-07-16 14:53:21 +02:00
Michael Friedrich 9ad0b11442 User: register enable_notifications, add GetEnableNotifications() 2013-07-16 13:17:53 +02:00
Gunnar Beutner 81b3b57b11 Make libido a library, rather than a user-loadable module. 2013-07-16 10:40:55 +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 540e63c157 Make sure new comments/downtimes are added to the ID cache right away. 2013-07-11 08:58:11 +02:00
Gunnar Beutner 664916dffb Fix nullptr deref in Service::GetLastCheckPerfData(). 2013-07-10 09:57:18 +02:00
Michael Friedrich 3023686042 service: add IsHostCheck helper 2013-07-09 16:59:31 +02:00
Gunnar Beutner 4961523e91 Add DECLARE_PTR_TYPEDEFS macro for Ptr/WeakPtr typedefs. 2013-07-09 08:43:52 +02:00
Michael Friedrich 9249af1c66 log an error to debug when check_command not found on service execution
refs #4391
2013-07-06 20:46:09 +02:00
Michael Friedrich 16adc9a0c5 livestatus: add more hosttable todos
refs #4372
2013-07-05 19:14:10 +02:00
Michael Friedrich 337b781088 service: register attribute last_hard_state 2013-07-05 14:05:49 +02:00
Michael Friedrich ec3e8cfe1c livestatus: move host attribute getter into host->service again
refs #4372
2013-07-05 13:42:40 +02:00
Michael Friedrich 88197d216a livestatus: add first part of host data providers
refs #4372
2013-07-05 09:35:49 +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 8e880a3f39 Fix include directory for ltdl.h. 2013-07-02 16:56:01 +02:00
Gunnar Beutner acc2bdb875 Use object name if HOSTADDRESS macro isn't defined. 2013-07-02 10:08:22 +02:00
Gunnar Beutner 184f503c2a Fix how the HOSTALIAS and CONTACTALIAS macros work. 2013-07-02 09:54:24 +02:00
Gunnar Beutner 4cd4228f64 Implement HOSTADDRESS and HOSTADDRESS6 macros. 2013-07-02 09:47:31 +02:00
Gunnar Beutner 76edc08506 Remove unnecessary parenthesis. 2013-07-02 09:00:15 +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 9334c1e346 notifications: refactor NotificationSent message
like flapping and downtimes behave now.

refs #4361
2013-07-01 17:56:21 +02:00
Michael Friedrich b9c4e7f931 fix typo 2013-07-01 17:56:05 +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 4de7908b94 compatlog: add flapping messages
refs #4360
2013-07-01 14:44:56 +02:00
Gunnar Beutner bdd0ee013c Implement Service::GetFlappingCurrent(). 2013-07-01 14:39:43 +02:00
Gunnar Beutner ff6383873f Implement Service::GetFlappingThreshold(). 2013-07-01 14:30:19 +02:00
Gunnar Beutner ff04af396b Add missing validator for flapping_threshold. 2013-07-01 14:09:54 +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 e28fba2a9c Fix missing variable definition: Service::m_Endpoint. 2013-07-01 11:28:49 +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 01a4755333 remoting: multicast messages into debug log 2013-06-28 19:50:23 +02:00
Michael Friedrich 29175b1eb3 fix typo 2013-06-28 13:44:18 +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
Gunnar Beutner 4b997c0838 Implement validator for timeperiods.
Fixes #3845
2013-06-27 11:25:10 +02:00
Gunnar Beutner a97519a42e Move filter constants to itl/constants.conf. 2013-06-27 11:23:32 +02:00
Gunnar Beutner 277fe0d6ab Make the "custom" attribute a dictionary. 2013-06-26 10:19:00 +02:00
Gunnar Beutner 0b8d011601 Fix syntax error. 2013-06-26 10:19:00 +02:00
Gunnar Beutner 463f4e4cf9 Implement notification_*_filter variables for Host/Service objects. 2013-06-26 10:19:00 +02:00
Gunnar Beutner d2b31f6a06 Implement notification conditions.
Fixes #2841
2013-06-26 09:08:50 +02:00
Gunnar Beutner 46b3f033cf Make sure flapping counters aren't negative. 2013-06-26 09:03:44 +02:00
Gunnar Beutner 8302062ead Config: Implement << and >> operators. 2013-06-26 08:21:35 +02:00
Gunnar Beutner 49faf14b70 Don't allow asterisks in identifiers. 2013-06-25 10:27:16 +02:00
Gunnar Beutner f3d0738e93 Implement script variables. 2013-06-25 09:21:42 +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 a93543db7f Fix: Timeperiods: legacy-timeperiod parsed empty, results in skipped checks
Fixes #4336
2013-06-24 15:01:23 +02:00
Gunnar Beutner b0ac607caf Fix: missing check_command attribute results in sigsegv on check execution
Fixes #4331
2013-06-24 09:30:49 +02:00
Gunnar Beutner 7f513a9aea Update the flapping detecting formula. 2013-06-21 12:51:29 +02:00
Gunnar Beutner 6f158ff793 Implement external commands for flapping detection. 2013-06-21 10:28:21 +02:00
Gunnar Beutner 69fcd7fa40 Implement flapping detection. 2013-06-21 10:20:29 +02:00
Gunnar Beutner 89078e1cfb Config: Fix nested dictionaries in arrays. 2013-06-21 09:07:57 +02:00
Gunnar Beutner f38a389791 Make error message more user-friendly. 2013-06-21 09:03:02 +02:00
Gunnar Beutner 0d96923b45 Add missing lock. 2013-06-21 08:30:26 +02:00
Gunnar Beutner 709e8c925e Bugfix for removing expired downtimes. 2013-06-19 14:28:46 +02:00
Gunnar Beutner 1d7428b237 Implement support for acknowledgement comments.
Fixes #3585
2013-06-19 10:57:07 +02:00
Gunnar Beutner e13a6ac23d Implement support for downtime comments.
Fixes #3894
2013-06-19 10:42:28 +02:00
Gunnar Beutner 0d64a8fd32 Don't seal DynamicObject updates. 2013-06-19 10:37:50 +02:00
Gunnar Beutner 686ea10213 Remove unused typedef. 2013-06-19 10:19:04 +02:00
Gunnar Beutner 4ab9d2604f Implement volatile services
Fixes #3593
2013-06-13 12:24:20 +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 99220a00c8 Windows build fix. 2013-06-04 10:16:11 +02:00
Gunnar Beutner 92edb85489 Rename 'path_prefix' option to 'perfdata_path'. 2013-06-04 09:52:37 +02:00
Gunnar Beutner 8e754b085e Implement notification escalations. 2013-05-13 13:44:57 +02:00
Gunnar Beutner f4d04f8172 Fix ThreadPool exception on shutdown.
Fixes #3891
2013-05-13 09:58:24 +02:00
Gunnar Beutner 36a45059f9 Fix infinite loop in LegacyTimePeriod::FindNthWeekday(). 2013-05-08 12:48:45 +02:00
Gunnar Beutner 5aeafb9f03 Make error message about invalid object names more verbose. 2013-05-08 10:50:56 +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 aaac957ad5 Disallow colons in user-defined objects. Use colons for auto-generated object names. 2013-05-07 09:35:36 +02:00
Gunnar Beutner 7e16c77375 Don't allow config items to inherit from themselves.
Fixes #4045
2013-05-07 09:14:23 +02:00
Gunnar Beutner 1d6e1c205f Fix uninitialized variables. 2013-05-03 12:44:27 +02:00
Gunnar Beutner 1e9dcb35b4 Fix parsing <MONTH> <DAY> time defs (e.g. "december 25").
Fixes #4040
2013-05-03 12:31:11 +02:00
Gunnar Beutner 3457e2d476 Fix DST bug in LegacyTimePeriod::ParseTimeSpec(). 2013-05-03 12:30:57 +02:00
Gunnar Beutner 10dff1d8c1 Removed dependency on boost/uuid. 2013-05-03 11:26:18 +02:00
Gunnar Beutner 288a877625 Implement new validation type: name(Type) 2013-05-03 10:48:28 +02:00
Gunnar Beutner fbbcaeac31 Update documentation. 2013-04-24 14:15:08 +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 c9fa320379 Remove debug code. 2013-04-18 09:39:08 +02:00
Gunnar Beutner 654954c64c Fix incorrect variable name. 2013-04-18 08:24:22 +02:00
Gunnar Beutner b40c0995ad Unify parsing weekday definitions. 2013-04-18 08:20:16 +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 836c26da66 Bugfixes for the timeperiod feature. 2013-04-16 10:12:53 +02:00
Gunnar Beutner 9fa628af82 Implemented Icinga 1.x time period parser. 2013-04-15 12:48:12 +02:00
Gunnar Beutner 9a12bbb6f9 Implement host check commands
Fixes #3674
2013-04-15 10:23:06 +02:00
Gunnar Beutner ada9f634dd Don't link items after we've encountered a compiler error.
Fixes #3930
2013-04-08 10:09:27 +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 0c9f635c46 Build fix. 2013-03-27 16:08:58 +01:00
Gunnar Beutner 4c04c2665c Add missing NUL terminator in lb_steal(). 2013-03-27 16:03:43 +01:00
Gunnar Beutner f1c57ce3a0 Significantly speed up the config lexer. 2013-03-27 16:03:43 +01:00
Gunnar Beutner c14aaf3d29 Optimize lb_append_char(). 2013-03-27 16:03:39 +01:00
Gunnar Beutner 83ff08340b Remove some static vars from the config compiler (in an effort to make it re-entrant). 2013-03-27 13:50:53 +01:00
Gunnar Beutner 96b1bd1943 Add some debug output in the config compiler. 2013-03-27 13:49:58 +01:00
Gunnar Beutner b9ded4a851 Python build fix. 2013-03-27 06:27:44 +00:00
Gunnar Beutner 34d6b42b38 Remove unused #include. 2013-03-27 06:27:33 +00:00
Gunnar Beutner babc948cd0 Performance improvements for Value -> double conversions. 2013-03-27 06:26:42 +00:00
Gunnar Beutner 604b57da43 Fixed double-free in the config parser. 2013-03-26 17:26:31 +00:00
Gunnar Beutner 5d73b69342 Fix return type for PluginCheckTask::ScriptFunc. 2013-03-25 19:58:34 +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 19cc034665 Add validator for the PerfdataWriter type. 2013-03-22 15:32:57 +01:00
Gunnar Beutner 11282b875e Fix syntax error in type validators. 2013-03-22 14:45:24 +01:00
Gunnar Beutner 82f63d7eda Add missing validator for Host -> Service -> notifications. 2013-03-22 14:42:20 +01:00
Gunnar Beutner 6d69d6c639 Refactor the macro resolver
Fixes #3884
2013-03-22 14:42:14 +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 db064d3ce9 Removed the '#' prefix for the config statements 'include' and 'library'. 2013-03-21 14:35:10 +01:00
Gunnar Beutner 99bd0f0189 Implement the 'notification_period' attribute. 2013-03-21 13:42:46 +01:00
Gunnar Beutner 8037612e72 Implement 'force' option for SEND_CUSTOM_*_NOTIFICATION. 2013-03-21 13:23:56 +01:00
Gunnar Beutner db8ac1431c More bugfixes for notifications. 2013-03-21 11:37:34 +01:00
Gunnar Beutner e60c04f4bd Fix another bug related to recovery notifications. 2013-03-20 16:27:38 +01:00
Gunnar Beutner f278181b8b Fix recovery notifications for (SOFT-OK -> HARD-OK).
Fixes #3876
2013-03-20 15:25:53 +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