Commit Graph

4099 Commits

Author SHA1 Message Date
Michael Friedrich aec231b119
Merge pull request #5811 from Icinga/feature/update-constants-conf-api-setup
Update NodeName/ZoneName constants with 'api setup'
2017-12-07 17:35:46 +01:00
Michael Friedrich f8e102c15a Fix newline terminator for bulk requests in ElasticsearchWriter
This enables compatibility with 6.x.

This commit also fixes an incorrect HTTP response parsing
which could lead into false positives.

Analysis and fix in https://github.com/Icinga/icinga2/issues/5795#issuecomment-349920587

fixes #5795
2017-12-07 11:11:03 +01:00
Michael Friedrich da056b052b
Merge pull request #5827 from Icinga/feature/replace-statsfunction-with-function
Replace StatsFunction with Function
2017-11-30 21:28:32 +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 a344f11e6c Replace StatsFunction with Function 2017-11-30 19:02:25 +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 59fca5d5ac Use std::vector instead of std::set where appropriate 2017-11-30 17:47:09 +01:00
Gunnar Beutner 2e87c280ed Use initializer lists instead of std::vector::push_back 2017-11-30 17:47:09 +01:00
Gunnar Beutner ebc11d41a5 Tidy up INITIALIZE_ONCE use in console.cpp a bit 2017-11-30 17:47:09 +01:00
Gunnar Beutner 63fd6e3905 Get rid of INITIALIZE_ONCE for the ExternalCommandProcessor 2017-11-30 17:47:09 +01:00
Gunnar Beutner 9ce950b0f1 Replace boost::ref/boost::cref with std::ref/std::cref 2017-11-30 17:47:09 +01:00
Gunnar Beutner df8266631d Replace boost::tuple with std::tuple 2017-11-30 17:41:02 +01:00
Gunnar Beutner 160ab21e59 Replace CheckResult::StaticInitialize with a lambda function 2017-11-30 17:41:02 +01:00
Gunnar Beutner 6739023678 Dynamically create and destroy the timer thread 2017-11-30 17:41:02 +01:00
Gunnar Beutner 6d09efc907 Use std::shared_ptr instead of boost::shared_ptr 2017-11-30 17:41:00 +01:00
Gunnar Beutner 245feca0e7 Move the Timer::Holder class to timer.cpp 2017-11-30 17:39:22 +01:00
Gunnar Beutner 300d424459 Use std::promise instead of boost::promise 2017-11-30 17:39:22 +01:00
Gunnar Beutner 7d7eaa8dd3 Replace boost::thread with std::thread 2017-11-30 17:39:20 +01:00
Gunnar Beutner c6e36723d5
Merge pull request #5819 from Icinga/feature/avoid-func-call-allocations
Avoid unnecessary allocations in the FunctionCallExpression class
2017-11-29 14:24:46 +01:00
Gunnar Beutner db6a1fcdb7 Avoid unnecessary allocations in the FunctionCallExpression class 2017-11-29 14:11:09 +01:00
Gunnar Beutner d5961bb76c Re-implement WrapFunction() using C++11 features 2017-11-29 11:53:45 +01:00
Gunnar Beutner f3c825cb86
Merge pull request #5803 from Icinga/feature/cxx11-std-bind
Replace boost::bind/boost::function with std::bind/std::function
2017-11-29 08:28:44 +01:00
Michael Friedrich f267135711 Update NodeName/ZoneName constants with 'api setup'
This commit also moves the constants.conf backup logic
into NodeUtility::UpdateConstant() where it belongs.

Logging has been slightly adopted too.

fixes #5763
2017-11-28 13:38:53 +01:00
Michael Friedrich 8e65aa0677
Merge pull request #5804 from Icinga/fix/update-repository-message-error
Silence UpdateRepository message errors
2017-11-28 11:27:12 +01:00
Gunnar Beutner 1006ea0433 Fix missing variable name which can lead to segfaults 2017-11-27 16:06:59 +01:00
Gunnar Beutner 858873b940 Replace boost::bind/boost::function with std::bind/std::function 2017-11-27 15:15:11 +01:00
Gunnar Beutner 6b3931973e
Merge pull request #5555 from Icinga/feature/ecc-certs
Implement support for ECC certificates
2017-11-27 15:11:04 +01:00
Jean Flach 27aaa10ee9
Merge pull request #5718 from Icinga/fix/verify-error-codes-and-returned-log-messages-in-api-actions-5550
API: Fix http status codes
2017-11-27 14:41:29 +01:00
Noah Hilverling e31b236cba API: Fix http status codes
fixes #5550
2017-11-27 14:06:38 +01:00
Michael Friedrich cf16324320 Silence UpdateRepository message errors
Mixed setups with 2.8 and 2.7 will log this error every time
a new message is received. While this is truly an error,
it just fills the log to infinity. Should be used for debug only.

fixes #5776
2017-11-27 12:09:42 +01:00
Gunnar Beutner 3a8d4c5920
Merge pull request #5716 from spaolo/fix/livestatus-empty-result-with-nonmatch-filter-5626
add bogus zero reply in livestatus when aggregate and non matching filter
2017-11-27 10:35:05 +01:00
Gunnar Beutner 4fcb1af8fa
Merge pull request #5746 from sni/livestatus_should_return_empty_lists
livestatus: custom variables return empty arrays instead of strings
2017-11-27 10:33:32 +01:00
Gunnar Beutner 57e74372d3
Merge pull request #5675 from froehl/feature/influxdbwriter-perf-unit-5627
Add pdv unit to influxdbwriter if not empty + doc
2017-11-27 10:32:44 +01:00
Gunnar Beutner 55b1cce248
Merge pull request #5744 from Icinga/feature/embedded-dummy-check
Implement DummyCheckTask and move dummy into embedded in-memory checks
2017-11-27 10:25:43 +01:00
Gunnar Beutner 734efb3569
Replace spaces with tabs 2017-11-27 10:24:12 +01:00
Gunnar Beutner 81ae14cd17
Merge pull request #5729 from Icinga/fix/correct-node-wizard-output-formatting
Correct node wizard output formatting
2017-11-27 10:19:12 +01:00
Gunnar Beutner 1b4206e5b1
Merge pull request #5725 from Icinga/feature/proper-uuids
Use real UUIDs for Utility::NewUniqueID
2017-11-27 10:18:52 +01:00
Gunnar Beutner 093e08e3da
Merge pull request #5388 from leeclemens/fix/clang-misdetection
Handle mis-detection with clang on RHEL/CentOS 7
2017-11-27 10:17:52 +01:00
Gunnar Beutner 65bc62266d Fix error reporting for 'icinga2 console -r' 2017-11-24 12:56:42 +01:00
Michael Friedrich 35f0df3fe5 Disable Flapping detection on Windows 2017-11-17 12:59:07 +01:00
Gunnar Beutner 52692a008e Fix incorrect socket handling for the HTTP client 2017-11-15 09:53:38 +01:00
Noah Hilverling c10f0a639b RingBuffer: Add CalculateRate()
refs #5750
2017-11-14 11:06:56 +01:00
Noah Hilverling 054faa54d5 Return bytes sent/written in SendMessage() and WriteStringToStream()
refs #5509
2017-11-14 08:18:23 +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
Sven Nierlein 7bf5b3ff42 livestatus: custom variables return empty arrays instead of strings
livestatus queries for custom variables should return an empty list, ex: []
instead of an empty string if there are no variables.

Signed-off-by: Sven Nierlein <sven@nierlein.de>
2017-11-10 14:53:37 +01:00
Michael Friedrich 6d9a0b7145 Implement DummyCheckTask and move dummy into embedded in-memory checks
This replaces the previous "dummy" CheckCommand, and the user won't
notice it. Provided performance data will be parsed the same way.

This saves a shell fork and check_dummy execution.

We're relying on this when creating cluster checks with Icinga 2 DSL
and more. If one does not have the plugins installed, this then also works.

fixes #5740
2017-11-09 20:19:31 +01:00
Michael Friedrich 7c0a09cfb6 Rename ElasticWriter to ElasticsearchWriter
This better reflects its purpose as otherwise it would imply
that you need Elastic Stack for it. Graylog also reads from
Elasticsearch instances, this could serve as additional integration
here.
2017-11-09 15:33:10 +01:00
Paolo Schiro 490b822f38 add a bogus zero reply in livestatus if aggregate filter does not match, fix I#5626 2017-11-09 01:32:30 +01:00
Jean Flach f4a1747e14
Merge pull request #5732 from Icinga/fix/flapping
Fix flapping calculation and events

fixes #5720
2017-11-08 15:10:55 +01:00
Michael Friedrich 41d54029c8 Fix log messages for flapping 2017-11-08 12:12:27 +01:00
Noah Hilverling e6f94ff203 Correct node wizard output formatting 2017-11-08 09:04:25 +01:00
Lee Clemens 9fdfa5ee10 Handle mis-detection with clang on RHEL/CentOS 7
C++11 features available: BOOST_NO_CXX11_HDR_TUPLE

refs #5257
2017-11-08 08:34:45 +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
Eric Lippmann 6f6703042e ido: Drop unused instance_id indices from comments, downtimes and their related history tables 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
Gunnar Beutner 6f8b62333f Use real UUIDs for Utility::NewUniqueID 2017-11-07 13:53:04 +01:00
Jean Flach 872d4895f0 Fix flapping endianness and events
fixes #5720
2017-11-07 11:13:17 +01:00
Michael Friedrich 260c6d7438 Node setup: ticket parameter is now optional
refs #5681
2017-11-03 14:10:45 +01:00
Michael 86cdc5bc53 Include default global zones during node wizard/setup
This changes the GenerateNodeMasterIcingaConfig and GenerateNodeIcingaConfig
functions inside the nodeutillity class to the effect, that the default global
zones global-templates and director-global will be written to the generated
zones.conf that is created during the node wizard/setup.

refs #5707

Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-10-31 12:07:12 +01:00
Jean Flach 9ba5b4f4b7 Merge pull request #5693 from Icinga/fix/flapping-old-4982
Re-implement flapping

fixes #4982
2017-10-24 16:58:59 +02: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
Gunnar Beutner 2bbb5366fd Merge pull request #5620 from Icinga/fix/api-staging-3668
WIP: Ensure that the REST API config package/stage creation is atomic
2017-10-24 12:51:09 +02:00
Noah Hilverling 3e8f78e2cc Process: Fix fork error handling
refs #5617
2017-10-23 11:01:42 +02:00
Noah Hilverling 7930ae5094 Process: Remove log message from child process 2017-10-23 11:01:16 +02:00
Gunnar Beutner f2d437e96c Implement support for migrating certificates to /var/lib/icinga2/certs
This commit includes documentation too.

Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-10-20 14:06:02 +02:00
Jean Flach aad96d6b09 Improve error message for unknow functions
refs #5686
2017-10-18 11:25:38 +02:00
Michael Friedrich 9d68ae9f1f Merge pull request #5602 from Icinga/fix/config-validation-fails-on-windows-with-unprivileged-account-5515
Add windows process elevation and log message if user does not have privileges to read/write files
2017-10-13 16:31:12 +02:00
Fabian Röhl 82794474e6 Add pdv unit to influxdbwriter if not empty + doc
refs #5627
2017-10-13 14:54:00 +02:00
Michael Friedrich 0b1ce7111c Merge pull request #5231 from Al2Klimov/bugfix/failure-to-kill-check-command-after-exceeding-timeout-is-not-reported-4981
Report failure to kill check command after exceeding timeout
2017-10-13 13:57:26 +02:00
Michael Friedrich 77ecdbd85c Merge pull request #5581 from Icinga/fix/api-crash-race-condition
Fix possible race condition in ApiListener locking
2017-10-12 13:40:59 +02:00
Michael Friedrich 87979fd0a1 Merge pull request #5637 from Icinga/fix/influxdb-unnecessary-string-casts
Fix unnecessary String() casts in InfluxdbWriter
2017-10-12 13:22:43 +02:00
Michael Friedrich 9a04a99400 Merge pull request #5554 from Icinga/feature/cn-check-for-san
Add subjectAltName extension for all non-CA certificates
2017-10-10 17:50:01 +02:00
Michael Friedrich ff570ad060 Merge pull request #5636 from Icinga/fix/db-ido-comments-downtimes-constraint-on-legacy-id-change
Fix unique constraint matching for UPDATE downtime/comment runtime tables in DB IDO
2017-10-10 17:47:47 +02:00
Michael Friedrich 06403c1147 Merge pull request #5635 from Icinga/fix/match-with-empty-array
Fix match(), regex(), cidr_match() behaviour with MatchAll and empty arrays
2017-10-10 17:46:51 +02:00
Michael Friedrich a521f49803 Fix debug builds on Apple Clang 9.0.0 (macOS High Sierra) 2017-10-02 13:49:42 +02:00
Michael Friedrich b9cfd4d2e9 Fix unnecessary String() casts in InfluxdbWriter
fixes #5629
2017-09-29 16:33:08 +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
Michael Friedrich c0a3de64fb Fix match(), regex(), cidr_match() behaviour with MatchAll and empty arrays
fixes #5634
2017-09-29 14:45:15 +02:00
Gunnar Beutner 92727d13c7 Fix a build warning
refs #5443
2017-09-25 12:15:59 +02:00
Michael Friedrich 953d840cc1 Fix certificate paths for installers
refs #5450
2017-09-22 15:00:45 +02:00
Michael Friedrich 11c41cd747 Drop unused code from NodeUtility class
refs #4799
2017-09-22 14:05:08 +02:00
Michael Friedrich 68cae91378 Remove bottom-up cluster messages
refs #4799
2017-09-22 14:04:53 +02:00
Michael Friedrich 601c10b997 Remove bottom-up CLI commands
refs #4799
2017-09-22 14:04:43 +02:00
Noah Hilverling aab50f669c Add process elevation & log message if user does not have enough privileges
refs #5515
2017-09-22 10:25:17 +02:00
Jean Flach 79166a31d4 Revert "Add Log Warning in case active-stage is empty"
This reverts commit 287f72b0a0.
2017-09-21 13:54:29 +02:00
Jean Flach 287f72b0a0 Add Log Warning in case active-stage is empty
Maybe Critical instead? Throwing an exception seems unnecessary.

refs #3668
2017-09-20 17:57:14 +02:00
Michael Friedrich 74d13345dc Merge pull request #5587 from Icinga/feature/custom-syslog-facility-option-on-sysloglogger-object-3964
SyslogLogger: Implement option to set syslog facility
2017-09-20 17:25:58 +02:00
Jean Flach ef5013b903 Use locks in api config staging
refs #3668
2017-09-20 16:45:09 +02:00
ryanohnemus 1cb39994a5 API: Add optional reload parameter to config stage upload
You can now specify a boolean `reload` attribute that
will allow you to skip the icinga2 reload after config
validation. By default this is set to true.

The response text has been updated to show if icinga2
will reload or if it was requested to be skipped.

fixes #4769
2017-09-20 14:16:55 +02:00
Noah Hilverling ea24af6590 SyslogLogger: Implement option to set syslog facility
fixes #3964
2017-09-20 14:09:51 +02:00
Michael Friedrich 7bdeeeadcf Silence log level for configuration file updates
This only helps with debugging the configuration sync, but seems
to be highlighted quite often in default configurations (where
the timestamp is equal).

refs #5566
2017-09-20 13:30:02 +02:00
Noah Hilverling 94fe1b2292 HttpServerConnection: Implement CORS support
fixes #4326
2017-09-20 13:18:29 +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
Jean Flach 4df1125114 Fix Windows build error
fixes #5584
2017-09-18 17:47:08 +02:00
Michael Friedrich 9948bee51c Fix API crash with race condition on locks
This was split from #5416 and #5419.

More patches from #5419 are pending.

refs #5419
refs #5418
refs #5416

refs #5408
refs #5148
refs #5007
refs #4968
refs #4910
2017-09-18 15:25:29 +02:00
Gunnar Beutner 5179faceab Implement new script functions: path_exists, glob and glob_recursive 2017-09-18 13:59:03 +02:00
Gunnar Beutner 80421e4619 Build fix for OpenSSL < 1.0.2
refs #5450
2017-09-12 13:09:16 +02:00
Michael Friedrich 578dcbe861 Add some more verbose logging details
refs #5450
2017-09-12 12:52:50 +02:00
Michael Friedrich 501ade374c Remove debug logging, fix ticket path, enhance logging
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 043106242d Remove API stubs for now
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 88e57f7fd4 Implement support for cleaning up certificate requests
refs #5450
2017-09-12 12:52:49 +02:00
Michael Friedrich 0a85977831 Node Wizard: Tell the user to put ca.crt if no connection to parent is selected
This also fixes the choice tree for connection-less questions
and prevents empty tickets being stored on disk.

refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 2fec16952d Remove unused code
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner f43516a097 Implement the --verbose option for "node wizard"
refs #5450
2017-09-12 12:52:49 +02:00
Michael Friedrich e424017c15 Refactor the node wizard/setup CLI commands
refs #5450
2017-09-12 12:52:49 +02:00
Michael Friedrich 181b91b759 Enhance logging for certificate requests
Examples:
https://github.com/Icinga/icinga2/issues/5450#issuecomment-327479874

This also adds code comments where applicable.

refs #5450
2017-09-12 12:52:49 +02:00
Michael Friedrich ce88e89cc0 Fix wrong cert path for CLI commands
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner a7fe6467ba Improve log messages for the 'pki save-cert' command
refs #5450
2017-09-12 12:52:49 +02:00
Michael Friedrich 8040bda2e1 Change directory layout to /var/lib/icinga2/{ca,certs,certificate_requests}
refs #5450
2017-09-12 12:52:49 +02:00
Michael Friedrich 88b4a54e6b Fix ticket hash calculation for indirectly connected clients
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner c02742925e Refactor PkiUtility class
refs #5450
2017-09-12 12:52:49 +02:00
Michael Friedrich 1e7860f2b1 Implement ApiListener::Get*Dir() functions
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 6a533796e5 Update output format for the new CLI commands
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 774936bfe8 Implement support for pki::UpdateCertificate messages
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 623208d617 Implement support for forwarding certificate requests
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 03f5ccd252 Implement support for cleaning up expired API callbacks
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner cc43dc734b Refuse to sign certificate if it already has the correct chain and doesn’t expire soon
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 440f848c7c Improve error handling for JSON-RPC calls
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner a8cc0a601b Add missing _unlink() calls for Windows
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner cb49ac1264 Delete ticket file once we have a signed certificate
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 4cfbf6eb17 Disconnect all clients when we update our own certificate
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 439251532e Implement support for saving client tickets
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 192502f9e5 Implement support for reloading SSL certificates without a restart
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 0ec07bce51 Implement support for updating client certificates
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner cdff792c11 Make the ticket optional in 'icinga2 node wizard'
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 8d05fc99c9 Improve message formatting for the 'icinga2 node wizard' command
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner a4684d1bfd Implement support for sending pki::RequestCertificate messages in the cluster
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner b08f5477dc Change PKI path from /etc/icinga2/pki to /var/lib/icinga2/pki
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner abdd4b307b Implement the 'ca list' and 'ca sign' CLI commands
refs #5450
2017-09-12 12:52:49 +02:00
Gunnar Beutner 510e2d622a Implement support for ticket-less certificate requests
refs #5450
2017-09-12 12:52:49 +02:00
Michael Friedrich 1d75a15d8e ElasticWriter: Implement support for TLS connections (HTTP proxy)
This commit also enhances the log messages.

refs #5538
2017-09-12 12:52:49 +02:00
Michael Friedrich 95fbd75df8 ElasticWriter: Add basic auth support for Elasticsearch behind an HTTP proxy
refs #5538
2017-09-12 12:52:49 +02:00
Michael Friedrich 344b047ea0 Move Base64 class into libbase
refs #5538
2017-09-12 12:52:49 +02:00
Michael Friedrich 386b9de042 Drop obsolete code
refs #4054
2017-09-12 12:52:49 +02:00
Jean Flach e19d3f57c7 Add ElasticWriter
fixes #5538
2017-09-12 12:52:49 +02:00
Michael Friedrich 9e17ff874b Logs: Change config sync update to highlight an information, not an error
fixes #5484
2017-09-12 12:52:49 +02:00
Gunnar Beutner b316de8aea Implement additional logging for the JsonRpc class 2017-09-12 12:52:49 +02:00
Jean Flach de51966f52 Don't sent scheme and hostname in request 2017-09-06 16:01:02 +02:00
Gunnar Beutner 10691db5b1 Implement support for ECC certificates 2017-09-06 12:29:30 +02:00
Gunnar Beutner 3385122bc3 Add subjectAltName extension for all non-CA certificates 2017-09-06 12:25:36 +02:00
Federico Cuello a6b4bd48e2 Fix parameter order for Acknowledge{,Svc,Host}Problem in API actions/external commands
It was preventing email notifications with default settings, as `persistent` defaults to false and therefore `notify` was not set.

Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-09-05 08:50:22 +02:00
Michael Friedrich 261bd93c0b Implement get_services(host {name,object}) and add host object support for get_service()
This includes some debug console examples too which involve advanced
map() and filter examples for better readability.

refs #4912
2017-08-28 19:54:26 +02:00
Michael ac0fdd7144 Change more loglines for checkables so checkable is quoted
refs #5528
2017-08-24 13:35:55 +02:00
Thomas Widhalm de9a097a97 Change loglines for checkables so checkable is quoted 2017-08-23 19:11:46 +02:00
Michael Friedrich e88b97079c API: Add execution_{start,end} attribute to 'process-check-result' action
fixes #5002
2017-08-21 17:20:56 +02:00
Michael Friedrich 445ee949da Merge pull request #5523 from Icinga/feature/enhance-client-connect-logging
Enhance client connect/sync logging and include bytes/zone in logs
2017-08-21 11:36:52 +02:00
Michael Friedrich 778c742b75 Merge pull request #5524 from Icinga/fix/cluster-fifo-optimize
Change FIFO::Optimize() frequency for large messages
2017-08-21 11:36:32 +02:00
Michael Friedrich 873a553a4f Enhance client connect/sync logging and include bytes/zone in logs
refs #5513
2017-08-21 11:31:24 +02:00
Michael Friedrich 732a5849d5 Change FIFO::Optimize() frequency for large messages
refs #5513
2017-08-21 11:24:39 +02:00
Michael Friedrich d075665d1b Merge pull request #5486 from Icinga/feature/remove-deprecated-graphite-legacy-mode
Graphite: Remove deprecated legacy schema mode
2017-08-17 20:06:47 +02:00
Michael Friedrich cb94b218a6 Merge pull request #5504 from spjmurray/fix/influxdb_timeouts_5460_5469
Fix TLS Race Connecting to InfluxDB
2017-08-17 18:25:17 +02:00
Michael Friedrich 52dcce972f Livestatus: Fix crash with empty stats columns
refs #5078
refs #5503
2017-08-16 15:28:15 +02:00
Michael Friedrich a43ae941b6 Merge pull request #5497 from Icinga/fix/api-object-query-type-error
API: Fix requested attrs/joins/meta type errors in object query response
2017-08-15 12:52:33 +02:00
Simon Murray abc3652b00 Fix TLS Race Connecting to InfluxDB
Rather than leaving stale connections about we tried to poll for data coming in
from InfluxDB and timeout if it didn't repond in a timely manner.  This introduced
a race where the timeout triggers, a context switch occurs where data is actually
available and the TlsStream spins trying to asynchronously notify that data is
available, but which never gets read.  Not only does this use up 100% of a core,
but it also slowly starves the system of handler threads at which point metrics
stop being delivered.

This basically removes the poll and timeout, any TLS socket erros should be
detected by TCP keep-alives.

Fixes #5460 #5469
2017-08-14 16:20:49 +01:00
Gunnar Beutner 6bc79b6b37 Merge pull request #5503 from Icinga/fix/livestatus-stats-groups
Fix grouping for Livestatus queries with 'Stats'
2017-08-14 16:19:18 +02:00
Gunnar Beutner 5402c1d610 Fix grouping for Livestatus queries with 'Stats'
refs #5078
2017-08-14 15:30:06 +02:00
Noah Hilverling 5b9337e130 Process: Fix JSON parsing error on process helper crash 2017-08-14 08:27:04 +02:00
Stefar77 6b66e332fb API: Fix requested attrs/joins/meta type errors in object query response
fixes #5377

Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-08-11 16:23:29 +02:00
Gunnar Beutner 4d943c7f5c Implement additional functions for printing values with LLDB/GDB 2017-08-10 08:26:22 +02:00
Michael Friedrich eb5e299c4b Graphite: Remove deprecated legacy schema mode
This commit includes some code cleanup too.

fixes #4992
2017-08-09 18:52:35 +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
Michael I 3e54e34147 Update featurelistcommand.cpp
refs #5431
2017-07-25 13:35:20 +02:00
Gunnar Beutner c8b4fee843 Make rlimits configurable by adding three variables: RLimitFiles, RLimitProcesses and RLimitStack
refs #5367
2017-06-23 12:42:12 +02:00
Michael Friedrich 6397fedc3d Remove experimental redis feature before 2.7 release 2017-06-20 11:52:24 +02:00
Michael Friedrich 6ab5839f2f Merge pull request #5360 from Icinga/fix/wheezy-livestatus-dbl_max
livestatus/minaggregator: Buildfix for Debian wheezy
2017-06-19 17:27:11 +02:00
Markus Frosch e8681658b6 livestatus/minaggregator: Buildfix for Debian wheezy 2017-06-19 08:42:56 +02:00
mcktr 53908b7080 Fixed missing closing bracket in CLI command pki new-cert. 2017-06-18 15:13:16 +02:00
Michael Friedrich 67bd6d1813 Merge pull request #5316 from gitmopp/patch-1
Fix for stats min operator

fixes #3410
2017-06-16 21:02:17 +02:00
Michael Friedrich 6036ec20f5 Build fix for Debian Wheezy
fixes #5350
2017-06-16 16:57:05 +02:00
Michael Friedrich c6b375dcbd Merge pull request #5239 from Icinga/feature/check_nscp-4721
Add NSCP API check plugin for NSClient++ HTTP API
2017-06-13 21:56:58 +02:00
Jean Flach 39c24e9ec9 Add check_nscp_api plugin for NSClient++ API checks
refs #4721
2017-06-13 21:17:16 +02:00
Gunnar Beutner f9feb41877 Implement support for handling exceptions in user scripts 2017-06-13 14:03:41 +02:00
Michael Friedrich 2a4359d7e8 Windows build fix for InfluxdbWriter
refs #5219
fixes #5334
2017-06-07 14:16:15 +02:00
Michael Friedrich 89ac5b2fff GelfWriter: Add 'check_command' to CHECK RESULT/* NOTIFICATION/STATE CHANGE messages
This allows for much more easy filtering in Graylog web
similar to Graphite or InfluxDB and their template dashboards.
2017-06-06 20:23:26 +02:00
Michael Friedrich 41a400f552 Merge pull request #5330 from Icinga/feature/graphite-stats
GraphiteWriter: Add 'connected' to stats; fix reconnect exceptions
2017-06-06 20:13:33 +02:00
Michael Friedrich f42b820007 GraphiteWriter: Add 'connected' to stats; fix reconnect exceptions 2017-06-06 19:50:37 +02:00
Michael Friedrich f10815efa2 GelfWriter: Use async work queue and add feature metric stats
fixes #4532
2017-06-06 19:48:23 +02:00
gitmopp 65ed89c48d Fix for stats min operator
Fix for bug #3410
2017-06-01 19:30:04 +02:00
Gunnar Beutner 7ca485f63c Improve validation for attributes which must not be 'null' 2017-05-30 14:47:28 +02:00
Gunnar Beutner c9039e1850 Merge pull request #5292 from Icinga/fix/openssl-0.9.8-subjectaltname
Build fix for OpenSSL 0.9.8 and stack_st_X509_EXTENSION

fixes #5292
2017-05-29 09:45:34 +02:00
Gunnar Beutner 1fd2695e02 Fix compiler warnings
refs #5287
2017-05-29 09:13:19 +02:00
mcktr 9e1016dd4f Fix missing apostrophe in notification log
refs #5294
2017-05-26 17:58:04 +02:00
Michael Friedrich dab2522acc InfluxDB: Optimize work queue event handling
refs #5219
2017-05-26 17:11:13 +02:00
Michael Friedrich d0dcb8a658 ApiListener: Handle zero JSON-RPC WQs gracefully for stats
refs #5266
refs #5133
2017-05-26 17:02:36 +02:00
Michael Friedrich 28395b32f0 GraphiteWriter: Use a workqueue for event processing
This also adds reconnect handling and exceptions.

refs #5132
refs #5133
refs #5280
2017-05-26 15:18:14 +02:00
Michael Friedrich 79c45ea811 Build fix for OpenSSL 0.9.8 and stack_st_X509_EXTENSION 2017-05-26 13:16:20 +02:00
Michael Friedrich 647d82094f InfluxDB: Remove obsolete logger, now implemented in WorkQueue class
refs #5280
refs #5133
2017-05-24 17:01:46 +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 d366a63510 Add API & Cluster stats to /v1/status & icinga check performance metrics
refs #5133
2017-05-24 16:21:05 +02:00
Michael Friedrich b7358334fc Add feature stats to 'icinga' check as performance data metrics 2017-05-23 17:28:54 +02:00
Michael Friedrich 456cfdc636 Implement WorkQueue metric stats and periodic logging
refs #5133
2017-05-23 16:00:21 +02:00
Michael Friedrich 52d986d02b Revert "Add LogstashWriter feature"
This reverts commit f5a971f5b0.

refs #4054
2017-05-23 12:05:01 +02:00
Michael Friedrich 4c7660190f Revert "Review LogstashWriter feature implementation"
This reverts commit bd5ff814f2.

refs #4054
2017-05-23 12:04:08 +02:00
Gunnar Beutner fa874e659b Build fix for I2_LEAK_DEBUG 2017-05-22 11:42:47 +02:00
Gunnar Beutner 7130e5e387 Merge pull request #5264 from Icinga/feature/array-match
Implement new array match functionality

fixes #5264 
fixes #5263
2017-05-16 14:22:35 +02:00
Gunnar Beutner 958d3982c5 Add 'mode' argument for match, regex and cidr_match 2017-05-16 13:22:10 +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
Gunnar Beutner dc9f129060 Implement the Array#any and Array#all protoype functions 2017-05-15 15:59:44 +02:00
Gunnar Beutner 1b77f4b336 Implement the Dictionary#values prototype function 2017-05-15 15:54:48 +02:00
Michael Friedrich 37f7c7a294 Merge pull request #5262 from Icinga/fix/graylog-perfdata
Fix performance data processing in GelfWriter feature

fixes #4666
2017-05-15 14:08:39 +02:00
Michael Friedrich 2338db5f6a Fix performance data processing in GelfWriter feature
Includes fixes for possible crashes on empty check results.

fixes #4666
2017-05-15 13:46:43 +02:00
Gunnar Beutner 7e3b664140 Add missing ->GetName() calls
fixes #5256
2017-05-15 11:11:08 +02:00
Michael Friedrich f282126bb4 Don't allow acknowledgement expire timestamps in the past
fixes #5250
2017-05-15 10:23:21 +02:00
Alexander A. Klimov 8bf3ab0285 Produce an unknown check result if we failed to kill the process
refs #4981
2017-05-12 15:25:22 +02:00
Michael Friedrich 3753f53a67 Fix cluster crash w/ config sync
refs #5212
2017-05-12 10:48:11 +02:00
Michael Friedrich ec6247ca35 Merge pull request #5247 from Icinga/feature/cluster-log-message
Add target object in cluster error messages to debug log

fixes #4288
2017-05-11 16:13:01 +02:00
Michael Friedrich 0f1aa23575 Add target object in cluster error messages to debug log
fixes #4288
2017-05-11 16:10:40 +02:00
Gunnar Beutner b366483466 Add subjectAltName X509 ext for certificate requests 2017-05-11 15:38:17 +02:00
Michael Friedrich 8d56f8e951 Fix that host downtimes might be triggered even if their state is Up
If the checkresult's state is 1, this is internally mapped to Up.
The added downtime will check for triggers and might cause a wrong
downtime start event.

refs #5202
2017-05-11 15:05:50 +02:00
Gunnar Beutner 1c255140b5 Merge pull request #5242 from Icinga/feature/object-decl-expr
Allow expressions for the type in object/template declarations

fixes #5242
2017-05-11 14:30:29 +02:00
Gunnar Beutner d05b7c4178 Allow expressions for the type in object/template declarations 2017-05-11 14:21:30 +02:00
Simon Murray fc2c2d9a29 Verbose InfluxDB Error Logging
On a non 204 response we parse the HTTP response until complete e.g. do the headers
and body, not just the header.  A new interface is added to the response to allow us
to determine the body size so that it may be read out and buffered.  The body is
parsed and any error message printed out.  In the event that the parsing fails the
raw body is dumped out; better than nothing!

fixes #4411

Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-05-11 12:13:41 +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 452f8a1f0d Merge pull request #5042 from mbrgm/upgrade-docs-link
Add link to upgrade documentation to DB IDO log message
2017-05-09 16:17:58 +02:00
Gunnar Beutner c611a31670 Fix code style issues
refs #5219
2017-05-09 09:01:08 +02:00
Gunnar Beutner f9b34cca30 Fix compiler warning
refs #5219
2017-05-08 08:47:27 +02:00
Michael Friedrich 3649a5a0d7 InfluxdbWriter: Use a work queue for async message processing; add stats log/api 2017-05-05 17:56:51 +02:00
Alexander A. Klimov c45529b407 Report failure to kill check command after exceeding timeout
refs #4981
2017-05-05 17:31:14 +02:00
Michael Friedrich f9e0fd2e3e Beautify some log message for cluster config sync
refs #5212
2017-05-04 15:21:32 +02:00
Gunnar Beutner dadc21e12a Merge pull request #5225 from Al2Klimov/bugfix/mysql_init-mysql_error-3664
Don't call mysql_error() after a failure of mysql_init()

fixes #3664
2017-05-04 14:58:55 +02:00
Alexander A. Klimov 0da226163f Don't call mysql_error() after a failure of mysql_init()
refs #3664
2017-05-04 12:22:34 +02:00
Gunnar Beutner f9f3358d09 Make sure all objects are set to 'active' before calling the Start() method
fixes #5224
2017-05-04 10:37:34 +02:00
Gunnar Beutner 4134f7fe42 Make sure modified attributes are applied before calling the objects' Start method
refs #4696
2017-05-03 12:02:19 +02:00
Jean Flach 7c70d51b27 Add a few extra log messages
fixes #5212
2017-05-02 10:54:06 +02:00
Jean Flach e29e25aefd Fix timestamp path
fixes #5211
2017-05-02 10:30:42 +02:00
Michael Friedrich 35f6f60390 Docs: Fix invalid/redirected URLs
fixes #5150
2017-04-28 17:02:13 +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 b62241e0ba Remove redundant #include
refs #5168
2017-04-27 09:24:37 +02:00
Gunnar Beutner d03d09160a Clean up the IsAbsolutePath patch
refs #5168
2017-04-27 05:31:44 +02:00
Jean Flach 293625c17b Fix absolute include paths for windows
fixes #5168
2017-04-24 15:39:21 +02:00
Michael Friedrich d7b939d99b Redis: Dump severity field to icinga:{host,service}state
refs #5117
2017-04-20 16:48:00 +02:00
Andreas Scherbaum 775bee8fe1 Replace http:// links with https:// links where a secure website exists
Leave out tests and third party tools, and license strings

fixes #5151

Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-04-20 11:33:27 +02:00
Gunnar Beutner 0f81c357c0 Implement source_location attribute for the ConfigObject class
refs #5120
2017-04-19 15:30:11 +02:00
Michael Friedrich dc7980586b Implement severity attribute for host/service objects
refs #5117
2017-04-13 16:09:31 +02:00
Michael Friedrich 17615ac444 Redis: Dump host and service state events
fixes #5163
2017-04-12 16:58:08 +02:00
Michael Friedrich e4ae789a7c Set zone attribute to no_user_modify for API POST requests
fixes #5166
2017-04-12 09:25:28 +02:00
Gunnar Beutner c32badaff5 Add missing base class call for ScheduledDowntime::ValidateRanges()
fixes #5146
2017-04-06 11:25:40 +02:00
Jean Flach 1459970986 Add missing header
fixes #5135
2017-04-05 10:26:54 +02:00
Thomas Gelf ed2ebdf0d0 RedisWriter: publish Icinga 2 stats as a simple "keepalive"
Use case: a reader subscribes to config changes. As they happen rarely, chances
are good that the connection will time out in the meantime. Now, a reconnect is
easy - but you wouldn't know whether you missed any config changes. So you are
required to issue a new sync to be on the safe side. Given a 60sec connection
timeout (think: SSL layer, firewalls etc) when no traffic happens this would be
too expensive.

Some kind of a heartbeat available for subscription would allow subscribers to
artificially keep the connection alive. As a first simple solution to this I'd
suggest to publish CIB data, that might be useful anyways.

refs #4991
fixes #5098

Signed-off-by: Michael Friedrich <michael.friedrich@icinga.com>
2017-03-29 10:17:03 +02:00
Michael Friedrich 2f84ff84b2 Fix object deletion on restart
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich f76f655dc1 Rename source file
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich af3e2c429f Add exception handler for Redis WorkQueue
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich a5556cbaae Add log message for config/status dump end for Redis
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich 91b8decaac Fix possible crash on startup status updates in Redis
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich 3310cc30ae Fix hash value for empty custom attributes
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner 9de4c8bc58 Fix memory leak in RedisWriter::ExecuteQuery
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner dac9775b93 Add COUNT parameter for SCAN
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner 28b2345a3b Updated remaining queries to use ExecuteQuery()
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner 844e2bf68c Replace existing queries with ExecuteQuery() calls
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich fcd9e3666d Implement config dump/update/delete publishing; fix runtime created object creation
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner 75bfd775b9 Implement RedisWriter::ExecuteQuery
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich f29a82bcfe Add properties and vars config checksums
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner 6178ca3886 Use GetHostService() instead of casts
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner 6b48a36192 Implement the db_index property for the RedisWriter class
fixes #5081
2017-03-29 10:17:03 +02:00
Gunnar Beutner 1bbdd082b0 Use transactions for the initial config and status updates
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner c64d296edb Make sure to use pretty-printed checksums in JSON blobs; remove semicolons
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner 2d9be77260 Clean up the code a bit
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner 0c25d14d0c Fix crash in SHA1
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner 2773d93d40 Update log message
refs #4991
2017-03-29 10:17:03 +02:00
Michael Friedrich 0b466aabc0 Start working on checksum config dump
refs #4991
2017-03-29 10:17:03 +02:00
Gunnar Beutner 50310fb5bc Add missing arguments
refs #5087
2017-03-28 13:24:21 +02:00
Michael Friedrich 900b33dc5d IDO: Do not terminate Icinga 2 if the database schema version does not match
Instead, log an error and continue.

fixes #4440
2017-03-28 10:16:07 +02:00
Gunnar Beutner 5d45c74be3 Improve function metadata by adding arguments
fixes #5087
2017-03-27 14:43:19 +02:00
Gunnar Beutner 95093bae3e Move log message
refs #5094
2017-03-27 11:01:14 +02:00
Gunnar Beutner a73c1580ca Don't try to remove comments that were statically configured
fixes #5094
2017-03-27 10:46:35 +02:00
Gunnar Beutner 2d6434e96a Improve log message in ConfigObjectUtility::DeleteObjectHelper
refs #5094
2017-03-27 10:46:35 +02:00
Michael Friedrich bd5ff814f2 Review LogstashWriter feature implementation
refs #4054
2017-03-20 14:30:03 +01:00
Kai Goller f5a971f5b0 Add LogstashWriter feature
This adds the UdpSocket class.

refs #4054
2017-03-20 14:30:03 +01:00
Michael Friedrich 06434b3e59 IDO: Fix where condition for downtime history updates
fixes #5080
2017-03-20 13:19:37 +01:00
Gunnar Beutner 94aeaa2e5c Don't use raw pointers in boost::bind
refs #4991
2017-03-16 15:33:59 +01:00
Gunnar Beutner dd7862f08a Add missing freeReplyObject calls
refs #4991
2017-03-16 15:09:41 +01:00
Gunnar Beutner 62c1a64788 Merge DEL queries into one query
refs #4991
2017-03-16 15:09:41 +01:00
Gunnar Beutner 00eba25ad7 Add ASSERTs for the Redis queries
refs #4991
2017-03-16 15:09:41 +01:00
Gunnar Beutner f862923dc7 Remove some log messages
refs #4991
2017-03-16 15:09:41 +01:00
Gunnar Beutner 18e6474f1e Make sure all Redis tasks are executed on the WQ threads
refs #4991
2017-03-16 14:23:31 +01:00
Gunnar Beutner 3a5caf15eb Remove redundant check
refs #4991
2017-03-16 13:58:35 +01:00
Gunnar Beutner 04be7a1f1e Implement event handlers for config and status updates
fixes #5072
fixes #5073
refs #4991
2017-03-16 13:58:31 +01:00
Gunnar Beutner df05e24d52 Fix attribute type filter
refs #4991
2017-03-16 13:58:28 +01:00
Gunnar Beutner 0eada26b04 Only export config objects to Redis
refs #4991
2017-03-16 13:58:23 +01:00
Michael Friedrich e5c0295c9e Redis: First attempt of a reconnect config dump
refs #5072
refs #4991
2017-03-16 13:58:18 +01:00
Gunnar Beutner 96b3c7d90b Get rid of event IDs for Redis
fixes #5067
2017-03-15 15:10:58 +01:00
Gunnar Beutner 1cab2d7b16 Fix incorrect handling for SCAN results
fixes #5065
2017-03-15 14:55:41 +01:00
Gunnar Beutner 4da5f7d52c Add another log message
refs #4991
2017-03-15 14:55:37 +01:00
Gunnar Beutner a21da31ef6 Add missing free call
refs #4991
2017-03-15 14:55:19 +01:00
Gunnar Beutner 645e260f9b Make function names available in the API
fixes #5064
2017-03-15 11:18:08 +01:00
Gunnar Beutner 39f1b4589a Improve handling for missing start_time and finish_time values
fixes #5062
2017-03-15 10:41:08 +01:00
Gunnar Beutner 34c69d9556 Only send events to Redis when there is at least one subscriber
refs #4991
2017-03-14 15:19:02 +01:00
Gunnar Beutner 10ddcbe4d3 Implement support for expiring subscriptions
refs #4991
2017-03-14 15:19:02 +01:00
Michael Friedrich 3e98e3fb2c Better error handling and fixes
refs #4991
2017-03-14 15:18:39 +01:00
Michael Friedrich d3e3159e6b Implement event subscriptions
refs #4991
2017-03-14 14:47:06 +01:00
Michael Friedrich a8587f5697 Ensure to check the auth command return value
refs #4991
2017-03-14 14:46:58 +01:00
Michael Friedrich d3a1f53647 API: Fix error code for invalid 'attrs' type for POST requests
fixes #5043
2017-03-01 11:33:43 +01:00
Marius Bergmann 38d7f9a19e Add link to upgrade documentation to log message
When there's a schema version mismatch after an upgrade, the following
message is logged:

```
Schema version 'x.y.z' does not match the required version 'x.y.z' (or
newer)! Please check the upgrade documentation.
```

After reading this log message, users have to search for the upgrade
section in the docs in order to perform the necessary steps.

I added the URL for the relevant sections to the log message, so users
can simply click/copy it.
2017-02-28 17:02:10 +01:00