Commit Graph

3122 Commits

Author SHA1 Message Date
Gunnar Beutner d474877add Remove debug output
refs #11014
2016-02-23 09:31:52 +01:00
Gunnar Beutner 579d0049f3 Avoid unnecessary wake-ups in SocketEvents::ChangeEvents (part 2)
refs #11014
2016-02-23 09:31:52 +01:00
Gunnar Beutner 77abfed873 Avoid updating the file descriptor list for poll() unless we really need to
refs #11014
2016-02-23 09:31:52 +01:00
Gunnar Beutner 85c962a587 Decode cluster messages in the WorkQueue threads
refs #11014
2016-02-23 09:31:52 +01:00
Gunnar Beutner d1b705613d Use multiple WorkQueues to process cluster messages
refs #11014
2016-02-23 09:31:52 +01:00
Gunnar Beutner 864cdee8d9 Improve performance for ApiListener::RelayMessageOne
refs #11014
2016-02-23 09:31:52 +01:00
Gunnar Beutner f9efc2ffe7 Improve the performance for ApiListener::SyncRelayMessage (part 2)
refs #11014
2016-02-23 09:31:52 +01:00
Gunnar Beutner 0d5592a615 Improve performance for ApiListener::SyncRelayMessage
refs #11014
2016-02-23 09:31:52 +01:00
Gunnar Beutner e7a1c83004 Ignore the .timestamp file when determining whether the zone config has changed (second attempt)
refs #11014
2016-02-23 09:31:51 +01:00
Gunnar Beutner 12b5e332e4 Ignore the .timestamp file when determining whether the zone config has changed
refs #11014
2016-02-23 09:31:51 +01:00
Gunnar Beutner b7a152ef48 Make sure the updated config sync works with old versions of Icinga 2
refs #11014
2016-02-23 09:31:51 +01:00
Gunnar Beutner c6be1c90aa Make sure the .timestamp file is synced for config updates
refs #11014
2016-02-23 09:31:51 +01:00
Michael Friedrich 8859242c5b Fix cluster config timestamp again
refs #11014
2016-02-23 09:31:51 +01:00
Michael Friedrich f7df3beb38 Fix cluster config sync timestamp
refs #11014
2016-02-23 09:31:51 +01:00
Gunnar Beutner fbc638e0b8 Make sure we only have one connection per satellite
refs #11014
2016-02-23 09:31:51 +01:00
Gunnar Beutner 5c23beb6a9 Use MkDirP instead of MkDir when syncing zone configs
fixes #10932
2016-02-23 09:28:37 +01:00
Michael Friedrich 91e1e9d93e Use a work queue for replaying the cluster log
refs #10713
2016-02-23 09:25:48 +01:00
Gunnar Beutner 93834623a0 Fix incorrect return value for ApiListener::GetInstance
refs #10711
2016-02-23 09:25:35 +01:00
Michael Friedrich eda28b219d Improve performance for Zone::CanAccessObject
fixes #10711
2016-02-23 09:25:27 +01:00
Michael Friedrich 9dc37c58ea 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-02-23 09:25:05 +01:00
Michael Friedrich 9ca7245c18 Properly set the next check time for active and passive checks
fixes #7287
refs #11019
2016-02-23 09:24:57 +01:00
Michael Friedrich 0516cb58e2 ExternalCommandListener: Fix crash when reading from socket
refs #10700
2016-02-23 09:23:39 +01:00
Michael Friedrich ec9caa4517 Fix: Modified attributes do not work for the IcingaApplication object w/ external commands
fixes #10974
2016-02-23 09:23:25 +01:00
Michael Friedrich f5fda9ebf0 Raise a config error for "Checkable" objects in global zones
fixes #10807
2016-02-23 09:20:39 +01:00
Gunnar Beutner 11dfcd76a3 Fix incorrect is_active queries
fixes #10891
2016-02-23 09:18:24 +01:00
Michael Friedrich 9de34e09b1 Fix that "repository add" writes invalid "type" attribute
fixes #10867
2016-02-23 09:16:47 +01:00
Michael Friedrich 9424404b9e Fix crash in DbEvents::RemoveCommentInternal()
Missing multiple queries as implemented with RemoveDowntimeInternal().

fixes #10883
2016-02-23 09:16:35 +01:00
Michael Friedrich 925161d9b4 Fix config validation for templates used as object reference name
fixes #10830
2016-02-23 09:16:22 +01:00
Michael Friedrich 99efc7be2c Fix failed reload via systemd
fixes #10226
2016-02-23 09:16:01 +01:00
Michael Friedrich 187a61dfaa Fix duplicate key violation for downtimes
refs #10829
2016-02-23 09:15:48 +01:00
Gunnar Beutner 6a8f97f6ef Fix crash in Ido*Connection::InternalExecuteMultipleQueries
fixes #10862
2016-02-23 09:15:42 +01:00
Gunnar Beutner 30b13ba2d6 Don't log IDO statistics when we're not connected
refs #10860
2016-02-23 09:15:23 +01:00
Gunnar Beutner 30c445a5ee Implement additional query statistics for DB IDO
fixes #10860
2016-02-23 09:15:16 +01:00
Michael Friedrich 2b86039435 DB IDO: Add a log message when the connection handling is completed
fixes #10857
2016-02-23 09:14:39 +01:00
Michael Friedrich c0da6cbb6a Implement support for re-ordering groups of IDO queries
fixes #10855
2016-02-23 09:14:04 +01:00
Michael Friedrich 634b3d7bc4 Avoid duplicate config and status updates on startup
fixes #10765
2016-02-23 09:13:37 +01:00
Michael Friedrich e1ac078d4b Fix DB IDO events for next_check, etc. updates
refs #10817
2016-02-23 09:13:21 +01:00
Michael Friedrich 36c170d5dc Fix invalid notification_id in DB IDO query
fixes #8976
2016-02-23 09:13:02 +01:00
Michael Friedrich 2f8d416da0 Change log level for authoritative zone config includes
LogWarning will make users wonder about a problem each time
Icinga 2 starts.

refs #10819
2016-02-23 09:09:55 +01:00
Michael Friedrich 48fe703017 Fix cluster config sync for (non-)authoritative configs
Details: https://dev.icinga.org/issues/10819#note-39

refs #10819
2016-02-23 09:09:55 +01:00
Michael Friedrich f0a1872e3b Add more debug logging for api package config sync
refs #10819
2016-02-23 09:09:55 +01:00
Michael Friedrich 1f5a216a01 Fix that cluster config sync ignores zones.d directory from API config packages
fixes #10819
2016-02-23 09:09:55 +01:00
Michael Friedrich db0e8c676e Fix that relative paths do not work with include_zones
fixes #10828
2016-02-23 09:09:20 +01:00
Michael Friedrich 2bc1d32caa Fix priority ordering for IDO queries
fixes #10829
refs #8714
2016-02-23 09:09:06 +01:00
Gunnar Beutner 02184ad58f Clean up the FinishAsyncQueries code a bit
refs #8714
2016-02-23 09:09:06 +01:00
Gunnar Beutner a40fc653ef Implement support for priorities in the WorkQueue class
fixes #8714
2016-02-23 09:09:06 +01:00
Gunnar Beutner 2e930826e3 Make sure that all strings in the IDO database are UTF8-encoded
fixes #10554
2016-02-23 09:08:32 +01:00
Gunnar Beutner c544c686a8 Update copyright headers for 2016 2016-01-12 08:31:24 +01:00
Michael Friedrich e623394af1 Use NodeName instead of GetFQDN() in embedded checks
fixes #10818
2015-12-10 15:28:48 +01:00
Gunnar Beutner 8b74fc91a9 Remove the local zone name question in node wizard
fixes #10724
2015-12-08 15:48:05 +01:00
Jean Flach 2eac563c98 Update default port behaviour in node wizard
fixes #10728
2015-12-08 15:47:00 +01:00
Michael Friedrich 893f0b9853 Fix missing num_hosts_pending in /v1/status/CIB
fixes #10736
2015-12-08 15:45:22 +01:00
Gunnar Beutner f3ea00b189 Turn '=>' lambda expressions into side-effect-free statements
fixes #10760
2015-12-08 15:31:09 +01:00
Michael Friedrich 833e28025a Fix crash on startup with incorrect directory permissions
fixes #10739
2015-12-08 15:28:51 +01:00
Michael Friedrich 383a6a1334 Fix missing path in mkdir() exception
fixes #10748
2015-12-04 10:17:40 +01:00
Michael Kraus 1ce8e64ab2 Fix problem with livestatus filter "type"
There was a regression in changeset 3d4e48aa12 for issue 10449 that
made the "class" filter work, but broke the "type" filter. Reverting some changes seems to do the
trick.

refs #10449

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2015-12-02 11:18:05 +01:00
Michael Friedrich bcb5eefc8c Livestatus: Fix "class" filter for log table
fixes #10449
2015-11-26 19:18:05 +01:00
Jean Flach 4e05a4ca7f Fix return value in PkiUtility
refs #10632
2015-11-26 11:19:33 +01:00
Gunnar Beutner 141f255d5b Build fix for Windows
refs #10693
2015-11-26 11:19:33 +01:00
Gunnar Beutner b14a48d519 Implement Platform* global variables
refs #10693
2015-11-26 11:19:32 +01:00
Jean Flach c55f97a0e5 Update node wizard
The wizard now displays basic information on the to-be-imported master
certificate and asks the user for confirmation.

fixes #10632
2015-11-26 10:29:43 +01:00
Gunnar Beutner 05af1cba0d Use the NodeName constant in 'api setup'
fixes #10641
2015-11-26 08:12:13 +01:00
Gunnar Beutner bf97d7cc57 Hide the --master_zone option in --help because it's not currently implemented
fixes #10720
2015-11-25 19:00:25 +01:00
Gunnar Beutner 93c5fc5b82 Use the ZoneName and NodeName constants for 'node setup' and 'node wizard'
refs #10716
2015-11-25 17:44:45 +01:00
Jean Flach 65018fb75b Fix master zone name
fixes #10716
2015-11-25 17:44:31 +01:00
Gunnar Beutner 21cb5690f5 Fix crash in ConfigItem::ActivateItems
refs #10643
2015-11-25 13:23:04 +01:00
Michael Friedrich d3aae81323 Fix crash in ConfigItem::ActivateItems
refs #10643
2015-11-25 13:22:55 +01:00
Gunnar Beutner 33fbd6c877 Fix race condition in the ConfigItem class
fixes #10643
2015-11-25 13:22:32 +01:00
Gunnar Beutner d96ee6b417 Build fix for systems where strsignal() returns a const char * 2015-11-24 14:45:51 +01:00
Gunnar Beutner f2be32eda1 Build fix for SLES 11 (with -std=c++11)
fixes #10615
2015-11-21 04:46:57 +01:00
Gunnar Beutner 24b7089964 Fix: CLI command 'repository add' doesn't work
fixes #10690
2015-11-20 15:53:56 +01:00
Michael Friedrich aaa9715a67 Fix pki new-ca not checking for existing ca files
fixes #10677
2015-11-19 17:11:21 +01:00
Gunnar Beutner b75aa74cbd Fix crash in Process::IOThreadProc when building Icinga 2 with GCC 4.7.2
fixes #10648
2015-11-17 22:08:05 +01:00
Gunnar Beutner 7d8c8aac5a Use notify_one in WorkQueue::Enqueue
fixes #10639
2015-11-16 08:13:55 +01:00
Gunnar Beutner eb67f3779f Fix incorrect error messages on Windows
fixes #10637
2015-11-15 21:18:27 +01:00
Gunnar Beutner 79b15efd09 Allow null values for constructor calls
fixes #10628
2015-11-14 05:36:48 +01:00
Michael Friedrich 6518f78af0 Fix attribute validation for PUT queries
fixes #10601
2015-11-12 10:13:46 +01:00
Michael Friedrich 545607be9f Fix that custom attribute with function value cannot be cloned
fixes #10583
2015-11-11 14:18:25 +01:00
Michael Friedrich 284a10150b Fix attributes names for joins; update documentation
refs #10551
fixes #10576
2015-11-11 13:50:47 +01:00
Michael Friedrich 0285bcefb5 DB IDO: Fix group membership updates for runtime created objects
fixes #10604
2015-11-11 12:31:52 +01:00
Gunnar Beutner b2364884d8 Check whether config file exists before trying to create object
fixes #10602
2015-11-11 10:25:18 +01:00
Gunnar Beutner e3c75faabc Implement support for recursive object locks
fixes #10596
2015-11-11 10:21:30 +01:00
Gunnar Beutner 356c4cc170 Don't allow users to set internal attributes via PUT
fixes #10601
2015-11-11 08:41:49 +01:00
Gunnar Beutner 2d2e7ecdb2 Improve location information for exceptions
fixes #10568
2015-11-10 17:05:40 +01:00
Michael Friedrich f5da37b7df Remove obsolete checks from API actions
refs #10561
2015-11-10 16:13:14 +01:00
Gunnar Beutner 1667fbaf31 Build fix for Windows 2015-11-10 13:09:34 +01:00
Gunnar Beutner 0a6505ce2d Use poll() for the command pipe fd
refs #10410
2015-11-10 11:41:21 +01:00
Gunnar Beutner 2cc33b7fb3 Don't validate arguments/parameters that aren't strings
refs #10539
2015-11-10 07:59:10 +01:00
Michael Friedrich 36cea68c1a Add the HTTP request body to debug log 2015-11-09 22:48:56 +01:00
Gunnar Beutner 9ea51aa86e Use non-blocking open() for the command pipe
fixes #10410
2015-11-09 20:39:26 +01:00
Michael Friedrich bc05389a79 Improve error handling for unlinking files
refs #10578
2015-11-09 13:35:51 +01:00
Gunnar Beutner 25c490ecb6 Remove config file when object creation fails
fixes #10578
2015-11-09 12:33:37 +01:00
Gunnar Beutner c44701068f Fix: Detailed error message is missing when object creation via API fails
fixes #10580
2015-11-09 12:30:30 +01:00
Gunnar Beutner 679983dd9a Rename $quit to $continue
refs #10559
2015-11-09 11:08:35 +01:00
Gunnar Beutner fa034a96f8 Improve error message for 404s
refs #9447
2015-11-09 10:48:24 +01:00
Gunnar Beutner 5a74f69819 Fix memory leak for JSON-RPC/HTTP connections
fixes #10517
2015-11-09 10:22:52 +01:00
Gunnar Beutner 4bb9beda19 Don't send cluster config messages for objects with version 0
refs #9927
2015-11-08 21:22:06 +01:00
Gunnar Beutner f8399e45db Remove unused variable
refs #10563
2015-11-08 17:53:22 +01:00
Michael Friedrich 1d2606cbfe Add filter targets for remove-{comment,downtime} actions
Drop remove-all-{comments,downtimes}. This is provided
by using host and service filters.

fixes #10561
2015-11-08 14:22:10 +01:00
Michael Friedrich b7f923dd01 'api setup' must not override existing certificate and api-users.conf file
fixes #10560
2015-11-08 14:19:06 +01:00
Michael Friedrich e6159ca86a Fix: /v1/console should only use a single permission
fixes #10563
2015-11-08 14:17:13 +01:00
Michael Friedrich 1c8531fc0d Fix: 'api setup' should create a user even when api feature is already enabled
fixes #10560
2015-11-08 14:06:36 +01:00
Gunnar Beutner 9830ea6ea7 Remove duplicate text in an error message
refs #10559
2015-11-07 10:31:09 +01:00
Gunnar Beutner 2c135d82c1 Fix incorrect variable names for joined objects in filters
fixes #10558
2015-11-07 10:28:34 +01:00
Gunnar Beutner dcfc171c61 Improve messages for the debugger
refs #10559
2015-11-07 10:22:55 +01:00
Gunnar Beutner a6c411c6cb Fix: Autocompletion doesn't work in the debugger
fixes #10559
2015-11-07 10:17:55 +01:00
Gunnar Beutner b89a7dbdb6 Rename 'object' to 'obj' in filters
refs #9077
2015-11-07 10:01:07 +01:00
Gunnar Beutner 64376dafeb Make the main object available as 'object' in filter expressions
refs #9077
2015-11-07 09:59:00 +01:00
Gunnar Beutner 3a695742e3 Improve error handling when user specifies invalid method for /v1/console
refs #10387
2015-11-07 09:59:00 +01:00
Gunnar Beutner d78a081727 Improve performance data for DB IDO
refs #9079
2015-11-07 07:51:41 +01:00
Michael Friedrich 64c936d387 API Actions: Remove -by-id from actions and require names for comments and downtimes
The documentation is updated as well. Furthermore actions provide
detailed error information in case of an exception.
Includes DB IDO schema updates.

fixes #10512
2015-11-06 17:06:12 +01:00
Gunnar Beutner a177e5e05a Change output format for object queries
fixes #10551
2015-11-06 14:45:38 +01:00
Michael Friedrich 3b902b51e2 Change session_token to integer timestamp
fixes #10529
2015-11-05 18:05:30 +01:00
Michael Friedrich dda05f0322 Fix: Async mysql queries aren't logged in the debug log
fixes #10540
2015-11-05 15:43:09 +01:00
Michael Friedrich 7e5f5544fc Require 'Accept' header for API requests (except for GET)
fixes #10548
2015-11-05 15:18:53 +01:00
Gunnar Beutner 7621870278 Implement a debugger for Icinga scripts
fixes #10547
2015-11-05 14:29:45 +01:00
Michael Friedrich 18e162da5e Build fix
refs #10545
2015-11-05 11:55:07 +01:00
Gunnar Beutner 645f054980 Fix invalid field IDs in Type::GetField
refs #10387
2015-11-05 10:58:09 +01:00
Gunnar Beutner 783b58536f Fix 'Invalid field ID' error when serializing Type objects
refs #10387
2015-11-05 10:52:25 +01:00
Gunnar Beutner 701961b73b Fix the 'type' attribute for the Object class
refs #10387
2015-11-05 10:29:02 +01:00
Gunnar Beutner a3fd33f8a1 Fix race condition in ConfigWriter::EmitIdentifier
fixes #10538
2015-11-04 19:05:47 +01:00
Gunnar Beutner 09b2b054f5 Don't validate custom attributes that aren't strings
fixes #10539
2015-11-04 19:04:33 +01:00
Gunnar Beutner fe1c5e9507 Improve formatting for arrays
refs #10527
2015-11-04 17:06:33 +01:00
Gunnar Beutner 7378964f31 Fix indentation for nested dictionaries
refs #10527
2015-11-04 16:42:19 +01:00
Michael Friedrich 5d46f661ea Implement 'console' cli command using the API
fixes #10387
2015-11-04 16:01:06 +01:00
Gunnar Beutner a51bc4010a Fix indentation for Dictionary::ToString
fixes #10527
2015-11-04 08:44:56 +01:00
Gunnar Beutner 51f473d08a Implement the current_filename and current_line keywords
fixes #10243
2015-11-03 16:34:34 +01:00
Gunnar Beutner ae23e456a6 Fix race condition in ConfigWriter::GetKeywords
fixes #10518
2015-11-03 09:46:45 +01:00
Gunnar Beutner 9c5758958c Fix crash in JsonRpcClient::DataAvailableHandler
fixes #10495
2015-11-02 17:45:44 +01:00
Michael Friedrich 7589c61b38 Add missing override
refs #10508
refs #10509
2015-11-02 17:36:13 +01:00
Michael Friedrich 43976d3989 Add host.last_state_{up,down} and last_check attribute, hide *_raw attributes
fixes #10508
fixes #10509
2015-11-02 14:10:44 +01:00
Michael Friedrich 439dad5d6a API actions: Check if removal of comments and downtimes was succesful
refs #9080
2015-11-01 16:33:43 +01:00
Gunnar Beutner ed90d9a847 Fix race condition in CreatePipeOverlapped
fixes #10510
2015-11-01 12:59:57 +01:00
Gunnar Beutner b2829ca522 Fix plural name for the Array type
fixes #10501
2015-11-01 10:35:31 +01:00
Michael Friedrich 1b9f0a8c77 Add the unique_id for comments/downtimes next to legacy_id to DB IDO
fixes #10431
2015-10-30 11:25:07 +01:00
Michael Friedrich 339c0b6d84 Fix missing field initializer in DB IDO
refs #10436
2015-10-29 22:27:09 +01:00
Michael Friedrich 6f8e25a349 Add doc URL to /v1 info page
refs #9105
2015-10-29 18:59:30 +01:00
Michael Friedrich 4d784dd075 DB IDO: Add an index for CV session delete
The DELETE statement might become painfully slow on
large installations.

refs #10436
2015-10-29 16:18:49 +01:00
Michael Friedrich 9485938d32 Fix: Unique constraint violation with multiple comment inserts in DB IDO
fixes #10491
2015-10-29 16:12:53 +01:00
Michael Friedrich cf5735e3df DB IDO: Remove deleted custom variables
We cannot clear the custom variable tables on startup and then re-insert
all known custom vars. Instead we "fixed" it by leaving them
in the database only updating their value if changed. We certainly
forgot about deleted custom vars at that point.

Since the older fix must stay in place, we'll use a session
token stored in the backend to check whether the custom
variable has been updated/inserted in the current session, or not.
If the session token does not match, the custom vars are deleted
at the end of the config dump. Ugly but fairly the only performant
solution as CVs don't have an object_id.

fixes #10436
2015-10-29 16:00:06 +01:00
Gunnar Beutner e3efe208bb Fix spelling mistake in 'node wizard' 2015-10-29 08:14:56 +01:00
Gunnar Beutner 15addb4e7c Use the correct zone name for parent_zone when running 'icinga2 node update-config'
fixes #10479
2015-10-29 08:14:55 +01:00
Gunnar Beutner 0013d26425 Build fix for Windows
refs #9777
2015-10-29 08:14:55 +01:00
Gunnar Beutner 050c520b2a Convert Comment/Downtime to config objects
fixes #9777
2015-10-28 17:56:29 +01:00
Michael Friedrich de8aae90e4 DB IDO: Add object_id where clause for icinga_downtimehistory
fixes #10110
2015-10-28 17:12:23 +01:00
Gunnar Beutner 5ad0c67485 Fix: IDO tries to execute empty UPDATE queries
fixes #10473
2015-10-28 07:46:04 +01:00
Gunnar Beutner 4763dea571 Fix incorrect URL check in the InfoHandler class
refs #9105
2015-10-28 07:46:04 +01:00
Jean Flach edfc0e3a38 Update error messages
Removes verboseError from httprequest and uses
HttpUtility::GetLastParameter() instead to find out whether verbose
errors are enabled. Also parsing an invalid URL will now not lead to a
stacktrace anymore.

refs #10194
2015-10-27 15:26:19 +01:00
Jean Flach 2fc042e231 Update API actions and documentation
refs #9080 #9105
2015-10-27 14:15:07 +01:00
Gunnar Beutner 23330150f4 Fix invalid delete in IndexerExpression::GetReference
fixes #10466
2015-10-26 18:01:39 +01:00