Michael Friedrich
e0ef5fe9de
Merge pull request #7458 from Icinga/feature/config-parser-cleanup
...
Config parser: introduce optional_newlines
2019-10-22 17:29:59 +02:00
Michael Friedrich
3b49c10d0a
Merge pull request #7584 from Icinga/bugfix/cluster-sync-checksums-timestamps
...
Cluster Config Sync: Check the timestamp prior to config file checksums for changes
2019-10-22 17:22:27 +02:00
Michael Friedrich
6103f53c5b
Merge pull request #7541 from Icinga/bugfix/heredoc-eof
...
Config lexer: complain on EOF in heredocs, i.e. {{{abc<EOF>
2019-10-22 17:19:27 +02:00
Michael Friedrich
cb20b4829a
Cluster Config Sync: Check the timestamp prior to config file checksums
...
Otherwise old configuration received from a secondary master/satellite
could always trigger a config change & reload.
2019-10-22 14:07:10 +02:00
Alexander A. Klimov
768044a754
Replace std::shared_ptr<NamespaceValue> with NamespaceValue::Ptr
...
refs #7361
2019-10-21 17:10:51 +02:00
Alexander A. Klimov
aa4cad7482
Replace std::shared_ptr<Expression> with Expression::Ptr
...
refs #7361
2019-10-21 17:10:51 +02:00
Alexander A. Klimov
4438ccbf9e
Introduce SharedObject
...
refs #7361
2019-10-21 17:10:51 +02:00
Alexander A. Klimov
ba1ce9c853
Replace std::shared_ptr<boost::asio::ssl::context> with Shared<boost::asio::ssl::context>::Ptr
2019-10-21 16:12:46 +02:00
Alexander A. Klimov
a1fef92835
Replace std::shared_ptr<boost::asio::ip::tcp::acceptor> with Shared<boost::asio::ip::tcp::acceptor>::Ptr
2019-10-21 16:12:46 +02:00
Alexander A. Klimov
26ce2cfb73
Replace std::shared_ptr<AsioTcpStream> with Shared<AsioTcpStream>::Ptr
2019-10-21 16:12:46 +02:00
Alexander A. Klimov
a1683568a1
Replace std::shared_ptr<AsioTlsStream> with Shared<AsioTlsStream>::Ptr
2019-10-21 16:12:35 +02:00
Alexander A. Klimov
b046ffe152
Introduce Shared<T>
2019-10-21 11:07:42 +02:00
Michael Friedrich
3e6fc9bfa1
Merge pull request #7457 from Icinga/feature/config-parser-malloc
...
Config parser: save some memory allocations
2019-10-17 17:19:30 +02:00
Michael Friedrich
e7c07062f8
Avoid syncing .authorititative marker received from < 2.11 parent nodes
2019-10-02 10:49:02 +02:00
Alexander A. Klimov
672f497c3a
Config lexer: complain on EOF in heredocs, i.e. {{{abc<EOF>
2019-09-26 13:10:19 +02:00
Michael Friedrich
f0fcfdf910
Merge pull request #7538 from Icinga/bugfix/dependency-ignore_on_error-7536
...
Dependency#OnAllConfigLoaded(): don't link *this with the child if *this is going to be dropped
2019-09-25 12:12:22 +02:00
Michael Friedrich
4e23f954fa
Merge pull request #7529 from Icinga/bugfix/activestageoverride-7521
...
WarnOnImplicitlySetGlobalVar(): warn only on sins inside actual DSL code
2019-09-25 12:11:26 +02:00
Alexander A. Klimov
7668314b4a
Dependency#OnAllConfigLoaded(): don't link *this with the child if *this is going to be dropped
...
refs #7536
2019-09-25 11:30:50 +02:00
Alexander A. Klimov
b8d495ae07
Introduce Checkable#next_update
2019-09-25 10:44:49 +02:00
Alexander A. Klimov
b4e3736e31
WarnOnImplicitlySetGlobalVar(): warn only on sins inside actual DSL code
2019-09-23 15:09:57 +02:00
Michael Friedrich
617f1d1333
Improve error message for command endpoint checkable's requiring a zone
...
fixes #7514
2019-09-23 09:41:08 +02:00
Michael Friedrich
eddb40a913
CSR Auto-signing: Add debug logging for skipped signing
2019-09-18 11:53:58 +02:00
Michael Friedrich
d3eb62301e
API: Add AES128-GCM-SHA256 compatible cipher for el6
...
fixes #7501
2019-09-16 14:19:22 +02:00
Michael Friedrich
9ec246a2f4
Revert: Always reset Boost beast buffer in HttpServerConnection#ProcessMessages #7476
...
Not a simple revert but also adds a comment for the buffer.
refs #7476
2019-09-12 17:00:17 +02:00
Michael Friedrich
2c0e0da2d9
Introduce IoEngine::SpawnCoroutine wrapping asio::spawn and Boost exceptions
...
This is required to
- catch all exceptions and wrap them into Boost exceptions. They
are the only ones allowed with Boost.Coroutine.
- set a dedicated coroutine stack size for Windows.
refs #7431
2019-09-09 16:40:35 +02:00
Michael Friedrich
5fa7331cc9
Quality: Replace deprecated Boost IO service code
...
https://github.com/boostorg/asio/issues/110
https://www.boost.org/doc/libs/1_66_0/doc/html/boost_asio/example/cpp03/services/logger_service.hpp
2019-09-09 15:27:57 +02:00
Alexander A. Klimov
0a9563b3db
HttpServerConnection#ProcessMessages(): avoid I/O if shutting down
...
refs #7431
2019-09-09 13:37:44 +02:00
Alexander A. Klimov
b85b8b9697
HttpServerConnection#ProcessMessages(): avoid I/O after boost::asio::error::operation_aborted
...
refs #7431
2019-09-09 13:29:47 +02:00
Alexander A. Klimov
dfaeb88ac3
{HttpServer,JsonRpc}Connection#Disconnect(): cancel I/O ops ASAP
...
refs #7431
2019-09-09 13:11:51 +02:00
Michael Friedrich
b3c48e7520
Merge pull request #7485 from Icinga/bugfix/api-disconnect-defer
...
Avoid the Defer-Disconnect destructor pattern with Boost.Coroutines
2019-09-09 11:41:34 +02:00
Michael Friedrich
c5aa978912
Rewrite error handling in HttpServerConnection#EnsureValidHeaders()
...
Throwing local exceptions unnecessarily pollutes the exception
stack with immediate unwinding. Avoid this pattern at all cost within
Boost.Coroutines. MSVC may handle exceptions differently and cause
problems with stack unwinding.
refs #7431
refs #7351
2019-09-09 11:03:21 +02:00
Michael Friedrich
17d4d17307
Avoid the Defer-Disconnect destructor pattern with Boost.Coroutines
...
Exceptions in Disconnect() might be thrown (this has been reworked
into error_code locally) which are swallowed inside the Destructor
for being dangerous. On the other hand, swallowing them may
corrupt the stack unwinding operation from the coroutine layer.
The best is to avoid Defer inside lib/remote and call Disconnect()
directly after breaking from other operations.
refs #7351
refs #7431
2019-09-09 10:57:13 +02:00
Michael Friedrich
ebb0826be0
JsonRpcConnection: Don't swallow exceptions in Boost.Coroutine
...
refs #7351
2019-09-09 09:26:12 +02:00
Michael Friedrich
cdacd545c6
Merge pull request #7477 from Icinga/bugfix/api-boost-exceptions-errors
...
HttpServerConnection: Prefer error codes over Boost exceptions
2019-09-06 10:22:42 +02:00
Michael Friedrich
a208f7baf0
HttpServerConnection: Prefer error codes over Boost exceptions
...
When run within a coroutine, exceptions on Windows may influence
bad behaviour here. Instead, we'll check for the error code
and extract the message from memory. In contrast to exceptions
which are stored on the stack frame and then return, this costs
a little more memory but simplifies the logic.
This doesn't fix the linked issue, but is related to the analysis.
refs #7431
2019-09-06 10:06:17 +02:00
Michael Friedrich
eabba2de42
Always reset Boost beast buffer in HttpServerConnection#ProcessMessages
...
refs #7431
2019-09-06 09:31:16 +02:00
Michael Friedrich
1f50a705f9
Adjust code comment for Logger->Flush() on Windows
2019-09-06 09:24:34 +02:00
Michael Friedrich
8a07b64800
Merge pull request #7459 from Icinga/feature/expose-problem-handled-counts
...
Metrics: Expose problem/handled counts for hosts/services
2019-08-30 09:04:03 +02:00
Michael Friedrich
55d7da30ca
Metrics: Expose problem/handled counts for hosts/services
...
With the addition of problem/handled as checkable runtime
attributes in #7096 we should also expose them via CIB
into
- icinga check
- /v1/status/CIB
- IcingaApplication runtime macros
This originates from a request by @phil-or at the recent
Icinga meetup in Linz.
2019-08-29 17:04:23 +02:00
Alexander A. Klimov
360cb50c9e
Config parser: inline arraysep
2019-08-29 14:06:01 +02:00
Alexander A. Klimov
fd88ac2f83
Config parser: introduce optional_newlines
2019-08-29 14:05:58 +02:00
Alexander A. Klimov
203482a675
Config parser: save some memory allocations
2019-08-29 10:54:54 +02:00
Michael Friedrich
bea8527083
Merge pull request #7356 from Icinga/bugfix/influxdbwriter-clone
...
InfluxdbWriter: clone less
2019-08-28 09:16:19 +02:00
Michael Friedrich
f62db49d3e
Merge pull request #7451 from Icinga/bugfix/update-docs
...
Update docs: Fix online URL, cipher list
2019-08-28 08:59:28 +02:00
Michael Friedrich
5ed91098d2
Merge pull request #7445 from Icinga/bugfix/ddos-reconnect-7444
...
JsonRpcConnection#Disconnect(): unregister the connection ASAP
2019-08-28 08:59:14 +02:00
Michael Friedrich
0915c84530
Update doc URL for the API info handler at /v1
2019-08-27 16:47:07 +02:00
Michael Friedrich
9932f04751
Update doc URL references for the DB IDO feature
2019-08-27 16:46:51 +02:00
Michael Friedrich
b75e1585d6
Merge pull request #7449 from Icinga/feature/warn-set-global-var
...
DSL: warn on x=y if x is a global variable
2019-08-27 14:53:29 +02:00
Michael Friedrich
9d6ee44e71
Merge pull request #7346 from Icinga/feature/check-plugins-code-page-7110
...
DaemonCommand#Run(): set code page to UTF-8
2019-08-27 14:51:30 +02:00
Alexander A. Klimov
429080ee1c
DSL: warn on x=y if x is a global variable
2019-08-27 13:30:02 +02:00