Commit Graph

400 Commits

Author SHA1 Message Date
Gunnar Beutner ac155d1dda Apply clang-tidy fix 'modernize-redundant-void-arg' 2018-01-04 12:24:57 +01:00
Gunnar Beutner 41f0fbfd30 Add the final keyword to methods 2018-01-04 05:45:40 +00:00
Gunnar Beutner efe99a3e5e Add the final keyword to classes 2018-01-04 05:20:20 +00:00
Gunnar Beutner 75e2473616 Clean up source lists in the CMakeLists.txt files 2018-01-03 11:47:46 +01:00
Gunnar Beutner 90496b5456 Build libraries as static libraries 2018-01-02 23:29:48 +01:00
Michael Insel 158ae2188e Change copyright header for 2018 2018-01-02 12:08:55 +01:00
Jean Flach 2636e6a77a Whitespace fix
What does this change?
* Remove use of spaces for formatting
These could be found by using `grep -r -l -P '^\t+ +[^*]'
* Removal of training whitespaces
* A few lines longer than 120 chars
2017-12-20 14:53:52 +01:00
Gunnar Beutner 1ad83886ac Replace a few more NULLs with nullptr 2017-12-14 15:37:20 +01:00
Gunnar Beutner 42744fde5b Remove extraneous whitespace 2017-12-14 08:50:09 +01:00
Gunnar Beutner 75def4b074
Merge pull request #5753 from Icinga/fix/ringbuffer-does-not-get-updated-if-nothing-is-written-5750
Fix that RingBuffer does not get updated and add metrics about communication between endpoints
2017-12-12 11:32:18 +01:00
Michael Friedrich a238613fdc
Merge pull request #5825 from Icinga/feature/boost-assign
Replace boost::assign::list_of with initializer lists
2017-11-30 21:20:46 +01:00
Gunnar Beutner 83f17b5bfa Replace boost::assign::list_of with initializer lists 2017-11-30 18:09:38 +01:00
Gunnar Beutner 325e4a2fb9 Use nullptr instead of <Type>::Ptr() 2017-11-30 17:47:09 +01:00
Gunnar Beutner 3c60fbf75d Use std::vector::emplace_back instead of std::vector::push_back 2017-11-30 17:47:09 +01:00
Gunnar Beutner 858873b940 Replace boost::bind/boost::function with std::bind/std::function 2017-11-27 15:15:11 +01:00
Noah Hilverling 2acaccd028 Fix that RingBuffer does not get updated if nothing is written
refs #5750
2017-11-13 16:17:59 +01:00
Michael Friedrich 42b1e7ce79 Use the entry_time for icinga_comments updates
This follows all other queries in their where condition
using entry_time for comments/downtimes.
2017-11-07 16:37:12 +01:00
Michael Friedrich e0e7f9ae6b DB IDO: Force users to upgrade the schema to avoid workaround fixes/missing indexes 2017-11-07 16:37:12 +01:00
Jean Flach e83ddbd8b2 Remove unnecessary keys from where clauses 2017-11-07 16:37:12 +01:00
Jean Flach 1632415370 Fix commenthistory
refs #5492
2017-11-07 16:37:12 +01:00
Jean Flach 30be02bcae Alter DowntimeRemoval behaviour
This adds an additional index to the downtimehistory and updates the
dbevents in a way that it uses that index
2017-11-07 16:37:12 +01:00
Jean Flach a21ffd6fe4 Fix flapping
Re-implement flapping following the 'old way' of just observing the last
20 stage changes.

refs #4982
2017-10-24 15:54:05 +02:00
Michael Friedrich 6061d56a7c Fix unique constraint matching for UPDATE downtime/comment runtime tables in DB IDO
fixes #5623
fixes #5603
2017-09-29 16:12:38 +02:00
Jean Flach 1b54772b85 Fix where clauses for downtime/comment DB IDO queries using a non-matching legacy id before
fixes #5458 #5492
2017-09-20 12:13:14 +02:00
Michael Friedrich f6691b4936 Fix config validation for DB IDO categories 'DbCatEverything'
refs #5238
2017-08-09 16:31:03 +02:00
Michael Friedrich 3201d92fbd DB IDO: Fix host's unreachable state in history tables
fixes #5405
2017-08-07 11:10:02 +02:00
Gunnar Beutner 7ca485f63c Improve validation for attributes which must not be 'null' 2017-05-30 14:47:28 +02:00
Michael Friedrich 3a5d4f3c8d DB IDO: Remove obsolete logger, now implemented in WorkQueue class
refs #5280
refs #5133
2017-05-24 16:52:15 +02:00
Michael Friedrich 79dcb789c2 Move PerfdataValue() class into base library
This is required for libremote and ApiListener stats in #5133
2017-05-15 16:32:29 +02:00
Rune Darrud 273ca6a2cc Fix persistent comments for Acknowledgements
fixes #4818

Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-05-10 17:10:22 +02:00
Michael Friedrich e0bfe0a5d0 Remove deprecated "DbCat1 | DbCat2" notation for DB IDO categories
This allows for a specific config validation function.
2017-05-10 14:32:53 +02:00
Michael Friedrich 21ce07046c DB IDO: Disable external command history by default
That's not used in Icinga Web 2 and might lock the feature
on cleanup.

refs #4788
2017-04-28 09:37:27 +02:00
Gunnar Beutner 5d45c74be3 Improve function metadata by adding arguments
fixes #5087
2017-03-27 14:43:19 +02:00
Michael Friedrich 06434b3e59 IDO: Fix where condition for downtime history updates
fixes #5080
2017-03-20 13:19:37 +01:00
Michael Friedrich 0dfe571669 DB IDO: Fix actual_end_time update for non-triggered flexible downtimes
refs #5033
2017-02-24 15:29:39 +01:00
Michael Friedrich e5f5284838 Add logging for started/stopped features
fixes #3557
2017-02-08 15:40:27 +01:00
Michael Friedrich b7caf0820d Ensure that *.icinga.com is used everywhere
fixes #13897
fixes #13277
2017-01-10 17:19:12 +01:00
Michael Friedrich 1679488e8e DB IDO: Bump schema version to 1.14.2
fixes #10502
fixes #13221
2016-11-18 11:39:14 +01:00
Gunnar Beutner 4876a78ab5 Remove unnecessary imports from unit test config
refs #12575
2016-08-28 10:41:46 +02:00
Gunnar Beutner b5b09216c6 Use lambda functions for INITIALIZE_ONCE
fixes #12562
2016-08-27 09:48:36 +02:00
Gunnar Beutner 5058c5d75b Use 'auto' for iterator declarations
fixes #12561
2016-08-27 08:37:19 +02:00
Gunnar Beutner 30762e5330 Set versions for all internal libraries
fixes #12552
2016-08-25 17:56:18 +02:00
Gunnar Beutner 225bb8029a Fix incorrect hash size for User objects
fixes #12533
2016-08-25 07:37:41 +02:00
Gunnar Beutner 288413f046 Replace BOOST_FOREACH with range-based for loops
fixes #12538
2016-08-25 06:46:17 +02:00
Gunnar Beutner 78c249b96b Fix compiler warnings in DB IDO
refs #12534
2016-08-25 05:00:46 +02:00
Gunnar Beutner 429d11daa8 Fix compiler warnings
fixes #12534
2016-08-24 20:33:34 +02:00
Gunnar Beutner ae1ab5f865 Implement unit tests for state changes
fixes #12530
2016-08-24 19:45:52 +02:00
Gunnar Beutner c981426cfb Fix missing IDO updates for groups
fixes #12527
2016-08-24 12:22:09 +02:00
Gunnar Beutner 43a4acd5a2 Remove deprecated functions
fixes #12507
2016-08-23 15:01:40 +02:00
Gunnar Beutner 62a6d5667d Fix: IDO marks objects as inactive on shutdown
fixes #12418
2016-08-17 19:24:22 +02:00
Gunnar Beutner 4c54cddec8 Fix problem with duplicate INSERTs for the same key columns
fixes #12461
fixes #12458
2016-08-17 13:35:10 +02:00
Gunnar Beutner bb7fe3334a Fix incorrect customvariablestatus query
fixes #12459
2016-08-17 09:20:05 +02:00
Gunnar Beutner 2d551db9d8 Remove the ConfigTypeIterator class
refs #12448
2016-08-16 13:26:24 +02:00
Gunnar Beutner b7a1b58069 Improve performance for type lookups
fixes #12448
2016-08-16 11:02:33 +02:00
Gunnar Beutner 2e8d3d3934 Implement support for incremental IDO updates
fixes #12435
2016-08-15 14:43:11 +02:00
Gunnar Beutner ebaf239d3b Replace GetType()->GetName() calls with GetReflectionType()->GetName()
fixes #12438
2016-08-15 14:42:03 +02:00
Gunnar Beutner 980ba42825 Remove unused code in the IDO classes
fixes #12434
2016-08-14 22:22:18 +02:00
Gunnar Beutner 005e0f532f Improve HA support for the IDO check task
fixes #12430
2016-08-14 20:17:14 +02:00
Gunnar Beutner c6e5f3dcb8 Fix $ido_name$ macro when using the IDO check type with command_endpoint
fixes #12428
2016-08-14 19:30:20 +02:00
Gunnar Beutner fda032c0c4 Fix incorrect return values for some of the CompatUtility methods
fixes #12425
2016-08-14 17:06:50 +02:00
Gunnar Beutner ed53366490 Avoid duplicate IDO config updates at startup
fixes #12417
2016-08-13 23:31:22 +02:00
Gunnar Beutner 31f816562f Add namespace qualifier for some assert() calls
refs #12408
2016-08-12 13:44:51 +02:00
Gunnar Beutner 24431b3dab Register deprecated methods in the 'Deprecated' namespace
refs #12408
2016-08-12 13:42:22 +02:00
Michael Friedrich d84872f075 DB IDO: Really do not clear downtimes on checkable upsert
refs #12258
refs #12288
2016-08-11 17:43:39 +02:00
Michael Friedrich 41094489b6 DB IDO: Fixed downtime start does not update actual_start_time
fixes #12401
2016-08-11 12:10:27 +02:00
Gunnar Beutner e09fb88cae Make sure functions are registered with the correct prefix
refs #12393
2016-08-10 16:33:17 +02:00
Gunnar Beutner dc06209e4a Move internal script functions into the 'Internal' namespace
fixes #12338
2016-08-10 06:55:44 +02:00
Michael Friedrich 00f05a8e7e DB IDO: Do not try to delete downtimes when using the session_token
Missed it after modifying the comments.

refs #12258
refs #12288
2016-08-03 16:15:22 +02:00
Michael Friedrich cd5c9366cf DB IDO: Use upsert and session token for comment/downtime updates
refs #12258
fixes #12288
2016-08-02 14:37:16 +02:00
Gunnar Beutner 0d02b01c02 Use application start-up time for the IDO session token
fixes #12250
2016-07-29 08:40:10 +02:00
Michael Friedrich dcfda534b1 Deprecation warning should include object type and name
fixes #12240
2016-07-28 17:43:50 +02:00
Michael Friedrich ce3d7ab973 DB IDO: Do not clear {host,service,contact}group_members tables on restart
fixes #12210
2016-07-25 17:10:27 +02:00
Michael Friedrich 743a726752 state_filters_real shouldn't be visible in the API
fixes #12171
2016-07-19 20:09:39 +02:00
Gunnar Beutner 959e2501aa Avoid duplicate entries in the icinga_objects table for commands
refs #12147
2016-07-15 09:40:39 +02:00
Gunnar Beutner ea57f0045e Fix deadlock in DbObject::SendVars{Config,Status}Update
fixes #12127
fixes #12085
2016-07-12 11:44:36 +02:00
Michael Friedrich 72facb1be0 DB IDO: Log a deprecation warning for categories
refs #12024
2016-07-07 15:44:31 +02:00
Michael Friedrich 124c80beab Require DB IDO v1.14.1 for 2.5.0
fixes #11967
2016-07-07 12:27:56 +02:00
Michael Friedrich f87f20e9ec DB IDO: Do not populate logentries table by default
Not required by Icinga Web 2 and therefore obsolete as default.

fixes #12106
2016-07-06 11:52:20 +02:00
Michael Friedrich 091274e417 Change DB IDO 'categories' attribute to Array notation
Example:
    categories = [ "DbCatProgramStatus", "DbCatState" ]

The old method with constants and OR is still supported but deprecated.

refs #11445
fixes #12024
2016-06-23 14:55:01 +02:00
Michael Friedrich 14fdb794e2 Allow strings in state and type filters (config, API)
fixes #11445
2016-06-23 14:52:45 +02:00
Michael Friedrich 409a385590 DB IDO: Ensure that delete queries for comments/downtimes are matching the index
fixes #11993
2016-06-20 17:38:01 +02:00
Michael Friedrich f4241ba185 DB IDO: Enhance ido check with schema info
fixes #11968
2016-06-17 12:43:05 +02:00
Michael Friedrich 6a46706668 DB IDO: Update schema version to 1.14.1
The least supported version is still 1.14.0
with the current changes.

refs #10069
refs #11967
2016-06-17 11:23:30 +02:00
Michael Friedrich 0ce41399e0 DB IDO: Ensure to delete outdated comments/downtimes for host/service objects
fixes #11688
2016-06-03 14:40:37 +02:00
Michael Friedrich 90f102abf3 Ensure that program status updates are immediately updated in DB IDO
fixes #11767
2016-05-11 14:03:40 +02:00
Michael Friedrich ba82d2eb20 Move CalculateExecutionTime and CalculateLatency into the CheckResult class
fixes #11751
2016-05-10 12:16:49 +02:00
Michael Friedrich 23ab6cf78b Fix: Expired downtimes are not removed
fixes #11711
2016-05-02 15:32:46 +02:00
Michael Friedrich 83e0bcddce IDO: Ensure that the notification insert id is passed to contactnotification inserts
We cannot add the notification insert id directly
to the following contactnotifications queries. Instead
we need to pass a DbValue reference which gets set after
the notification insert id is calculated.
The contactnotifications insert queries are fired as query
group calling CanExecuteQuery() and FieldToEscapedString().
If the notification id does not exist yet, the queries are
moved to the end of the queue.
Once the contactnotifications queries are fired the DbValue
reference is destroyed.

This patch also removes the old notification insert id cache
which was broken in many ways.

fixes #11387
2016-03-29 15:12:24 +02:00
Michael Friedrich 98e1d70dab DB IDO: Fix that downtime is not in effect after restart
fixes #10843
2016-03-23 13:42:00 +01:00
Michael Friedrich 67b7df3189 DB IDO: Fix user notification type filters
fixes #10766
2016-03-15 14:50:43 +01:00
Michael Friedrich 5b30c9ed2c DB IDO: PArtially revert change for *group_members
Otherwise the index breaks.

refs #11103
2016-02-22 20:23:18 +01:00
Michael Friedrich 99dbb249de DB IDO: Fix problem with hostgroup_members cleanup
fixes #11103
2016-02-08 11:05:27 +01:00
Michael Friedrich 4049cc0b9a Fix: Deleting an object via API does not disable it in DB IDO
fixes #11065
2016-02-05 12:37:00 +01:00
Gunnar Beutner f234bdd321 Fix crash in IdoCheckTask::ScriptFunc
refs #11014
2016-02-02 12:03:12 +01:00
Michael Friedrich c2cf614d62 Remove debug output, part 2
refs #11014
2016-01-29 14:09:50 +01:00
Michael Friedrich b960850ce3 DB IDO: Only update 'next_check' column when manually scheduling a check
Otherwise the changes from #7287 already take care of setting
the proper next check time from inside ProcessCheckResult().

There is no need to use the generic OnNextCheckChanged signal
but instead we're using a new one, locally just for DB IDO.

fixes #11019
2016-01-22 18:42:15 +01:00
Gunnar Beutner 599929b0f6 Update copyright headers for 2016 2016-01-12 08:29:59 +01:00
Gunnar Beutner 1bf27011df Fix incorrect is_active queries
fixes #10891
2016-01-11 14:23:16 +01:00
Michael Friedrich 9c8fdf06cf Fix crash in DbEvents::RemoveCommentInternal()
Missing multiple queries as implemented with RemoveDowntimeInternal().

fixes #10883
2015-12-18 10:52:04 +01:00
Gunnar Beutner a393c8213e Don't log IDO statistics when we're not connected
refs #10860
2015-12-17 12:09:42 +01:00