Commit Graph

3747 Commits

Author SHA1 Message Date
Michael Friedrich 186fcb3724 Fix log message for WriteCert()
refs #12422
2016-08-14 09:28:55 +02:00
Michael Friedrich a83d81a71d Fix that pki sign-csr is not logging the certificate file location
fixes #12422
2016-08-14 09:22:18 +02:00
Gunnar Beutner ed53366490 Avoid duplicate IDO config updates at startup
fixes #12417
2016-08-13 23:31:22 +02:00
Gunnar Beutner 9f8cb8dd36 Clean up the code a bit
refs #11423
2016-08-13 21:43:59 +02:00
Michael Friedrich 8f03adf76f Remove Downtime objects w/o reference to ScheduledDowntime objects
fixes #11423
2016-08-13 15:18:50 +02:00
Gunnar Beutner afc1b9bdc5 Move type variables into the 'Types' namespace
refs #12408
2016-08-12 17:05:19 +02:00
Gunnar Beutner 99f944ac28 Remove extraneous space in a log message
refs #12304
2016-08-12 16:38:05 +02:00
Gunnar Beutner 91577713fd Fix incorrect function name for deprecated functions
refs #12408
2016-08-12 15:41:03 +02:00
Gunnar Beutner b74014fa5e Fix auto-completion suggestions for "icinga2 console"
refs #12408
2016-08-12 15:36:47 +02:00
Gunnar Beutner 12ea2a6445 Implement the System#sleep function
fixes #12411
2016-08-12 15:22:10 +02:00
Gunnar Beutner 491acb62ea Fix crash in ScriptFrame::AddImport
refs #12408
2016-08-12 15:22:10 +02:00
Michael Friedrich e28f30a727 Enhance log messages for {,reminder} notifications
refs #12402
2016-08-12 14:49:29 +02:00
Gunnar Beutner c6a753b67e Make sure base classes are registered in the right order
refs #12408
2016-08-12 14:18:59 +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
Gunnar Beutner 419500e55e Fix 'use' keyword for templates
fixes #12409
2016-08-12 13:32:13 +02:00
Gunnar Beutner 2a40a71ffa Change scoping mechanism for the __using keyword
refs #12408
2016-08-12 13:14:10 +02:00
Gunnar Beutner 3980cf04a0 Fix exception with __using
refs #12408
2016-08-12 12:05:02 +02:00
Gunnar Beutner 9f67b185b8 Make sure all constructors properly initialize the ScriptFrame object
refs #12408
2016-08-12 11:42:59 +02:00
Gunnar Beutner c5a170a972 Implement support for namespaces
fixes #12408
2016-08-12 11:32:16 +02:00
Gunnar Beutner 76ed38fbfe Implement support for inspecting variables with LLDB/GDB
fixes #12407
2016-08-12 11:00:19 +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 f5d5eaf344 Add log message if notifications are forced (i.e. filters are not checked)
fixes #12404
2016-08-11 16:23:58 +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 132ee6c558 Use InterlockedIncrement instead of a mutex in CreatePipeOverlapped
refs #10075
2016-08-11 09:48:01 +02:00
Gunnar Beutner f0beeba354 Fix missing names for user-defined functions
refs #12393
2016-08-11 09:08:33 +02:00
Michael Friedrich 8389d01998 Fix flexible downtimes expiry time and removal
fixes #12395
2016-08-10 17:15: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
Michael Friedrich 42818ab758 Fix downtime notification events and missing author/comment
fixes #12333
fixes #11851
2016-08-10 16:04:37 +02:00
Gunnar Beutner 54bbaf9f7d Implement support for marking functions as deprecated
fixes #12393
2016-08-10 15:48:05 +02:00
Timo Buhrmester 148b4da285 Don't violate POSIX by ensuring that the argument to usleep(3) is less than 1000000
fixes #12391

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2016-08-10 12:29:52 +02:00
Gunnar Beutner 37bd5ad800 Fix race condition in CreatePipeOverlapped
fixes #10075
2016-08-10 12:12:56 +02:00
Gunnar Beutner 39bde8078c Disallow casting "" to an Object
fixes #12390
2016-08-10 11:14:33 +02:00
Gunnar Beutner e8ae1dc4a6 Include compiler name/version and build host name in --version
fixes #12389
2016-08-10 08:09:44 +02:00
Gunnar Beutner dc06209e4a Move internal script functions into the 'Internal' namespace
fixes #12338
2016-08-10 06:55:44 +02:00
Gunnar Beutner 43c2ec31ef Windows build fix
fixes #12339
2016-08-09 15:41:27 +02:00
Gunnar Beutner f3bb628d6e Improve logging for the WorkQueue class
fixes #12336
2016-08-09 12:39:07 +02:00
Gunnar Beutner 4c7e2994a7 Handle I/O errors while writing the Icinga state file more gracefully
fixes #12334
2016-08-09 10:59:08 +02:00
Gunnar Beutner ff293661fc Rename/Remove experimental script functions
fixes #12332
2016-08-09 10:43:55 +02:00
Marius Sturm 451cd73749 GelfWriter: Use raw CheckResult output for full_message attribute
fixes #10903

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2016-08-09 09:51:17 +02:00
Gunnar Beutner 9f425cdcaf Fix building Icinga with -fvisibility=hidden
fixes #12331
2016-08-09 09:00:19 +02:00
Gunnar Beutner 26d048d6c3 Add version info in /v1
fixes #12327
2016-08-09 08:48:18 +02:00
Gunnar Beutner 231fd8d38b Build fix for CentOS 5
refs #11292
2016-08-08 15:27:16 +02:00
Gunnar Beutner 1beef64dc4 Fix crash in Checkable::ProcessCheckResult when cr is NULL
refs #12329
2016-08-08 14:17:44 +02:00
Gunnar Beutner c7602a0f34 Implement process_check_result script method for the Checkable class
fixes #12329
2016-08-08 14:14:45 +02:00
Gunnar Beutner 8deeb73bb8 Register a new script frame in Function::Invoke
fixes #9848
2016-08-08 14:12:08 +02:00
Gunnar Beutner 1cd8a25ab2 Add the "exception" check command
refs #10075
2016-08-08 12:51:20 +02:00
Gunnar Beutner 597dc0dea2 Fix incorrect behavior for max_check_attempts
fixes #11898
2016-08-08 11:02:08 +02:00
Gunnar Beutner 26821d1a79 Don't add empty lines to libedit's history
refs #12234
2016-08-08 08:01:52 +02:00
Gunnar Beutner 46f8c7eb59 Remove temporary icinga2.debug file in case the config validation fails
fixes #12318
2016-08-05 09:15:17 +02:00
Gunnar Beutner d0658c465b Fix incorrect parameter name for NotificationSentAllUsersHandler
fixes #12310
2016-08-05 06:57:50 +02:00
Michael Friedrich 43a177fb16 Fix that notifications with empty times.{begin,end} are not sent
fixes #10363
2016-08-04 17:27:35 +02:00
Michael Friedrich 3f89a6dd09 Disable immediate hard state for first check result
fixes #7354
2016-08-04 16:16:58 +02:00
Gunnar Beutner 905380b436 Fix duplicate notifications on HA failover
fixes #12267
2016-08-04 10:12:55 +02:00
Gunnar Beutner bd3660fe5a Build fix for Windows
refs #11292
2016-08-04 06:34:47 +02:00
Michael Friedrich 34655d77d3 Ensure to send recovery notifications if the was a problem notification before a downtime
fixes #12293
2016-08-03 18:28:09 +02:00
Michael Friedrich 83f07c7ee2 Add the notification type into the log message
fixes #12304
2016-08-03 17:32:55 +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
Uwe Ebel b2ac05ad7d Make the minimum TLS protocol version configurable
The ApiListener accepts all TLS versions that the underlying
OpenSSL library supports. This patch give the ability to restrict
the connection to a minimum TLS version.

fixes #11292

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2016-08-03 07:46:50 +02:00
Michael Friedrich 5498dc5e4f Fix that the first notification interval is incorrect
fixes #12257
2016-08-02 18:41:01 +02:00
Conrad Clement 3f0b6ec003 Optimize two ObjectLocks into one in Notification::BeginExecuteNotification method
object is locked twice to update values of
NotificationNumber, LastNotification and LastProblemNotification.
LastNotificaiton is updated inside each ObjectLock
merge two ObjectLocks into one and remove duplicate update

fixes #12188

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2016-08-02 18:36:29 +02:00
Michael Friedrich 1ff6939f90 Fix missing MySQL session_token changes
refs #12258
refs #12288
2016-08-02 15:05:21 +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
Michael Friedrich 53930e321c DB IDO: Ensure that queries are not executed if categories don't match
refs #12147
refs #12147
2016-08-02 14:27:20 +02:00
Michael Friedrich b7da28b176 Enhance TLS handshake error messages with connection information
fixes #12287
2016-08-02 12:14:03 +02:00
Michael Friedrich 73417275f6 Fix incorrect index drop in pgsql.sql
refs #12210
2016-08-02 11:05:48 +02:00
Michael Friedrich 7d78c53dd8 Fix incorrect session_token index for PostgreSQL
refs #12210
2016-08-01 15:04:47 +02:00
Markus Frosch d0183edc51 Fix build with OpenSSL 1.1
error: cannot convert ‘const boost::shared_ptr<x509_st>’ to ‘X509* {aka
x509_st*}’ for argument ‘1’ to ‘ASN1_TIME* X509_get_notBefore(X509*)’

refs #12044
2016-08-01 09:54:51 +02:00
Michael Friedrich 32b37f0db9 Fix missing session_token column
refs #12210
2016-08-01 09:37:10 +02:00
Gunnar Beutner 546bdbcf6a 'Sandboxed' property isn't properly propagated to child frames
refs #12247
2016-07-29 14:11:52 +02:00
Gunnar Beutner aaa4878017 Don't write empty lines to the history file
refs #12234
2016-07-29 13:55:07 +02:00
Gunnar Beutner a02d7d7502 Implement history support for 'icinga2 console'
fixes #12234
2016-07-29 13:45:16 +02:00
Gunnar Beutner ee75094128 Change how Array#reduce works
refs #12247
2016-07-29 11:09:46 +02:00
Gunnar Beutner a3815e4efd Add map/reduce and filter functionality for the Array class
fixes #12247
2016-07-29 10:48:15 +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
Gunnar Beutner 92c28548d1 Remove obsolete debug log message
fixes #12254
2016-07-29 07:09:01 +02:00
Simon Murray 84ea0065b2 Fix InfluxdbWriter Trailing Backslash
Backslashes escape spaces or commas (and evidently equals), given tags are
separated by commas, tag keys and values are separated by equals and tags
are separated from fields by a space we need to take action when these end
in a backslash e.g. 'C:\'.  Also discovered a bug whereby the metric tag was
missing out on escaping.

fixes #12227

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2016-07-29 06:51:33 +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 d7903ba800 Enhance client disconnect message for "No data received on new API connection."
fixes #12116

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2016-07-28 17:40:40 +02:00
Michael Friedrich 077dbe1db6 Fix that reminder notifications ignore HA mode
fixes #12249
2016-07-28 17:39:52 +02:00
Gunnar Beutner 21cebe97a1 CheckerComponent sometimes fails to schedule checks in time
fixes #12180
2016-07-28 13:51:08 +02:00
Rune Darrud 54eb9540b1 Fix min/max execution_time
fixes #12225

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2016-07-26 09:56:21 +02:00
Rune Darrud 730d959374 Set min_latency and min_execution_time to 0 when there have been no checkresults processed
fixes #12216

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2016-07-26 09:54:08 +02:00
Gunnar Beutner 55a3dc22bf Log a warning if there are more than 2 zone endpoint members
fixes #12222
2016-07-26 08:10:47 +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
Gunnar Beutner 22bb1f406a Fix URL encoding for '&'
fixes #12199
2016-07-25 10:54:17 +02:00
Gunnar Beutner cdda3bad8c Include client IP address and port in HTTP requests
fixes #11706
2016-07-25 09:43:13 +02:00
Gunnar Beutner 45dd027101 Include IP address and port in the "New connection" log message
fixes #12215
2016-07-25 09:31:38 +02:00
Stephan Tesch 431c110056 Improve error reporting for the client certificate check
Until now, client certificates that have failed verification were reported as not being signed by the CA. That is not true for all cases. This patch adds an explanation in the debug log why verification failed.

fixes #12201
2016-07-25 09:22:35 +02:00
Gunnar Beutner caf2812f0d Implement the __ptr function
fixes #12205
2016-07-22 09:43:59 +02:00
Michael Friedrich 2d53cdb845 Improve log message for connecting nodes without configured Endpoint object
fixes #12194
2016-07-21 13:48:00 +02:00
Gunnar Beutner e9605168a1 Increase reconnection timer interval for cluster connections
fixes #12193
2016-07-21 12:27:18 +02:00
Michael Friedrich e712d6ffe7 Fix error message for specified ciphers
refs #11063
2016-07-19 20:13:34 +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 9075de67b1 Fix message routing for command_endpoint checks in satellite zones with >2 instances
refs #12179
2016-07-19 18:32:01 +02:00
Michael Friedrich 3d06df96bc Fix duplicate CheckResult messages for command_endpoint
fixes #12179
2016-07-19 17:36:14 +02:00
Uwe Ebel 1ca8b293cb Make the cipher list configurable for TLS streams
fixes #11063

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2016-07-18 13:40:00 +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 1bd235b9fb Improve IDO performance
refs #12147
2016-07-13 14:44:53 +02:00
Gunnar Beutner 60c52f2109 Fix crash on Windows
fixes #11730
2016-07-12 15:33:44 +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 ca42b4658a DB IDO: Change alias column to varchar(255) in MySQL
fixes #10061
2016-07-07 18:48:09 +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 a0a5989181 Add missing index on statehistory table for DB IDO cleanup
fixes #12107
2016-07-06 12:17:41 +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 915ebe17cd ConfigCompiler should not log included files by default
fixes #11419
2016-07-05 15:43:48 +02:00
Michael Friedrich 5836b5b868 Fix: include_recursive should gracefully handle inaccessible files
fixes #12098
2016-07-05 15:40:49 +02:00
Michael Friedrich 9b873d60c2 Ensure to clear the SSL error queue before calling SSL_{read,write,do_handshake}
fixes #12100
2016-07-05 15:25:02 +02:00
Michael Friedrich c73e4d3328 Fix Downtime validation function signature
refs #11483
2016-07-05 13:17:18 +02:00
Michael Friedrich 85afec8952 Fix setsockopt() error on Windows
refs #12003
2016-07-05 13:16:14 +02:00
Simon Murray c6add53152 Fix InfluxDB Writer Key Escaping
The escaping wasn't being performed on measuerments, keys or tag values.  The
escape function was returning the input and not the modified ouput, so this
has been fixed

refs #12047

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2016-06-27 12:07:07 +02:00
Gunnar Beutner 6de6ea5e42 Build fix for OpenSSL 1.1.0
fixes #12044
2016-06-27 08:28:22 +02:00
Michael Friedrich c688a94f8a API: Add missing downtime_depth attribute
fixes #12041
2016-06-25 17:32:12 +02:00
Michael Friedrich ab4ba18238 Allow strings in Dependency states filter
refs #11445
2016-06-24 14:17:24 +02:00
Michael Friedrich 1451a0e5ad Add lag thresholds to cluster-zone check
fixes #11772
2016-06-24 10:33:04 +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 7077ca1a53 Add acknowledgement type to Graphite, InfluxDB, OpenTSDB metadata
fixes #12018
2016-06-23 13:04:23 +02:00
Gunnar Beutner 906ab613f3 Fix crash when using include_recursive in an object definition
fixes #12022
2016-06-22 17:01:36 +02:00
Michael Friedrich 7f56a04dd5 DB IDO: Add missing indexes for icinga_endpoints* and icinga_zones* tables
fixes #10066
2016-06-22 12:56:24 +02:00
Gunnar Beutner 428850a6b3 Fix: ConfigWriter::EmitScope incorrectly quotes dictionary keys
fixes #12016
2016-06-22 12:35:47 +02:00
Michael Friedrich 067cb8d283 DB IDO: Fix overflow in current_notification_number column (MySQL)
fixes #11962
2016-06-22 12:13:49 +02:00
Simon Murray e3645aa2f7 Fix hanging API connections
There was a problem identified where an upstream API connection was found hanging waiting
for a TLS handshake to complete.  Seeingly the TCP connection was ESTABLISHED locally but
not cleanly terminated remotely.  The Socket events layer never triggered the TLS handshake
oddly.  This however enables TCP keep alive packets to detect broken connections, raising
EPOLLERR and breaking the deadlock condition so that the agent will attempt to reconnect
at a later time.

fixes #12003

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2016-06-22 09:25:00 +02:00
Gunnar Beutner e3f1c1ec6f Make sure timestamps are formatted as integers in macro strings
refs #11483
2016-06-21 11:29:12 +02:00
Gunnar Beutner b5a38f6707 Fix compatibility issue with the $icinga.timet$ macro
fixes #11483
2016-06-21 08:23:31 +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 f10289aa71 DB IDO: Add missing object_id index for icinga_{scheduleddowntime,comments} tables
fixes #10070
refs #11947
2016-06-20 17:15:09 +02:00
Michael Friedrich f610e56a59 DB IDO: Fix missing schema version update in {mysql,pgsql}.sql
refs #10069
refs #11967
2016-06-20 16:17:06 +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
Lee Clemens 759818d289 DB IDO: Make check_source a varchar(255) column
fixes #10069

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2016-06-17 11:03:26 +02:00
Michael Friedrich b4c56e5f47 Remove duplicate last_check runtime macro
Already available as {host,service}.last_check attribute.

refs #11483
2016-06-16 17:39:59 +02:00
Gunnar Beutner 039461e218 Fix unit tests for Convert::ToString
refs #11483
2016-06-16 15:32:29 +02:00
Gunnar Beutner bc6f7d7a21 Fix incorrect formatting for some macro values
fixes #11483
2016-06-16 15:14:35 +02:00
Gunnar Beutner d415ff7373 Add missing OnConfigLoaded calls in Ido{My,Pg}sqlConnection
fixes #11951
2016-06-16 14:22:20 +02:00
Gunnar Beutner c99fb68c2d Implement support for getting a list of global variables from the API
fixes #11955
2016-06-16 08:38:15 +02:00
Gunnar Beutner 28dee2b79b Improve filter support for /v1/templates
refs #11941
2016-06-16 08:38:15 +02:00
Michael Friedrich 2b474823f8 API: Fix that /v1 returns html if json is requested
fixes #10570
2016-06-15 17:46:09 +02:00
Michael Friedrich cdd858a0ec Flapping{Start,End} notifications must not depend on state changes
fixes #11899
2016-06-15 17:43:37 +02:00
Michael Friedrich 399ae42a8c DB IDO: Fix comment/downtime entry_time reset
fixes #11182
2016-06-15 11:28:57 +02:00
Gunnar Beutner 8a714d66f1 Ensure that sent notifications are synced between Icinga instances
fixes #11562
2016-06-15 11:27:01 +02:00
Gunnar Beutner 45919b4844 Fix crash in ApiListener::PersistMessage
fixes #11946
2016-06-15 11:26:35 +02:00
Gunnar Beutner ace6882b59 Implement support for retrieving a list of templates from the API
fixes #11941
2016-06-15 07:41:51 +02:00
Michael Friedrich f7f976b962 DB IDO: Ensure that SOFT state changes with the same state are logged
fixes #11933
2016-06-14 11:08:28 +02:00
Gunnar Beutner ff57b0ccd6 Add name attribute for the WorkQueue class
fixes #10816
2016-06-14 09:08:04 +02:00
Gunnar Beutner a8209c1a1a Change which instance is responsible for initiating notifications in a HA setup
refs #9242
2016-06-14 07:57:52 +02:00
Gunnar Beutner eb4aa4415c Fix cluster permissions for SendNotifications messages
refs #9242
2016-06-13 11:13:25 +02:00
Gunnar Beutner cb01f96dad Don't forward SendNotifications messages to non-local zones
refs #9242
2016-06-13 10:48:59 +02:00
Markus Frosch 8808e709c9 Make change to OK always a hard state
refs #11654
2016-06-13 10:43:57 +02:00
Gunnar Beutner 9e29a3f8a0 Fix default behavior when none of the specified objects pass the user's permission filter
fixes #11926
2016-06-13 10:14:10 +02:00
Markus Frosch a5abe1a972 Allow debugging of Utility::GetTime
So we can run unit tests that expect a certain behavior based on time.

When Icinga 2 is compiled with I2_DEBUG one can use Utility::SetTime to
override the current system time, and lock it to this value.

fixes #11875
2016-06-09 14:25:51 +02:00
Simon Murray 2e8c8809ea Add service metadata to InfluxDB Writer
Adds a new configuration variable in keeping with the graphite writer
which defaults to false to save network bandwidth.  All metrics currently
supported by graphite are now available to InfluxDB.  I added in some
formatting functions, to handle integers and booleans as we know and
control their types, and the supporting regexes in the sanity checker.

Updating to InfluxDB 0.13.X started giving 400 errors due to the missing
Host header in HTTP/1.1 requests.  HttpRequest has been updated to auto-
magically add the host and port to these requests if not explicitly
stated by the client code.

The exception code has been cleaned up to break out of the function
early if such a condition is raised, this avoids unnecessarily executing
code which will ultimately fail.

fixes #11912

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2016-06-08 13:23:52 +02:00
Simon Murray 899592c8ad Update InfluxDB line formatting
Fixes a couple issues to do with line formatting of influx DB data points.  All
keys and values need commas and white space escaping.  Values are also checked
for type.  If a numeric or scientific value is detected this is output as an
Influx floating point/scientific number.  Booleans are detected and output in
a canonical format.  All other values are strings, which have double quotes
escaped and the entire string is wrapped in double quotes.  The handling of
thresholds has changed before this becomes officially released.  These values
if available are passed to the accumulation function in a dictionary, said
dictionary builds a single data point with multiple fields, rather than the
existing 5 data points, thus saving bandwidth costs.

fixes #11904

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2016-06-08 11:01:23 +02:00
Gunnar Beutner 0eb0992d5e Fix custom notifications in a HA zone
fixes #9242
2016-06-07 12:44:12 +02:00
Michael Friedrich 8b742e841f Ensure that obsolete comment/downtime objects are deleted after activating objects
Config validation shouldn't be able to purge the files, only on
restart.

fixes #11890
2016-06-06 13:07:49 +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
Gunnar Beutner aeb7a4a70b Fix incorrect check interval for SOFT->HARD transitions
fixes #11825
2016-05-24 11:05:29 +02:00
Philipp Dallig 54e1c8a9d5 Implement exclude and include ability for TimePeriod objects
This feature allows to exclude and include specific time period
objects and their time ranges from an existing time period object.

This comes in handy when e.g. excluding holidays.

fixes #7355

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2016-05-21 20:33:09 +02:00
Michael Friedrich d49b63d2ab Fix: First HARD state does not change retry_interval to check_interval
refs #11825
2016-05-21 18:58:19 +02:00
Michael Friedrich 3f1a9f150b Silence compiler warnings
refs #11823
2016-05-21 14:16:47 +02:00
Michael Friedrich b4843dc81b Fix: Volatile check results for OK->OK transitions are logged into DB IDO statehistory
fixes #11823
2016-05-21 13:41:43 +02:00
Michael Friedrich e27dee5476 Windows: Fix missing path for repository handler
fixes #11817
2016-05-21 13:05:35 +02:00
Gunnar Beutner 78705e74f3 Open the command pipe with O_RDWR
fixes #11807
2016-05-18 15:52:29 +02:00
Gunnar Beutner b99b373b6f Fix 100% CPU usage issue and incorrect pending checks accounting in CheckerComponent::CheckThreadProc
fixes #11806
2016-05-18 14:30:36 +02:00
Gunnar Beutner bb69540b32 Fix exception in PerfdataWriter::RotateFile
fixes #11801
2016-05-18 14:01:32 +02:00
Gunnar Beutner 222b90107f Fix crash in ConfigItem::Commit
fixes #11804
2016-05-18 12:53:41 +02:00
Gunnar Beutner 93da47a670 Fix PostgreSQL warnings on startup
fixes #11798
2016-05-17 10:32:38 +02:00
Gunnar Beutner bc12d6c0d6 Fix race condition in ConfigObject::SetAuthority
fixes #11784
2016-05-12 14:06:28 +02:00
Gunnar Beutner 97a5091abc Fix incorrect re-scheduling behavior for command_endpoint checks
refs #8137
2016-05-12 13:47:32 +02:00
Gunnar Beutner de1b70cf44 Fix incorrect variable names for joined fields in filter expressions
fixes #11779
2016-05-12 10:24:15 +02:00
Michael Friedrich 3c852311e1 Fix possible crash in Add{Comment,Downtime}
refs #11112
2016-05-11 16:12:09 +02:00
Gunnar Beutner 1ad4d9cd27 Report failed reload attempts for the icinga check
fixes #9060
fixes #9997
fixes #11129
2016-05-11 16:07:28 +02:00
Gunnar Beutner 0b95be7b99 Fix incorrect calculation in Downtime::IsInEffect
fixes #11589
2016-05-11 14:13:43 +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
Gunnar Beutner 0bc139af93 Improve timing behavior for UpdateObjectAuthority calls
refs #11765
2016-05-11 13:04:39 +02:00
Gunnar Beutner fc1168ed3e Only activate HARunOnce objects once there's a cluster connection
fixes #11765
2016-05-11 12:50:40 +02:00
Michael Friedrich a529725a92 Fix overloaded command pipe errors
fixes #11390
2016-05-11 11:04:28 +02:00
Gunnar Beutner 2adfcb56fe Improve error handling for TlsStream::Handshake
fixes #11046
2016-05-11 10:09:54 +02:00
Gunnar Beutner b9fdb3bfd9 Make sure that object names aren't empty
fixes #9989
2016-05-11 09:48:18 +02:00
Jason Young 7dbd66535a Throw exception if PerfdataWriter::RotateFile fails to rename from host_temp_path to host_perfdata_path (and same for service)
This can happen if the two paths are not on the same mount-point.

fixes #9236

Signed-off-by: Gunnar Beutner <gunnar.beutner@netways.de>
2016-05-11 09:29:32 +02:00
Gunnar Beutner ed27130402 Fix: "day -X" time specifications are parsed incorrectly
fixes #11147
2016-05-11 09:23:55 +02:00
Gunnar Beutner 81a7a002b4 Improve validation for flow control statements
fixes #11622
2016-05-11 08:01:31 +02:00
Michael Friedrich 9a88185b12 API: Fix error handling for invalid JSON request body
fixes #11757
2016-05-10 15:16:35 +02:00
Michael Friedrich 1c6f09f44e API: Fix error message handling for invalid attributes in PUT requests
refs #11396
2016-05-10 13:43:36 +02:00
Michael Friedrich ba82d2eb20 Move CalculateExecutionTime and CalculateLatency into the CheckResult class
fixes #11751
2016-05-10 12:16:49 +02:00
Gunnar Beutner f6f3bd1e4c Implement support for limiting the number of concurrent checks
fixes #8137
2016-05-10 11:26:55 +02:00
Gunnar Beutner eab2fb79ad Fix crash in UnameHelper()
fixes #11714
2016-05-10 09:46:48 +02:00
Gunnar Beutner 1fb378ef4a Remove unused cluster commands
fixes #11748
2016-05-10 07:05:10 +02:00
Michael Friedrich 8a65c4a776 API: Fix error message with PUT requests for existing objects
fixes #11396
2016-05-09 15:08:35 +02:00
Gunnar Beutner b8e911b0e5 Make sure the dependency graph is properly updated when adding and removing objects
fixes #11686
fixes #11374
2016-05-09 14:30:12 +02:00
Lee Clemens 7050529976 Add SSL support for the IdoMysqlConnection feature
fixes #9725

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2016-05-03 15:01:32 +02:00
Simon Murray 79c1e883d1 Add InfluxDB Writer
Adds an Icinga2 object to directly interface with InfluxDB's native HTTP API.
This supports optional basic authorization, and TLS transport.  InfluxDB didn't
appear to like having the TLS stream kept open, so instead this object buffers
data points which are then flushed to InfluxDB as a batch write, either driven
by a configurable timeout or threshold.

As InfluxDB is a schema-less database the host and service templates are user
configurable allowing both the measurement field and tags to be set by the
end user via macro expansion.  This allows access to tag fields from arbitrary
data associated with host.vars or service.vars.  If a particular value is
unable to be resolved, the tag will be dropped and not transmitted to InfluxDB.

Also alters URL handling to omit array brackets when only a single value is
attached to a key, otherwise InfluxDB has a strop with non-standard syntax.

fixes #10480

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2016-05-03 14:12:51 +02:00
Michael Friedrich 2faf121ff4 Remove commentsand downtimes with reference to deleted checkable objects
Silence the warning message and change the log level to notice as well.

fixes #10717
2016-05-03 11:30:02 +02:00
Michael Friedrich 23ab6cf78b Fix: Expired downtimes are not removed
fixes #11711
2016-05-02 15:32:46 +02:00
Jean Flach 360e0ad548 Fix external commands comments crashing icinga
Now an exception will be thrown when AddSvcComment or AddHostComment are
run with and empty Author or comment

fixes #11112
2016-04-25 16:58:00 +02:00
Gunnar Beutner 93a09b874b Remove the (unused) 'inherits' keyword
fixes #11659
2016-04-22 13:49:30 +02:00
Michael Friedrich 7442cd94f5 Fix crash with empty ScheduledDowntime 'ranges' attribute
fixes #11158
2016-04-22 11:00:21 +02:00
Gunnar Beutner c54de4b615 Implement SNI support for the CLI commands
fixes #11651
2016-04-21 15:44:51 +02:00
Gunnar Beutner 8b7d59eb34 Implement support for subjectAltName in SSL certificates
fixes #11556
2016-04-21 15:25:57 +02:00
Gunnar Beutner 2d55cf1341 Implement validation for the Logger#severity attribute
fixes #11646
2016-04-21 13:50:47 +02:00
Gunnar Beutner 4a32211de2 Fix crash in Ido{Mysql,Pgsql}Connection::ExecuteMultipleQueries
fixes #11639
2016-04-21 09:17:40 +02:00
Michael Friedrich d5c0d7366d Fix: Failed assertion in IdoPgsqlConnection::FieldToEscapedString
fixes #11635
2016-04-20 18:21:39 +02:00
Gunnar Beutner 22cf939086 Build fix for Windows
refs #11612
2016-04-19 14:48:13 +02:00
Gunnar Beutner d2cd4b6667 Improve performance for locks and value conversions
refs #11612
2016-04-19 09:38:22 +02:00
Gunnar Beutner c6a015e317 Fix crash in Checkable::ExecuteCheck
fixes #11582
2016-04-19 09:37:04 +02:00
Gunnar Beutner ab95670833 Build fix for older boost versions
refs #11612
2016-04-18 17:21:45 +02:00
Gunnar Beutner 3008d5ef31 Improve performance for field accesses
fixes #11612
2016-04-18 17:05:22 +02:00
Gunnar Beutner 955df528d7 Fix error message for the EventEngine variable
refs #11522
2016-04-18 15:02:02 +02:00
Gunnar Beutner d8b0502d67 Make the socket event engine configurable
fixes #11522
2016-04-18 14:38:59 +02:00
Gunnar Beutner 09165e5ca6 Only hide navigational attributes which are not config/state
fixes #11567
2016-04-13 12:02:08 +02:00
Gunnar Beutner 974ca9f38b Fix crash in Downtime::DowntimesExpireTimerHandler
fixes #11534
fixes #11559
2016-04-12 12:05:43 +02:00
Marius Sturm 15cb9c1c1a Use check_result timestamp for GELF log messages
fixes #9184

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2016-04-11 14:48:16 +02:00
Michael Friedrich 2b2e250def Implement support for overriding check command timeout
fixes #9283
2016-04-07 15:07:17 +02:00
Michael Friedrich d2f5008557 API: Ensure that empty passwords w/ client_cn are properly checked
fixes #11482
2016-04-04 16:38:47 +02:00
Gunnar Beutner 327d12295c Implement support for upgrading NSIS-based installations
refs #11449
2016-04-01 08:42:58 +02:00
Gunnar Beutner 6bf3225e84 Implement support for running custom install/uninstall actions
refs #11449
2016-03-31 14:53:54 +02:00
Michael Friedrich 027a23f468 Fix: Overwriting global type variables causes crash in ConfigItem::Commit()
fixes #11484
2016-03-31 11:43:16 +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
Gunnar Beutner 112f024810 Build fix for GCC
refs #9839
2016-03-29 14:52:48 +02:00
Michael Friedrich 5dd685cef9 Fix socket exceptions while querying the API
fixes #11224
2016-03-29 13:52:37 +02:00
Gunnar Beutner eb0892273e Implement the DateTime class
fixes #9839
2016-03-29 13:27:20 +02:00
Michael Friedrich 12dadfdfb3 Fix: Downtimes/Comments not being synced to child zones
fixes #11227
2016-03-29 12:09:51 +02:00
Gunnar Beutner 016f47d6e6 Fix Utility::MkDirP on Windows
fixes #11455
2016-03-29 09:44:05 +02:00
Gunnar Beutner 796884343b Another build fix for Win64
refs #11462
2016-03-29 08:42:02 +02:00
Gunnar Beutner b863a84471 Build fix for Win64
refs #11462
2016-03-29 07:54:41 +02:00
Gunnar Beutner 5de9a988d9 Improve validation for arrays
fixes #11434
2016-03-24 09:15:39 +01:00
Michael Friedrich 0447e81d99 Ensure that the legacy_id attribute for comment/downtime objects is restored on restart
This has been changed when moving comments/downtimes to config objects
in 050c520b2a

It may cause trouble with DB IDO DELETE and UPDATE statements
depending on the old value.

refs #11382
2016-03-23 14:05:09 +01: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
Gunnar Beutner 0e18acbf9d Don't use semi-colons in auto-generated config files
fixes #11438
2016-03-23 09:29:27 +01:00
Gunnar Beutner b621b00e3a Detect infinite recursion in the zone hierarchy graph
fixes #10937
2016-03-23 09:03:53 +01:00
Gunnar Beutner 6ba0c5fe01 Implement recursion limit for AST expressions which don't use a separate stack frame
fixes #11106
2016-03-23 09:03:49 +01:00
Gunnar Beutner 71060be89a Follow symlinks in Utility::GlobRecursive
fixes #11347
2016-03-22 08:22:11 +01:00
Michael Friedrich 67b7df3189 DB IDO: Fix user notification type filters
fixes #10766
2016-03-15 14:50:43 +01:00
Michael Friedrich a30cb86ca1 Only call UpdateNextCheck() for soft states
refs #11336
2016-03-15 14:02:19 +01:00
Michael Friedrich d682f56c38 Use UpdateNextCheck() for determining the retry_interval in ProcessCheckResult()
This patch also moves the next check updates for passive
check results into ProcessCheckResult(). That way the
next check status updates for DB IDO work in a sane way
again.

refs #11336
2016-03-15 13:02:38 +01:00
Michael Friedrich 3bd6848763 Refactor patch for host recovery notifications
refs #10225
2016-03-15 09:47:59 +01:00
Gunnar Beutner 4066ab730a Fix error handling for FeatureUtility::GetFeatures
fixes #11349
2016-03-14 08:45:12 +01:00
Gunnar Beutner a8ee6b2009 Fix crash in ScheduledDowntime::TimerProc
fixes #11352
2016-03-14 08:37:13 +01:00
Michael Friedrich 4746b214d6 Fix: Common name in node wizard isn't case sensitive
fixes #11159
2016-03-11 14:22:24 +01:00
Michael Friedrich 3e050bd0cd Fix: Volatile transitions from HARD NOT-OK->NOT-OK do not trigger notifications
fixes #11320
2016-03-11 13:19:03 +01:00
Michael Friedrich 7fb8bcd933 Use retry_interval on first OK -> NOT-OK state change
Only valid for active check results. The API actions were
missing that marker similar to the external command processor.

The initial OK -> NOT-OK transition should use the retry_interval
but nothing else.

fixes #11336
2016-03-11 12:00:30 +01:00
Michael Friedrich 5b6a6f86b1 Fix host recovery notifications for warning states
fixes  #10225
2016-03-11 09:29:07 +01:00
Michael Friedrich 65cbf04454 Fix: MkDirP supports '/' and '\' on Windows
fixes #10231
2016-03-07 09:22:07 +01:00
Julian Brost 7439633965 Fix max number of args for DEL_DOWNTIME_BY_HOST_NAME
The RegisterCommand call for DEL_DOWNTIME_BY_HOST_NAME was missing the
max args parameter. This prevented the optional service name, start time
and comment arguments to be passed.

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>

fixes #11240
2016-03-05 18:43:02 +01:00
Michael Friedrich ef532f20eb Revert "Fix check scheduling w/ retry_interval"
This reverts commit a51e647cc7.

This patch causes trouble with check results received
1) passively 2) throughout the cluster. A proper patch
for setting the retry_interval on NOT-OK state changes
is required.

refs #11248
refs #11257
refs #11273

(the old issue)
refs #7287
2016-03-05 18:16:49 +01:00
Michael Friedrich b8e3d61820 Revert "Properly set the next check time for active and passive checks"
This reverts commit 2a11b27972.

This patch does not properly work and breaks the check_interval setting
for passive checks. Requires a proper patch.

refs #11248
refs #11257
refs #11273

(the old issue)
refs #7287
2016-03-05 18:15:03 +01:00
Tobias von der Krone ce3062904f Use the server's preferred cipher for the API connection
When using SSL_OP_CIPHER_SERVER_PREFERENCE the server's preferred cipher
is used instead of the client preference, see
https://www.openssl.org/docs/manmaster/ssl/SSL_CTX_set_options.html

fixes #11290
2016-03-04 14:57:06 +01:00
Michael Friedrich d14477c242 Fix MkDirP() on Windows
fixes #10231
2016-03-03 15:54:35 +01:00
Gunnar Beutner 47521904c1 Attempt to fix race condition problem with epoll_ctl()
refs #11289
2016-03-03 13:38:13 +01:00
Jean Flach 9cdea730a3 Fix delete object handler returning incorrect status codes
Now a 200 OK only gets returned if all objects could be deleted

fixes #10770
2016-03-01 16:53:52 +01:00
Vytenis Darulis 6729679f38 Try to queue all PROCESS_FILE commands instead of exploding the stack
fixes #10426

Signed-off-by: Michael Friedrich <michael.friedrich@netways.de>
2016-02-24 23:25:22 +01:00
Michael Friedrich 894aaaecb1 Ensure that config files are readable by the daemon
refs #11212
refs #11211
2016-02-24 14:24:08 +01:00
Michael Friedrich 47c5425137 Fix permissions for temporary files
fixes #11212
fixes #11211
2016-02-24 11:00:44 +01:00
Michael Friedrich 272d9541be Fix wrong log message in 'node setup' cli command
fixes #11209
2016-02-23 16:55:45 +01:00
Sebastian Chrostek 83845e609e Fix problem notifications while flapping is active
fixes #9969
fixes #9642
2016-02-23 16:27:22 +01:00
Michael Friedrich 4cb5b97e52 Fix unique creation of temp files
fixes #10948
2016-02-23 12:30:59 +01:00
Gunnar Beutner 74d1d68893 Fix: "node setup" tries to chown() files before they're created
fixes #11204
2016-02-23 08:42:05 +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
Gunnar Beutner bc6d82c560 Build fix for CentOS 5
fixes #11179
2016-02-22 08:12:35 +01:00
Gunnar Beutner 9a8458fd67 Rename the IOTHREADS macro
refs #11014
2016-02-16 13:30:55 +01:00
Michael Friedrich 04a4049a4d Increase query queue size for testing
refs #10963
2016-02-12 14:15:24 +01:00
Michael Friedrich c8a9f45697 ApiListener: Bail out if object could not be created during config sync
refs #11006
2016-02-12 14:15:24 +01:00
Adam James e04b70856b Fix parsing of YYYY-MM-DD in LegacyTimePeriod::ParseTimeSpec
fixes #11132

Signed-off-by: Jean Flach <jean-marcel.flach@netways.de>
2016-02-10 16:24:36 +01:00
Jean Flach 58a31e8166 Use ConfigWriter class in repositoryutility.cpp
refs #10989
2016-02-09 15:59:19 +01:00
Jean Flach 19134f41cf Fix client not closing connections
fixes #11122
2016-02-09 15:59:19 +01:00
Jean Flach fa1d633484 Rephrase some log messages
refs #11122
2016-02-09 15:59:19 +01:00
Gunnar Beutner 674badd3ce Build fix
fixes #11096
2016-02-09 13:56:17 +01:00
Gunnar Beutner 9e7da9837e Revert "Windows build fix"
This reverts commit f06f6d4d86.
2016-02-09 13:54:19 +01:00
Gunnar Beutner 90e241ca85 Fix: Cluster WQ thread dies after fork()
fixes #11118
2016-02-09 12:46:46 +01:00
Jean Flach 4d87c96d06 Refactor String-Escape in repositoryutility
fixes #10989
2016-02-09 09:38:12 +01:00
Gunnar Beutner 14d805e6fe Fix crash in ApiListener::ConfigUpdateObjectAPIHandler
fixes #11006
2016-02-09 09:13:43 +01:00
Jean Flach 393a6bf641 Remove unused variables
fixes #11111
2016-02-08 17:10:12 +01:00
Jean Flach 8dbd84daed Remove unused variable 2016-02-08 16:40:34 +01:00
Jean Flach 964cfcebd3 Make schedule-downtime default fixed
fixes #10923
2016-02-08 16:04:41 +01:00
Gunnar Beutner e224e74994 Make sure the "syncing" attribute is set to false
refs #11083
2016-02-08 13:15:24 +01:00
Michael Friedrich 99dbb249de DB IDO: Fix problem with hostgroup_members cleanup
fixes #11103
2016-02-08 11:05:27 +01:00
Gunnar Beutner 6d5014b610 Increase grace period for agent-based checks
refs #11020
2016-02-08 09:46:01 +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
Michael Friedrich f06f6d4d86 Windows build fix
fixes #11096
2016-02-05 10:55:16 +01:00
Michael Friedrich 3227186c7d Fix: API queries on non-existant objects cause exception
fixes #11088
2016-02-04 22:40:01 +01:00
Gunnar Beutner 611ff869e1 Implement support for epoll
refs #11014
2016-02-04 16:31:59 +01:00
Gunnar Beutner c06f6d7aeb Fix crash in ConfigItem::RunWithActivationContext
fixes #11085
2016-02-04 13:17:37 +01:00
Michael Friedrich 949b129c65 Ensure that config sync updates are always sent on reconnect
fixes #11083
2016-02-04 11:30:27 +01:00
Gunnar Beutner caf3380e73 Fix memory leak in Stream::Close
refs #10655
2016-02-03 13:02:49 +01:00
Gunnar Beutner 2dc385e31b Fix memory/thread leak in the HttpServerConnection class
fixes #10655
2016-02-03 09:54:31 +01:00
Gunnar Beutner fabf37e79c Improve performance for TlsStream::OnEvent
refs #11014
2016-02-02 13:51:17 +01:00
Gunnar Beutner f234bdd321 Fix crash in IdoCheckTask::ScriptFunc
refs #11014
2016-02-02 12:03:12 +01:00
Gunnar Beutner 532655d482 Use multiple threads for socket IO
refs #11014
2016-02-02 11:17:33 +01:00
Gunnar Beutner 3f95e86c73 Remove debug log message
refs #11014
2016-02-02 09:54:31 +01:00
Gunnar Beutner ecfaf019fd Avoid unnecessary pollfd updates
refs #11014
2016-02-02 09:52:23 +01:00
Gunnar Beutner 83889dcbb0 Increase the buffer size in TlsStream::OnEvent to avoid unnecessary poll() calls
refs #11014
2016-02-02 08:28:54 +01:00
Gunnar Beutner ec050dd2a7 Fix deadlock in HttpClientConnection::DataAvailableHandler
refs #11014
2016-02-01 14:50:18 +01:00
Gunnar Beutner e6a972f975 Fix incorrect memcpy() with overlapping buffers
refs #11014
2016-02-01 12:58:42 +01:00
Gunnar Beutner 98e104a773 Fix incorrect method call in JsonRpcConnection::MessageHandler
refs #11014
2016-02-01 11:25:34 +01:00
Gunnar Beutner c03e458e13 Avoid unnecessary new/deletes
refs #11014
2016-02-01 09:33:33 +01:00
Gunnar Beutner deac316a45 Fix deadlock in {HttpServerConnection,JsonRpcConnection}::DataAvailableHandler
refs #11014
2016-02-01 08:35:55 +01:00
Michael Friedrich c2cf614d62 Remove debug output, part 2
refs #11014
2016-01-29 14:09:50 +01:00
Michael Friedrich 7a3848af1e Remove debug output
refs #11014
2016-01-29 14:03:58 +01:00
Gunnar Beutner 6fc91a38eb Avoid unnecessary reallocs in FIFO::Optimize
refs #11014
2016-01-28 13:09:17 +01:00
Gunnar Beutner 56e7c24f1f Avoid unnecessary dictionary lookups in SocketEvents::ThreadProc
refs #11014
2016-01-28 13:07:09 +01:00
Gunnar Beutner fe421d76fb Remove debug output
refs #11014
2016-01-28 12:23:07 +01:00
Gunnar Beutner 4237c6eaaa Avoid unnecessary wake-ups in SocketEvents::ChangeEvents (part 2)
refs #11014
2016-01-28 11:55:31 +01:00
Gunnar Beutner 75f7fe10e1 Avoid unnecessary wake-ups in SocketEvents::ChangeEvents
refs #11014
2016-01-28 09:05:49 +01:00
Gunnar Beutner 3c76e70fe2 Avoid updating the file descriptor list for poll() unless we really need to
refs #11014
2016-01-28 08:24:33 +01:00
Gunnar Beutner fa7d0448f9 Decode cluster messages in the WorkQueue threads
refs #11014
2016-01-27 16:52:01 +01:00
Gunnar Beutner 9689223081 Use multiple WorkQueues to process cluster messages
refs #11014
2016-01-27 15:45:58 +01:00
Gunnar Beutner 54df0b74b6 Improve performance for ApiListener::RelayMessageOne
refs #11014
2016-01-27 13:39:31 +01:00
Gunnar Beutner 8c05003101 Improve the performance for ApiListener::SyncRelayMessage (part 2)
refs #11014
2016-01-27 12:18:16 +01:00
Gunnar Beutner 9ae1f1abee Improve performance for ApiListener::SyncRelayMessage
refs #11014
2016-01-27 08:43:20 +01:00
Michael Friedrich 22c21ebd61 Implement String#trim
fixes #11037
2016-01-26 16:01:14 +01:00
Gunnar Beutner 4185c75d8a Ignore the .timestamp file when determining whether the zone config has changed (second attempt)
refs #11014
2016-01-26 15:46:03 +01:00
Michael Friedrich 627814b8e7 Fix incorrect --version information
fixes #10784
2016-01-26 15:17:48 +01:00
Gunnar Beutner c5a003c162 Ignore the .timestamp file when determining whether the zone config has changed
refs #11014
2016-01-26 11:32:54 +01:00
Gunnar Beutner f3351bc80e Make sure the updated config sync works with old versions of Icinga 2
refs #11014
2016-01-26 10:46:27 +01:00
Gunnar Beutner 1eecc72093 Use MkDirP instead of MkDir when syncing zone configs
fixes #10932
2016-01-26 10:45:03 +01:00
Gunnar Beutner 980ce96910 Make sure the .timestamp file is synced for config updates
refs #11014
2016-01-26 09:04:26 +01:00
Gunnar Beutner 23edd6cb8f Add missing comment
refs #10988
2016-01-26 08:35:29 +01:00
Michael Friedrich d412a9055d Fix cluster config timestamp again
refs #11014
2016-01-25 15:49:32 +01:00
Michael Friedrich a4562fb433 Only set SSL_OP_NO_COMPRESSION if supported
OpenSSL 0.9.8 does not support this flag.

fixes #10988
2016-01-25 14:53:26 +01:00
Michael Friedrich a17419e8c2 Fix cluster config sync timestamp
refs #11014
2016-01-25 14:39:21 +01:00
Gunnar Beutner 8f53835c11 Make sure we only have one connection per satellite
refs #11014
2016-01-25 10:57:06 +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
Michael Friedrich 2a11b27972 Properly set the next check time for active and passive checks
fixes #7287
refs #11019
2016-01-22 18:40:14 +01:00
Michael Friedrich 730db0cba1 Fix: Modified attributes do not work for the IcingaApplication object w/ external commands
fixes #10974
2016-01-21 19:07:54 +01:00
Michael Friedrich ddc1b251a6 Fix: Escaped sequences not properly generated with 'node update-config'
fixes #10989
2016-01-21 18:14:53 +01:00
Gunnar Beutner 6ca054e618 Ensure that checks are not scheduled for command_endpoint fake hosts
refs #10963
2016-01-21 16:37:52 +01:00
Gunnar Beutner 6d88d9035d Remove redundant log messages
refs #10963
2016-01-21 13:02:53 +01:00
Gunnar Beutner 72c3b6d75b Make sure we're not running command_endpoint-based checks more than once
refs #10963
2016-01-21 10:37:47 +01:00
Tobias von der Krone 1c67bf394c Support TLSv1.1 and TLSv1.2 for the cluster transport encryption
From https://wiki.openssl.org/index.php/SSL/TLS_Client:
SSLv23_method specifies the protocols used and behavior of the handshake.
The method essentially means SSLv2 or above, and includes the TLS protocols.
The protocols are further tuned through SSL/TLS options. By using
SSLv23_method (and removing the SSL protocols with SSL_OP_NO_SSLv2 and
SSL_OP_NO_SSLv3), then you will use TLS v1.0 and above, including TLS v1.2.
You will also use a TLS handshake in the TLS Record.

If you use TLSv1_method, then you will only use TLS v1.0.

fixes #10988
2016-01-20 16:48:00 +01:00
Michael Friedrich 4ce43b8d02 ExternalCommandListener: Fix crash when reading from socket
refs #10700
2016-01-20 16:38:31 +01:00
Michael Friedrich a51e647cc7 Fix check scheduling w/ retry_interval
fixes #7287
2016-01-20 16:29:01 +01:00
Gunnar Beutner e48ed33000 Add missing SetSyncing() call
refs #10963
2016-01-20 14:07:07 +01:00
Gunnar Beutner 55f0c589ad Skip log replay for endpoints with log_duration = 0
refs #10963
2016-01-19 17:25:28 +01:00
Gunnar Beutner db0c6ef187 Only build leak detection code when I2_LEAK_DEBUG is set
refs #10963
2016-01-19 16:43:46 +01:00
Gunnar Beutner e4b7111577 Check the certificate name when reconnecting to an instance
refs #10963
2016-01-19 16:24:12 +01:00
Gunnar Beutner b1aa6cc98a Decrease memory usage for the Object class
refs #10963
2016-01-19 16:24:07 +01:00
Gunnar Beutner d50c8e1085 Improve debug support for analyzing memory leaks
refs #10963
2016-01-19 15:24:17 +01:00
Jean Flach 08698c3622 Fix another compiler warning
fixes #10956
2016-01-18 09:41:52 +01:00
Jean Flach cb70d97dcf Plug two memory leaks
refs #10963
2016-01-15 10:11:52 +01:00
Michael Friedrich d9fac2b613 Raise a config error for "Checkable" objects in global zones
fixes #10807
2016-01-14 15:34:38 +01:00
Gunnar Beutner 7f4af89a56 Ensure that HttpServerConnections are properly closed
fixes #10655
2016-01-13 10:30:38 +01:00
Gunnar Beutner de11ef704a Fix compiler warning
fixes #10956
2016-01-13 08:33:27 +01:00
Gunnar Beutner 599929b0f6 Update copyright headers for 2016 2016-01-12 08:29:59 +01:00
Jean Flach 957cf3169f Replace boost-base64 with an openssl implementation
Also add unit tests

fixes #10714
2016-01-11 15:35:20 +01:00
Gunnar Beutner 1bf27011df Fix incorrect is_active queries
fixes #10891
2016-01-11 14:23:16 +01:00
Michael Friedrich 79899d726a Change log level for authoritative zone config includes
LogWarning will make users wonder about a problem each time
Icinga 2 starts.

refs #10819
2015-12-18 11:53:56 +01:00
Daniil Yaroslavtsev d739675799 GelfWriter: Add additional fields for 'CHECK RESULT' events
fixes #9858
2015-12-18 11:05:38 +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
Michael Friedrich 323b759a90 Fix config validation for templates used as object reference name
fixes #10830
2015-12-17 13:49:30 +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
Michael Friedrich af3458dfec Fix that "repository add" writes invalid "type" attribute
fixes #10867
2015-12-17 10:20:41 +01:00
Michael Friedrich 8b6d3350b8 Fix failed reload via systemd
fixes #10226
2015-12-16 15:57:59 +01:00
Michael Friedrich 6387bec049 Fix duplicate key violation for downtimes
refs #10829
2015-12-16 13:57:29 +01:00
Gunnar Beutner 346c0cbb3c Fix crash in Ido*Connection::InternalExecuteMultipleQueries
fixes #10862
2015-12-16 11:29:06 +01:00
Gunnar Beutner ef8ba6e275 Implement additional query statistics for DB IDO
fixes #10860
2015-12-16 10:46:27 +01:00
Michael Friedrich 1add333a57 DB IDO: Add a log message when the connection handling is completed
fixes #10857
2015-12-15 16:50:17 +01:00
Michael Friedrich 5b48559d75 Implement support for re-ordering groups of IDO queries
fixes #10855
2015-12-15 15:29:48 +01:00
Michael Friedrich 96fa29793c Avoid duplicate config and status updates on startup
fixes #10765
2015-12-15 14:25:08 +01:00
Michael Friedrich 0239acc48e Fix invalid notification_id in DB IDO query
fixes #8976
2015-12-15 11:59:06 +01:00
Michael Friedrich da3d21091c Fix priority ordering for IDO queries
fixes #10829
refs #8714
2015-12-15 11:58:50 +01:00
Gunnar Beutner 372cf07bc4 Clean up the FinishAsyncQueries code a bit
refs #8714
2015-12-14 10:34:12 +01:00
Michael Friedrich 8055f05d5e Fix cluster config sync for (non-)authoritative configs
Details: https://dev.icinga.org/issues/10819#note-39

refs #10819
2015-12-12 12:16:00 +01:00
Michael Friedrich d781c392d3 Add more debug logging for api package config sync
refs #10819
2015-12-11 17:03:07 +01:00
Michael Friedrich e5ca19b17f Fix that relative paths do not work with include_zones
fixes #10828
2015-12-11 16:58:43 +01:00
Michael Friedrich c5b13ff2b1 Fix that cluster config sync ignores zones.d directory from API config packages
fixes #10819
2015-12-10 22:21:29 +01:00
Gunnar Beutner 15ca9987fa Implement support for priorities in the WorkQueue class
fixes #8714
2015-12-10 17:06:00 +01:00
Michael Friedrich dc85b1c6fb Use NodeName instead of GetFQDN() in embedded checks
fixes #10818
2015-12-10 15:27:49 +01:00
Michael Friedrich 0813e69a41 Fix DB IDO events for next_check, etc. updates
refs #10817
2015-12-10 15:24:28 +01:00
Gunnar Beutner fba0b493cd Make sure that all strings in the IDO database are UTF8-encoded
fixes #10554
2015-12-10 12:26:19 +01:00
Michael Friedrich 407a7502ae Fix crash on startup with incorrect directory permissions
fixes #10739
2015-12-08 15:12:13 +01:00
Michael Kraus 5b7421af8c 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 10:08:01 +01:00
Gunnar Beutner 678a237739 Turn '=>' lambda expressions into side-effect-free statements
fixes #10760
2015-12-01 16:41:00 +01:00
Gunnar Beutner fd65fed6f0 Fix incorrect return value for ApiListener::GetInstance
refs #10711
2015-11-30 15:33:01 +01:00
Michael Friedrich 2a5a9d2f4b Fix missing path in mkdir() exception
fixes #10748
2015-11-30 10:37:57 +01:00
Gunnar Beutner eb4f68f28d Remove the local zone name question in node wizard
fixes #10724
2015-11-30 08:25:37 +01:00
Jean Flach 6a83703549 Update default port behaviour in node wizard
fixes #10728
2015-11-27 16:44:57 +01:00
Michael Friedrich 737c574cdf Fix missing num_hosts_pending in /v1/status/CIB
fixes #10736
2015-11-26 20:03:46 +01:00
Michael Friedrich 9289971829 Remove IcingaStatusWriter feature
fixes #10140
2015-11-26 19:30:40 +01:00
Michael Friedrich 3d4e48aa12 Livestatus: Fix "class" filter for log table
fixes #10449
2015-11-26 19:15:54 +01:00
Jean Flach 356d11b40d Fix return value in PkiUtility
refs #10632
2015-11-26 11:19:53 +01:00
Gunnar Beutner 3916ef0904 Build fix for Windows
refs #10693
2015-11-26 11:18:05 +01:00
Jean Flach b297e8cfa7 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:09:13 +01:00
Gunnar Beutner 7f9337eee8 Use the NodeName constant in 'api setup'
fixes #10641
2015-11-26 08:11:02 +01:00
Gunnar Beutner 4169bf013b Hide the --master_zone option in --help because it's not currently implemented
fixes #10720
2015-11-25 19:00:07 +01:00
Gunnar Beutner b76fee5b98 Use the ZoneName and NodeName constants for 'node setup' and 'node wizard'
refs #10716
2015-11-25 17:43:12 +01:00
Michael Friedrich f91edd9564 Use a work queue for replaying the cluster log
refs #10713
2015-11-25 13:11:41 +01:00
Michael Friedrich 3adedcd0a5 Improve performance for Zone::CanAccessObject
fixes #10711
2015-11-25 12:06:20 +01:00
Gunnar Beutner 9705e08ee0 Build fix for systems where strsignal() returns a const char * 2015-11-24 14:45:30 +01:00
Jean Flach 7029bb3aea Fix master zone name
fixes #10716
2015-11-24 14:32:07 +01:00
Gunnar Beutner 4ab6f2a985 Fix crash in ConfigItem::ActivateItems
refs #10643
2015-11-23 17:25:35 +01:00
Michael Friedrich d0545c4ea2 Fix crash in ConfigItem::ActivateItems
refs #10643
2015-11-23 14:02:33 +01:00
Gunnar Beutner 2320f7a32a Implement Platform* global variables
refs #10693
2015-11-23 13:10:25 +01:00
Gunnar Beutner 5991a878a0 Build fix for SLES 11 (with -std=c++11)
fixes #10615
2015-11-21 04:46:13 +01:00
Gunnar Beutner a805936f8f Fix: CLI command 'repository add' doesn't work
fixes #10690
2015-11-20 15:53:24 +01:00
Gunnar Beutner 3505ca3c16 Fix race condition in the ConfigItem class
fixes #10643
2015-11-19 19:38:49 +01:00
Michael Friedrich 530c7c7fcc Fix pki new-ca not checking for existing ca files
fixes #10677
2015-11-19 17:06:41 +01:00
Gunnar Beutner af441191f3 Fix crash in Process::IOThreadProc when building Icinga 2 with GCC 4.7.2
fixes #10648
2015-11-17 22:07:40 +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