Commit Graph

11799 Commits

Author SHA1 Message Date
Noah Hilverling b77bc7b963 IcingaDB: Fix last_update 2020-01-29 14:43:29 +01:00
Alexander Aleksandrovič Klimov c37c40d8c6
Merge pull request #7793 from Icinga/feature/dev-debug-delay-worker
Dev: Allow to delay main worker process in order to attach with LLDB
2020-01-29 13:05:08 +00:00
Michael Friedrich 5812dae55b Dev: Allow to delay main worker process in order to attach with LLDB
Introduce `-DInternal.DebugWorkerDelay=120` and sleep inside `RunWorker()`.

Rationale: With 2.11 we've introduced a real umbrella process where the
main process is spawned as child fork. Running icinga2 in foreground on
a macOS shell with LLDB will now exit, and not follow the child process.

LLDB doesn't support `follow-fork-mode child` like GDB and therefore we
need to:

- Print the child process PID
- Sleep for X seconds to allow the developer to run `lldb -p <PID>`, set breakpoints, etc.

This commit also documents all available debug build enabled internal constants.
2020-01-29 13:21:05 +01:00
Michael Insel d7dfa6f1df Terminate windows check processes with UNKNOWN state on timeout
On Windows this terminates checks that reached the timeout with the UNKNOWN
state instead the WARNING state.

Co-authored-by: araujorm <araujorm@users.noreply.github.com>
2020-01-27 21:43:01 +01:00
Michael Friedrich fe8701d77e
Merge pull request #7780 from sebastic/boost-1.71
Fix building with Boost 1.71.
2020-01-27 16:45:23 +01:00
Michael Friedrich e1939368b2
Merge pull request #7765 from Icinga/bugfix/opentsdb-graphite-reconnect
Graphite/OpenTSDB: Ensure that Reconnect failure is detected
2020-01-27 14:32:26 +01:00
Bas Couwenberg b0b34f472e Fix building with Boost 1.71.
The CMake file that detects Boost.Test version uses an older version
format, and incorrectly thinks that the available Boost version is
very old. This patch removes the version check, since Debian already
has a sufficiently recent Boost version.
2020-01-25 19:07:44 +01:00
Alexander A. Klimov 530d84ae3b Make ConfigCompiler#m_LexBuffer a String
... to reduce malloc()s.
2020-01-21 13:38:59 +01:00
Michael Friedrich 0da46c1d4b Ensure that log replay files are properly renamed on Windows
rename() without _unlink() before doesn't work on Windows.
This commits also adds an error message which was swallowed
previously.
2020-01-20 11:41:43 +01:00
Michael Friedrich 3533ddd010 Graphite/OpenTSDB: Ensure that Reconnect failure is detected
fixes #7729
2020-01-18 17:09:09 +01:00
Noah Hilverling 18eb06e334
Merge pull request #7764 from Icinga/bugfix/fix-crash-in-docker-environments
IcingaDB::UpdateState: Check for Redis connection before calling FireAndForgetQuery()
2020-01-17 14:53:56 +01:00
Noah Hilverling 0d28ef5abe IcingaDB::UpdateState: Check for Redis connection before calling FireAndForgetQuery() 2020-01-17 13:53:05 +01:00
Alexander Aleksandrovič Klimov f11cccf874
Merge pull request #7760 from Icinga/bugfix/icingadb-manually-rescheduling-a-check-does-not-update-next_update-and-next_check-7707
IcingaDB: Fix rescheduling a check not always updating state in Redis
2020-01-16 11:58:28 +01:00
Alexander Aleksandrovič Klimov ba711943ca
Merge pull request #7759 from Icinga/bugfix/quality-redisconnection
Use IoEngine::Spawn wrapper in RedisConnection class
2020-01-16 10:57:36 +01:00
Noah Hilverling cbe1c181a1 IcingaDB: Fix rescheduling check not always updating state in Redis
fixes #7707
2020-01-16 10:51:56 +01:00
Michael Friedrich 8f5375d2bb Use IoEngine::Spawn wrapper in RedisConnection class
This avoids multiple locations for `asio::spawn` calls.
2020-01-16 09:53:24 +01:00
Michael Friedrich 7caa0867b3
Merge pull request #7748 from pdorschner/bugfix/oracle_health_notemp
ITL: Add notemp parameter to oracle health
2020-01-14 12:07:54 +01:00
Michael Friedrich c019232007
Merge pull request #7749 from dgoetz/bugfix/selinux_smtp_7733
SELinux: Allow direct smtp notifications
2020-01-14 12:06:21 +01:00
Dirk Goetz a3a3736692 SELinux: Allow direct smtp notifications
Fixes #7733
2020-01-13 16:57:44 +01:00
Philipp Dorschner 9455c906e1 ITL: Add notemp parameter to oracle health 2020-01-13 15:35:07 +01:00
Alexander A. Klimov 3d841d5f64 Don't send event::Heartbeat to unauthenticated peers
refs #7746
2020-01-13 11:21:38 +01:00
Eric Lippmann cb21086d6c
Merge pull request #7737 from Icinga/bugfix/revert-notification-result
Revert NotificationResult
2020-01-09 10:06:39 +01:00
Noah Hilverling 6575ce920e
Merge pull request #7721 from Icinga/bugfix/icingadb-pending
IcingaDB: suppress state sync until config sync finished
2020-01-08 17:30:22 +01:00
Michael Friedrich bc32f756c0
Merge pull request #7741 from Icinga/bugfix/itl-tcp-sni
CheckCommand ssl: s/-N/--sni/
2020-01-08 13:17:48 +01:00
Alexander A. Klimov 73b9e794d3 CheckCommand ssl: s/-N/--sni/ 2020-01-08 10:15:29 +01:00
Alexander Aleksandrovič Klimov a55995064d
Merge pull request #7739 from sthen/workaround-openbsd-siginfo
cope with OS which don't fill in si_pid in siginfo
2020-01-08 10:11:45 +01:00
Stuart Henderson 6744b1af54 cope with OS which don't fill in si_pid in siginfo
Icinga processes check si_pid on IPC signals to ensure that the signal
comes from an expected process. OpenBSD doesn't currently fill in si_pid
in siginfo (leaving it 0) so signals never pass this check, resulting
in startup failing to complete (the worker doesn't see the umbrella's
signal and vice-versa) - issue #7505.

Relax the requirement so that either 0 or the wanted pid is accepted.
2020-01-07 22:08:38 +00:00
Alexander Aleksandrovič Klimov 84891a6795
Merge pull request #7738 from Icinga/feature/icingadb-runtime-update-use-one-pub-sub-per-object-type
IcingaDB - Runtime updates: Use one pub/sub channel per config object type
2020-01-07 17:13:30 +01:00
Noah Hilverling 275ab08303 IcingaDB - Runtime updates: Use one pub/sub channel per config object type 2020-01-07 16:40:29 +01:00
Michael Friedrich 7e1e8b3393 Revert "Add NotificationResult class"
This reverts commit 9621fd2e4b.
2020-01-07 14:26:09 +01:00
Michael Friedrich 3605076f8b Revert "Add OnNewNotificationResult signal and ProcessNotificationResult handler"
This reverts commit ac483f2a8a.
2020-01-07 14:26:07 +01:00
Michael Friedrich 152709071d Revert "Implement last_notification_result handling for Notification objects"
This reverts commit 1706b297a5.
2020-01-07 14:21:06 +01:00
Michael Friedrich d242b41704 Revert "Make NotificationResult available for events: Cluster and Features"
This reverts commit 566e59bbfa.
2020-01-07 14:20:59 +01:00
Michael Friedrich af355adecc Revert "Add docs for NotificationResult value type"
This reverts commit 0611f3e009.
2020-01-07 14:20:53 +01:00
Michael Friedrich 55e13fd001 Revert "Fix license headers"
This reverts commit 48b3d25ce2.
2020-01-07 14:20:45 +01:00
Alexander A. Klimov f6f7d9b635 IcingaDB: suppress state sync until config sync finished 2019-12-18 13:41:56 +01:00
Michael Friedrich 387c2c8b79
Merge pull request #7717 from Icinga/bugfix/redisconnection-shared_ptr
RedisConnection: replace std::shared_ptr<T> with Shared<T>::Ptr
2019-12-18 13:32:16 +01:00
Michael Friedrich cbbff6b37d
Merge pull request #7716 from Icinga/bugfix/redisconnection-long-logs
RedisConnection: shorten log messages
2019-12-18 13:31:51 +01:00
Michael Friedrich b7cde77444
Merge pull request #7715 from Icinga/feature/redisconnection-docs
Document RedisConnection
2019-12-18 13:31:20 +01:00
Alexander A. Klimov de5b3eb2c7 RedisConnection: replace std::shared_ptr<T> with Shared<T>::Ptr 2019-12-17 12:13:30 +01:00
Alexander A. Klimov 955b612703 RedisConnection: shorten log messages 2019-12-17 11:49:54 +01:00
Alexander A. Klimov b1cc0cd767 Document RedisConnection 2019-12-17 11:44:00 +01:00
Michael Friedrich cd44c5371a
Merge pull request #7713 from Icinga/bugfix/coroutine-stack-size-linux
Boost Coroutines: Increase the default stack size from 64 to 256KB
2019-12-13 17:30:23 +01:00
Michael Friedrich 5484d1203e
Merge pull request #7712 from Icinga/feature/nlohmann-json-3-7-3
JSON: Update to nlohmann/json 3.7.3
2019-12-13 17:26:37 +01:00
Michael Friedrich f62f2eb25e Boost Coroutines: Increase the default stack size from 64 to 256KB
refs #7532
2019-12-13 17:20:06 +01:00
Michael Friedrich 5725ba4bf3 JSON: Update to nlohmann/json 3.7.3
This includes the following fixes:

https://github.com/nlohmann/json/pull/1436

> For a deeply-nested JSON object, the recursive implementation of json_value::destroy function causes stack overflow.

https://github.com/nlohmann/json/issues/1708
https://github.com/nlohmann/json/pull/1722

Stack size

https://github.com/nlohmann/json/issues/1693#issuecomment-516980690

Integer Overflow

https://github.com/nlohmann/json/issues/1447

UTF8, json dump out of bounds

https://github.com/nlohmann/json/issues/1445

Possibly influences #7532
2019-12-13 16:54:18 +01:00
Noah Hilverling 1b23d6b6c0
Merge pull request #7708 from Icinga/bugfix/icingadb-reschedule-check-overdue-7707
IcingaDB: update icinga:nextupdate:* on Checkable#next_check changes
2019-12-10 18:51:23 +01:00
Alexander A. Klimov c6ea9bc7fe IcingaDB: update icinga:nextupdate:* on Checkable#next_check changes
refs #7707
2019-12-10 16:11:51 +01:00
Noah Hilverling 77e02031f9
Merge pull request #7690 from Icinga/feature/flapping-acknowledgement-start-time-7689
IcingaDB: include consistent IDs, start time and end time in icinga:history:stream:{flapping,acknowledgement}
2019-12-10 14:49:17 +01:00
Noah Hilverling ee40fedb2a
Merge pull request #7700 from Icinga/bugfix/icingadb-don-t-hash-hashes-7692
IcingaDB: don't hash hashes
2019-12-10 13:39:12 +01:00