Commit Graph

939 Commits

Author SHA1 Message Date
Stephan Platz 2d393eab28 Add macro "check_source" for hosts and services to use them in notification mails
fixes #8277

Signed-off-by: Gunnar Beutner <gunnar@beutner.name>
2015-01-25 16:04:36 +01:00
Michael Friedrich 78bfd0204c Update copyright year 2015-01-22 12:00:23 +01:00
Gunnar Beutner 363f23b1d8 Rename ScriptFunction to Function
fixes #8258
2015-01-21 08:48:38 +01:00
Gunnar Beutner 9a6a84d9d9 Implicitly convert filter values to bool for object rules
fixes #8184
2015-01-12 08:38:14 +01:00
Michael Friedrich 6ae9685cee Fix sending notifications for volatile checks on OK->OK changes
volatile checks make state changes behave like HARD state changes.
Though OK -> OK transitions must not be notified.

Increased log information for notifications too.

fixes #8063
2015-01-08 16:20:44 +01:00
Gunnar Beutner f02c87b14c Fix missing command arguments
fixes #8144
2015-01-08 11:38:09 +01:00
Gunnar Beutner 407f88e185 Fix incorrect week day calculation in LegacyTimePeriod::ParseTimeSpec
fixes #6943
2014-12-20 22:04:24 +01:00
Gunnar Beutner 97168378e8 Rename _DEBUG to I2_DEBUG
fixes #7767
2014-12-19 12:19:28 +01:00
Gunnar Beutner 06052c0539 Fix validation for service names in Notification, Dependency and ScheduledDowntime objects
fixes #8122
2014-12-19 11:44:31 +01:00
Gunnar Beutner 9f18211ada Remove obsolete code
refs #7709
2014-12-18 15:57:30 +01:00
Gunnar Beutner 873e294158 Refactor the WorkQueue class to make error reporting easier
refs #7709
2014-12-18 15:11:57 +01:00
Michael Friedrich a0359799bd Compat: Fix event_handler_enabled dump based on enable_event_handler attribute
fixes #8105
2014-12-18 11:22:15 +01:00
Gunnar Beutner 55b7f00382 Remove unnecessary includes 2014-12-15 10:16:06 +01:00
Gunnar Beutner 343d46bcbe Make sure IcingaApplication::GetVars returns a default value
refs #8074
2014-12-15 06:02:59 +01:00
Gunnar Beutner 1cb0231c05 Refactor how variable scopes work
refs #8074
2014-12-14 11:33:45 +01:00
Gunnar Beutner dd4c04aa9b Implement the 'global' keyword to differentiate between variable scopes
refs #8074
2014-12-13 17:48:58 +01:00
Gunnar Beutner 05485ea2d6 Disallow calling strings as functions
fixes #8040
2014-12-12 20:45:11 +01:00
Michael Friedrich d11286e9a5 DB IDO: Update child object reachability if parentchanges to !{OK,UP}
fixes #7683
2014-12-12 16:12:05 +01:00
Gunnar Beutner cfd775c948 Move the VMFrame class to libbase
refs #8065
2014-12-12 15:33:56 +01:00
Gunnar Beutner 0f496c0b55 Fix set_if for non-numeric boolean values
fixes #8049
2014-12-10 16:49:00 +01:00
Gunnar Beutner 2720333d6e Fix missing location information for included files
fixes #7927
2014-12-10 15:06:09 +01:00
Gunnar Beutner be4166b99e Fix incorrect brace placement 2014-12-08 11:43:33 +01:00
Gunnar Beutner ec99efbc28 Implement validator for the check_interval attribute
fixes #7591
2014-12-05 13:00:41 +01:00
Michael Friedrich cc8fe684fe Execute checks locally if command_endpoint == local endpoint
fixes #7863
2014-12-05 11:35:00 +01:00
Gunnar Beutner a5c206cbe2 Fix problem with macro arguments which are not separated by whitespace
fixes #7314
2014-12-01 15:53:23 +01:00
Gunnar Beutner 9dfa3d22d4 Implement support for arrays in command arguments
fixes #6709
2014-11-27 13:24:07 +01:00
Gunnar Beutner fddead5303 Fix some compiler warnings
fixes #7826
2014-11-24 18:25:08 +01:00
Gunnar Beutner f5766f9118 Refactor the stack frame handling for scripts
fixes #7748
2014-11-22 19:24:03 +01:00
Gunnar Beutner 307db672c1 Fix initialization bug for the Notification class
refs #7780
2014-11-22 16:43:39 +01:00
Gunnar Beutner 334e61037a Split DynamicObject::OnConfigLoaded into two separate events
refs #7780
2014-11-21 18:31:37 +01:00
Gunnar Beutner 0078e00c13 Refactor apply/object rules
fixes #7700
2014-11-20 21:29:50 +01:00
Gunnar Beutner 2d53e000c8 Refactor the config validator so that it doesn't require serialized objects
refs #7701
2014-11-20 13:28:21 +01:00
Michael Friedrich f73d69691b Make sure that notified users are stored in state file
refs #7579
2014-11-14 18:11:58 +01:00
Gunnar Beutner 7321e45abc Implement support for executing remote commands
fixes #7559
2014-11-13 14:54:55 +01:00
Gunnar Beutner b3aa2eb0c8 Fix validator for dependency filters
fixes #7650
2014-11-12 09:40:45 +01:00
Gunnar Beutner ec109b04dd Refactor the AST
refs #7622
2014-11-10 12:06:25 +01:00
Michael Friedrich 885e7704a2 Only notify users on recovery who have been notified on not-OK before
Also ensure that type NotificationRecovery always
passes the state filter (missing `OK` is totally fine).

Also fix that notification delays set the correct
next notification time to the begin time window.

fixes #7579
fixes #7623
fixes #6547
2014-11-09 19:47:24 +01:00
Gunnar Beutner 478f03b49a Replace boost::shared_ptr with boost::intrusive_ptr
refs #7622
2014-11-09 16:54:41 +01:00
Gunnar Beutner e1c95d4fa0 Improve config compiler's memory usage 2014-11-08 13:21:51 +01:00
Gunnar Beutner ade12dc27a Remove unused attributes 2014-11-07 21:43:00 +01:00
Gunnar Beutner 266b1754c7 Speed up type lookups
refs #7561
2014-11-07 12:39:32 +01:00
Gunnar Beutner 60114d4b5d Fix crash in CompatUtility::GetCheckableCommandArgs
refs #7599
2014-11-07 09:26:44 +01:00
Gunnar Beutner f69f7d61f2 Fix variable scope for object rules 2014-11-06 19:26:44 +01:00
Gunnar Beutner 18d317faf9 Fix crash in ApiEvents::CheckResultAPIHandler
fixes #7577
2014-11-05 09:58:43 +01:00
Michael Friedrich eeb6facdac Livestatus: Add 'cv_is_json' and encode CV arrays/dicts as json
refs #7560
2014-11-04 17:39:28 +01:00
Gunnar Beutner de080e4928 Fix incorrect field name
refs #7566
2014-11-04 15:24:57 +01:00
Gunnar Beutner a6f20c7a22 Implement support for arbitrarily complex indexers
fixes #7566
2014-11-04 15:20:33 +01:00
Gunnar Beutner a1c905bf62 Implement dictionary support for apply+for
fixes #7561
2014-11-04 11:02:10 +01:00
Gunnar Beutner 170c5a59e4 Implement typeof() function 2014-11-03 00:45:14 +01:00
Gunnar Beutner 46b149dd7d Implement support for formatting arrays in macro strings
fixes #7262
2014-11-02 07:35:43 +01:00
Gunnar Beutner 4677014b6d Implement support for arrays in custom variables
fixes #6544
2014-11-02 07:27:50 +01:00
Gunnar Beutner 57747ccdb1 Hosts/services should not have themselves as parents
fixes #7483
2014-10-29 10:47:26 +01:00
Gunnar Beutner 75b599c801 Set host/service variable in apply rules
fixes #7479
2014-10-29 10:09:40 +01:00
Gunnar Beutner 4cb3d5b1f0 Fix "assign where" for nested groups
fixes #7475
2014-10-28 18:58:22 +01:00
Gunnar Beutner 8fdb2835e5 Fix code style 2014-10-28 18:04:51 +01:00
Gunnar Beutner 29ad90a469 Fix performance data for API events
fixes #7473
2014-10-28 15:24:35 +01:00
Gunnar Beutner 2d6c3e8d5b Remove localhost virtual name thingie from apievents.cpp
refs #7467
2014-10-28 14:44:55 +01:00
Gunnar Beutner 0cff9314f9 Remove virtual name feature for agent hosts
fixes #7467
2014-10-28 14:05:17 +01:00
Gunnar Beutner 7559273359 Replace cJSON with YAJL
fixes #7452
2014-10-26 20:00:35 +01:00
Gunnar Beutner 315c84eb4a Fix problems with the serializer when using 'type' as an attribute
fixes #7372
2014-10-25 09:14:56 +02:00
Michael Friedrich e293092bdc CLI: Add basic agent command functionality (add, remove)
Prepare for set, setup, wizard, *list.
Change repository files to .repo, rename .peer to .settings

refs #7248
refs #7255
2014-10-21 13:23:46 +02:00
Gunnar Beutner 9368ff0e03 Update some more log messages 2014-10-20 10:09:57 +02:00
Gunnar Beutner 2d5e9514a5 Refactor logging code 2014-10-19 17:52:17 +02:00
Gunnar Beutner 739cb43289 Rename qstring.{cpp,hpp} to string.{cpp,hpp} 2014-10-19 14:52:07 +02:00
Gunnar Beutner b18f57a745 Remove logger_fwd.hpp 2014-10-19 14:50:39 +02:00
Gunnar Beutner 92896311f3 Implement support for C/C++ comments in the TI compiler
fixes #5018
2014-10-17 19:44:31 +02:00
Gunnar Beutner feeb550654 Rename AExpression to Expression 2014-10-16 17:44:06 +02:00
Gunnar Beutner d7fc37b12e Ignore (most) messages from unauthenticated clients
refs #7244
2014-10-16 13:04:04 +02:00
Gunnar Beutner 14ac7dd974 Replace spaces with tabs 2014-10-13 09:47:05 +02:00
Michael Friedrich 56327f8e35 Dependencies: Fix disable_notifications = true as default setting
fixes #7257
2014-10-11 19:33:03 +02:00
Gunnar Beutner 5962330b27 Improve error messages for apply rules
refs #6070
2014-10-10 11:39:03 +02:00
Gunnar Beutner 321809bea8 Fix null pointer deref in PluginUtility::FormatPerfdata
refs #7268
2014-09-17 16:07:12 +02:00
Gunnar Beutner 879684efcd Fix problems with PNP4Nagios
fixes #7268
2014-09-17 15:38:39 +02:00
Gunnar Beutner d84a3306d5 Make CompatUtility::GetCheckablePercentStateChange return a floating-point number 2014-09-08 09:58:53 +02:00
Gunnar Beutner bf2e3cb091 Don't parse perfdata if enable_perfdata is false
fixes #7032
2014-09-07 12:27:06 +02:00
Jean-Marcel Flach df3da5f1f3 Change log message for checking/sending notifications
fixes #6719
2014-09-03 13:23:19 +02:00
Gunnar Beutner 5e53b771fa Fix invalid exit code
fixes #7058
2014-09-02 13:28:06 +02:00
Gunnar Beutner 6f2ea6bc08 Fix build problems with Oracle Solaris Studio
refs #6896
2014-09-02 13:09:17 +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
Michael Friedrich 094e964660 Log warning message if 'set_if' argument cannot be evaluated properly
fixes #6968
2014-08-27 18:29:08 +02:00
Michael Friedrich 626a68e052 Add cluster api events for modified attributes support
refs #5219
2014-08-26 17:11:19 +02:00
Michael Friedrich aedef8af97 Modify OnVarsChanged event to pass values
refs #5219
2014-08-26 17:11:19 +02:00
Michael Friedrich 31c9406684 Add OnCheckPeriodChanged event
refs #5219
2014-08-26 17:11:19 +02:00
Michael Friedrich 0db1b5095d Add OnMaxCheckAttemptsChanged event
refs #5219
2014-08-26 17:11:19 +02:00
Michael Friedrich 552d0a7d18 Add On{Event,Check}CommandChanged event
refs #5219
2014-08-26 17:11:19 +02:00
Michael Friedrich 3899601744 Add On{Check,Retry}IntervalChanged event
refs #5219
2014-08-26 17:11:19 +02:00
Michael Friedrich d53fced691 Add OnEnableEventHandlerChanged event
refs #5219
2014-08-26 17:11:19 +02:00
Gunnar Beutner 913e35da9e Make sure that child zones accept commands from their parent zone
refs #6964
2014-08-22 13:51:27 +02:00
Michael Friedrich fc401516a8 Fix check results for localhost in HA cluster
fixes #6964
2014-08-22 13:01:06 +02:00
Gunnar Beutner 65bec9e904 Clean up some parts of the code 2014-08-17 17:57:41 +02:00
Gerd von Egidy a4b7984719 Add warning messages when performance data could not be parsed or not be sent to Graphite
refs #6550
2014-08-05 11:23:36 +02:00
Michael Friedrich 7b8dc1d97e Fix non-existing endpoint on ApiListener error
refs #6724
2014-08-04 17:23:41 +02:00
Michael Friedrich 8f2af1ae9a Fix permission problem with cluster messages
fixes #6810
2014-07-31 12:11:43 +02:00
Gunnar Beutner 2d6ed4c9be Make sure that event handlers are run for hard recoveries
fixes #6686
2014-07-22 14:16:22 +02:00
Gunnar Beutner 263f198992 Require command to be an array when the arguments attribute is used
fixes #6698
2014-07-16 13:01:55 +02:00
Gunnar Beutner ec92309349 Don't run event commands when hosts/services are OK
fixes #6686
2014-07-16 11:48:36 +02:00
Jason Young fcdd5d3ea5 Update behavior of "order" attribute for command arguments
fixes #6718

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2014-07-16 08:43:33 +02:00
Gunnar Beutner 7e83247508 Make "enable_notifications" a config attribute
fixes #6671
2014-07-10 10:59:22 +02:00
Gunnar Beutner f9075a0d0e Change default value for enable_notifications
fixes #6681
2014-07-09 15:23:43 +02:00
Gunnar Beutner a5936d8eab Don't send notifications for users who have enable_notifications = false
fixes #6671
2014-07-09 08:56:16 +02:00
Gunnar Beutner 8d3632caf8 Cache parent and child object for dependencies
fixes #6565
2014-06-24 11:46:53 +02:00
Michael Friedrich 1d048462a2 Use hostname if fqdn is empty for NodeName.
Refs #6393
2014-06-04 11:29:29 +02:00
Michael Friedrich 3ecec31af3 Change log message identifier for libicinga.
Refs #6346
2014-05-28 14:42:00 +02:00
Gunnar Beutner ecb4f9738e Use Utility::GetFQDN for the NodeName variable.
Refs #6312
2014-05-27 12:53:41 +02:00
Michael Friedrich d3171dc8b9 Fix removal of expired ScheduledDowntimes.
Fixes #6321
2014-05-27 09:44:32 +02:00
Michael Friedrich e070db65c8 Fix check statistics are mixing host/service checks.
Fixes #6313
2014-05-26 20:56:59 +02:00
Gunnar Beutner 632026cd9f Rename C++ header files.
Fixes #6291
2014-05-25 16:27:14 +02:00
Michael Friedrich 1436575095 Fix incorrect host state change logs.
Fixes #6290
2014-05-25 12:45:29 +02:00
Gunnar Beutner 820b1a340c Improve log messages.
Refs #6070
2014-05-23 19:07:44 +02:00
Gunnar Beutner 215f500b0e Fix compiler warnings.
Refs #5823
2014-05-23 11:05:25 +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 4fa42d6fd1 Remove authorities leftover. 2014-05-22 20:36:37 +02:00
Michael Friedrich 4296ec3987 Change the most chatting log messages to 'notice' severity.
Refs #6070
2014-05-22 16:07:57 +02:00
Gunnar Beutner fceeeba05e Fix compiler warnings.
Fixes #5823
2014-05-22 10:28:21 +02:00
Gunnar Beutner 99ce7981da Use the right CheckResult object for commands.
Fixes #6260
2014-05-22 09:11:16 +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
Gunnar Beutner 657b3c6a1a Fix deadlock in db_ido.
Fixes #6230
2014-05-19 10:56:50 +02:00
Gunnar Beutner f26b37e763 Execute apply/object rules in parallel.
Fixes #6223
2014-05-17 20:50:07 +02:00
Gunnar Beutner d5f5d7b0a2 Set parent_host_name in Dependency objects to the host's name for apply rules.
Fixes #6197
2014-05-17 12:58:35 +02:00
Gunnar Beutner d587c962ce Implement the config::Update message.
Refs #6191
2014-05-13 15:57:02 +02:00
Michael Friedrich aa97c3c670 Add command namespace {check_,event_,notification_} to legacy interfaces.
Fixes #5927
2014-05-12 16:18:03 +02:00
Gunnar Beutner 9c3e399188 Remove unnecessary includes.
Fixes #6189
2014-05-11 18:11:32 +02:00
Michael Friedrich ad77709c07 Rename host.total_* runtime macros to host.num_*.
Fixes #6188
2014-05-11 15:08: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 f5e568d3fb DB IDO: Add 'is_reachable' column to {host,service}status tables.
Refs #6094
2014-05-10 21:03:47 +02:00
Michael Friedrich 7730cc9b52 ModifiedAttributes for Enable* must call signals.
Refs #6151
Refs #5219
2014-05-10 17:24:39 +02:00
Michael Friedrich 07bd8943ce Add OnEnablePerfdataChanged signal.
Refs #6151
2014-05-10 16:24:58 +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 020ca0b2e9 Apply: Inherit zone from parent object.
Refs #6107
2014-05-09 10:36:26 +02:00
Gunnar Beutner 01941a9807 Don't log repository messages.
Refs #6107
2014-05-08 15:46:47 +02:00
Gunnar Beutner b36b03cac1 Remove zone check in ApiEvents::UpdateRepositoryAPIHandler.
Refs #6107
2014-05-08 15:27:16 +02:00
Gunnar Beutner 5678fe750c Fix incorrect function name.
Refs #6107
2014-05-08 13:15:08 +02:00
Gunnar Beutner e322cc5086 Implement aliasing support for "localhost".
Refs #6107
2014-05-08 13:08:34 +02:00
Gunnar Beutner 656d6ff13a Update scripts and example config.
Refs #6107
2014-05-08 12:17:21 +02:00
Gunnar Beutner 45270f1bb8 Refactor the agent and cluster components.
Refs #6107
2014-05-08 09:13:04 +02:00
Michael Friedrich cf2bdecfeb Don't allow "managed" downtimes to be deleted by users.
Fixes #5980
2014-05-04 16:57:11 +02:00
Michael Friedrich 4f44ef13f1 Fix string conversion in CompatUtility::GetCheckableCommandArgs().
Refs #5926
2014-05-04 16:49:24 +02:00
Michael Friedrich ddfccf3188 Add debug log entries for dependencies.
Refs #5872
2014-05-03 21:04:56 +02:00
Michael Friedrich 0691d73af9 Rename Dependency 'state_filter' to 'states'.
Fixes #6113
2014-05-03 19:53:16 +02:00
Michael Friedrich 5aa578c4e4 Implement CompatUtility::GetCheckableCommandArgs() for DB IDO, Livestatus, StatusDataWriter.
Fixes #5926
2014-05-03 03:18:37 +02:00
Michael Friedrich 74be8cd2d0 Implement summary macros e.g. $icinga.num_services_critical$.
Additional $icinga.uptime$ macro.

Fixes #2742
2014-05-03 02:08:36 +02:00
Michael Friedrich dbe6a20fd2 Fix exception for Notification objects without checkable object.
Fixes #6111
2014-05-02 19:43:49 +02:00
Michael Friedrich 07c0c9e234 Fix state_filter attribute validation for Depdency objects.
Fixes #6110
2014-05-02 19:37:55 +02:00