Commit Graph

10687 Commits

Author SHA1 Message Date
Alexander A. Klimov 997d84bfa0 ApiListener#RotateLogFile(): don't overwrite previous log 2019-04-18 17:22:33 +02:00
Alexander A. Klimov 9b489cf9b9 ApiListener#ApiTimerHandler(): delete all replayed logs
refs #6932
2019-04-18 17:00:40 +02:00
Alexander A. Klimov d8c9fdf1d4 Make Object#m_Mutex std::recursive_mutex
refs #7123
2019-04-17 18:26:29 +02:00
Alexander A. Klimov 7e6868bc99 Make Object#m_LockOwner std::atomic<std:🧵:id>
refs #7123
2019-04-17 18:26:23 +02:00
Alexander A. Klimov f9f998334d ObjectLock: deduplicate constructors
refs #7123
2019-04-17 16:47:41 +02:00
Alexander A. Klimov f44e847717 Rotate replay log on shutdown, not on startup 2019-04-17 14:18:20 +02:00
Michael Friedrich 02db12ae02
Merge pull request #7050 from Icinga/feature/previous-state-change
Implement previous_state_change
2019-04-17 13:17:41 +02:00
Michael Friedrich 3665430005
Merge pull request #7112 from Icinga/bugfix/service-handled
Include host state in Service#handled and Service#severity
2019-04-17 13:16:23 +02:00
Michael Friedrich 64568f5966
Merge pull request #7121 from Icinga/bugfix/concurrent-checks
Fix that MaxConcurrentChecks constant is overridden from 'checker' feature
2019-04-17 13:14:32 +02:00
Michael Friedrich ab97d606db
Merge pull request #7122 from Icinga/bugfix/evaluatefilter-change-globals
FilterUtility::EvaluateFilter(): ensure not to modify the global namespace
2019-04-16 17:40:20 +02:00
Alexander A. Klimov 5afda77943 Namespace: place ObjectLock in all methods 2019-04-16 17:38:58 +02:00
Michael Friedrich ecbfdc2732
Merge pull request #7113 from Elias481/fix/incorrect-usage-of-global-namespace-6874-6785
use dedicated permissions namespace for scriptframe in filterutility
2019-04-16 16:02:16 +02:00
Alexander A. Klimov bdadb53940 FilterUtility::EvaluateFilter(): ensure not to modify the global namespace 2019-04-16 15:53:44 +02:00
Michael Friedrich b906714254 Fix that MaxConcurrentChecks constant is overridden from 'checker' feature
Note: This drops the deprecated concurrent_checks setting from the checker feature
entirely and refactors the underlaying code handling.

Also affects ReloadTimeout which is new for 2.11.

fixes #7111
2019-04-16 15:04:57 +02:00
Michael Friedrich ab9b4b7786
Merge pull request #7120 from Icinga/bugfix/cluster-ignore-non-configured-zones
Ignore synced config zones where no config item exists
2019-04-16 11:08:15 +02:00
Michael Friedrich 44d0c9013b Ignore synced config zones where no config item exists
The culprit is that we're in compiling configuration stage here,
we don't have access to `Zone::GetByName()` as objects have not
been activated yet.

Our best guess is from a config item loaded before (e.g. from zones.conf)
since no-one can sync zones via cluster config sync either.

It may not be 100% correct since the zone object itself may be invalid.
Still, if the zone object validator fails later, the config breaks either way.

The problem with removal of these directories is dealt by the cluster
config sync with stages.

refs #6727
refs #6716
2019-04-15 17:38:43 +02:00
Michael Friedrich e0d9814feb
Merge pull request #7116 from Icinga/feature/no-reachable
Drop Checkable#reachable in favor of #last_reachable
2019-04-15 13:40:06 +02:00
Michael Friedrich 82de4bd13a
Merge pull request #7115 from Icinga/feature/docs-api
Improve REST API docs
2019-04-12 15:28:49 +02:00
Michael Friedrich 31170db123 Improve REST API docs
- Better explanation for filters and filter_vars
- Update examples to use filters in the body only, don't fuck around with the URL parameters.
- Better explain actions and their intent
- More insights into config packages and their intention
- Improve API clients and add the tables from icinga2-api-examples
- Formatting for CLI requests
2019-04-12 15:26:21 +02:00
Alexander A. Klimov d7b63143cf Drop Checkable#reachable in favor of #last_reachable 2019-04-12 13:03:11 +02:00
Michael Friedrich 5e3df67ab3 Docs: Fix RPM snapshot repo name 2019-04-12 09:34:34 +02:00
Elias Ohm 1e7cd4afc8 * use dedicated permissions namespace for scriptframe in filterutility to allow proper parallel execution
* fixes issue https://github.com/Icinga/icinga2/issues/6785 where permission checks get wrong result because permissions checks are done within a shared namespaces without using only unique keys
  * mitigates issue https://github.com/Icinga/icinga2/issues/6874 where segmentation faults occur because of concurrent access to non threadsafe parts of namespace (a fix for thread safety of namespaces which would be an alternative approach to get rid of these segfaults is out of scope of this fix as 6785 needs to be fixed anyway and this is the straight-forwards) way to fix that
* do the same for eventqueue (not certain whether events can be processed in parallel but I expect it is the case)
2019-04-12 08:10:57 +02:00
Alexander A. Klimov 66949dd018 Service: reduce severity while host is down 2019-04-11 11:36:23 +02:00
Alexander A. Klimov ae18536b0f Service: be handled while host is down 2019-04-11 11:25:45 +02:00
Michael Friedrich 973b03dcb2
Merge pull request #7109 from Icinga/feature/enhance-cluster-message-send-code-docs
Improve code docs for cluster message routing conditions
2019-04-11 11:20:46 +02:00
Michael Friedrich b24a3be083 Improve code docs for cluster message routing conditions
refs #6781
2019-04-10 14:17:36 +02:00
Michael Friedrich 2b3511d8a6
Merge pull request #7097 from Icinga/bugfix/disconnect-log-spam
JsonRpcConnection: reduce log spam on disconnect
2019-04-09 16:57:31 +02:00
Michael Friedrich fdb1a36ab6
Merge pull request #7096 from Icinga/feature/derivative-states
Expose derivative states via API
2019-04-09 16:55:47 +02:00
Michael Friedrich d459f3448d
Merge pull request #7073 from Icinga/feature/docs-development-macos-windows
Improve docs for 2.11: Development, test snapshot packages & installation repos
2019-04-09 14:16:39 +02:00
Michael Friedrich 478f087a3a Docs: Update installation for 2.11; remove EOL distributions 2019-04-09 14:14:52 +02:00
Michael Friedrich b318c79fd0 Development: Add snapshot package test details 2019-04-09 14:14:47 +02:00
Alexander A. Klimov de04bb13a8 JsonRpcConnection: reduce log spam on disconnect 2019-04-09 13:53:41 +02:00
Alexander A. Klimov 896d447e11 Add Checkable#problem and #handled 2019-04-09 11:34:59 +02:00
Alexander A. Klimov d33cfdf3c0 Declare Checkable#IsStateOK() const 2019-04-09 11:26:34 +02:00
Alexander A. Klimov acf28fb5b0 Expose Checkable#reachable 2019-04-09 11:09:02 +02:00
Michael Friedrich e69e72d6af
Merge pull request #7093 from Icinga/feature/docs-2-11
Docs: Update version specific changes for 2.11
2019-04-08 14:52:58 +02:00
Michael Friedrich 863af5afb4 Docs: Update version specific changes for 2.11
- Notification commands 2.7 dropped, reference to MTAs added
- Sysconfig variable locations
- Version bumps
2019-04-08 14:08:14 +02:00
Michael Friedrich 6a298615e4
Merge pull request #7079 from Icinga/tools/windows
Build Windows with Visual Studio 2017
2019-04-05 16:38:12 +02:00
Michael Friedrich 0640ad3853
Merge pull request #7087 from Icinga/feature/http-server-log-user-agent
HttpServerConnection: Log the user agent field for new requests too
2019-04-05 16:00:36 +02:00
Michael Friedrich f177d8786d HttpServerConnection: Log the user agent field for new requests too
refs #7041
2019-04-05 15:08:09 +02:00
Markus Frosch 930dd83b94 windows: Avoid 32-bit linker problems for check_swap 2019-04-05 10:34:07 +02:00
Michael Friedrich b1042c3689
Merge pull request #7076 from Icinga/bugfix/eventqueue-leak
/v1/events: terminate on disconnect
2019-04-05 10:31:30 +02:00
Michael Insel 20fc8960e1 Use Unicode functions inside check_swap
This ensures that always Unicode functions are used in check_swap.
2019-04-05 09:24:32 +02:00
Markus Frosch 61ea5ea758 windows: Add rules for Win32 to IcingaAgent C#
Theoretically this should be automatically, but the C++ project uses
Win32 as platform...
2019-04-05 09:24:25 +02:00
Alexander A. Klimov 2e4e2e1a79 /v1/events: don't deadlock other coroutines 2019-04-05 09:22:42 +02:00
Michael Friedrich 3c63356c73
Merge pull request #7085 from Icinga/bugfix/typo-upgrading-docs
Remove not needed inline code tag
2019-04-05 09:12:50 +02:00
Markus Frosch f70e215cc9 windows: Disable SAFESEH on x86 2019-04-05 09:03:04 +02:00
Markus Frosch 9f82faa439 cmake: Use the actual GIT_VERSION for ICINGA2_VERSION
And use a safe version with dots only for Windows.
2019-04-05 09:03:04 +02:00
Markus Frosch 1ab23c20fb windows: Disable optimization for boost::context 2019-04-05 09:03:04 +02:00
Markus Frosch 53bb10c2f2 windows: Remove the flag to disable auto linking 2019-04-05 09:03:04 +02:00