]>
granicus.if.org Git - icinga2/log
Alexander A. Klimov [Fri, 5 Apr 2019 15:36:50 +0000 (17:36 +0200)]
/v1/events: remove anti-deadlock hack
Alexander A. Klimov [Fri, 5 Apr 2019 15:34:46 +0000 (17:34 +0200)]
/v1/events: use new event queue
Alexander A. Klimov [Fri, 5 Apr 2019 15:14:19 +0000 (17:14 +0200)]
Feed new event queue with events
Alexander A. Klimov [Fri, 5 Apr 2019 15:02:42 +0000 (17:02 +0200)]
Implement new event queue for ASIO consumers
Michael Friedrich [Wed, 24 Apr 2019 10:10:57 +0000 (12:10 +0200)]
Buildfix
Obviously tired.
fixes #7138
fixes #7139
Michael Friedrich [Wed, 24 Apr 2019 09:54:54 +0000 (11:54 +0200)]
Merge pull request #7140 from Icinga/feature/docs-logrotate
Add log message for log rotate; update docs
Michael Friedrich [Wed, 24 Apr 2019 09:33:43 +0000 (11:33 +0200)]
Add log message for log rotate; update docs
refs #6737
Michael Friedrich [Wed, 24 Apr 2019 09:52:16 +0000 (11:52 +0200)]
Merge pull request #7004 from Icinga/bugfix/logrotate-6737
Timer::TimerThreadProc(): use C++11 lambda instead of bind()
Alexander A. Klimov [Mon, 11 Mar 2019 10:17:26 +0000 (11:17 +0100)]
Timer::TimerThreadProc(): use C++11 lambda instead of bind()
refs #6737
Michael Friedrich [Wed, 24 Apr 2019 09:49:33 +0000 (11:49 +0200)]
Merge pull request #7130 from Icinga/bugfix/logrotate-issues-6737
StreamLogger#BindStream(): set #m_FlushLogTimer only if needed
Alexander A. Klimov [Thu, 18 Apr 2019 10:23:50 +0000 (12:23 +0200)]
StreamLogger#BindStream(): set #m_FlushLogTimer only if needed
refs #6737
Michael Friedrich [Wed, 24 Apr 2019 09:45:16 +0000 (11:45 +0200)]
Merge pull request #7129 from Elias481/fix/logrotate-segfaults-6737
avoid incrementing Ptr which could be already be in destruction-phase
Elias Ohm [Wed, 17 Apr 2019 20:31:42 +0000 (22:31 +0200)]
Fix for double-free (and possibly other memory-corruption related) crashes at logrotate time
this is a direct fix of the issue revealing the problem that leads to crash
verification done with a patched icinga2 where the execution-order of the code lines of counter-parts involved in re-incrementing/decrementing Timer:Ptr is forced to be the one that leads to the obeserverd segfaults
refs #6737
Michael Friedrich [Tue, 23 Apr 2019 13:33:28 +0000 (15:33 +0200)]
Docs: Fix formatting in object type chapter
Michael Friedrich [Tue, 23 Apr 2019 12:53:00 +0000 (14:53 +0200)]
Merge pull request #7135 from Icinga/feature/boost-asio-elasticsearchwriter
Use new I/O engine in ElasticsearchWriter
Michael Friedrich [Tue, 23 Apr 2019 12:50:18 +0000 (14:50 +0200)]
Merge pull request #7137 from Icinga/bugfix/disconnect-log-more-spam
JsonRpcConnection: reduce log spam on disconnect
Alexander A. Klimov [Tue, 23 Apr 2019 11:15:38 +0000 (13:15 +0200)]
Use new I/O engine in ElasticsearchWriter
Michael Friedrich [Tue, 23 Apr 2019 12:31:42 +0000 (14:31 +0200)]
Merge pull request #7134 from Icinga/feature/boost-asio-influxdbwriter
Use new I/O engine in InfluxdbWriter
Michael Friedrich [Tue, 23 Apr 2019 12:27:48 +0000 (14:27 +0200)]
Merge pull request #7133 from Icinga/feature/boost-asio-pki
Use new I/O engine in PkiUtility::FetchCert() and PkiUtility::RequestCertificate()
Alexander A. Klimov [Tue, 23 Apr 2019 12:09:07 +0000 (14:09 +0200)]
JsonRpcConnection: reduce log spam on disconnect
Michael Friedrich [Tue, 23 Apr 2019 11:47:40 +0000 (13:47 +0200)]
Quickfix technical docs for debugging
Michael Friedrich [Tue, 23 Apr 2019 10:08:12 +0000 (12:08 +0200)]
Merge pull request #7127 from Icinga/bugfix/replay-log
ApiListener#RotateLogFile(): don't overwrite previous log
Michael Friedrich [Tue, 23 Apr 2019 10:07:02 +0000 (12:07 +0200)]
Merge pull request #7126 from Icinga/bugfix/replay-logs-6932
ApiListener#ApiTimerHandler(): delete all replayed logs
Alexander A. Klimov [Tue, 23 Apr 2019 09:25:52 +0000 (11:25 +0200)]
Use new I/O engine in InfluxdbWriter
Michael Friedrich [Tue, 23 Apr 2019 09:53:40 +0000 (11:53 +0200)]
Merge pull request #7128 from Icinga/feature/re-write-objectlock-7123
Re-write ObjectLock's implementation details
Alexander A. Klimov [Tue, 23 Apr 2019 09:25:26 +0000 (11:25 +0200)]
Introduce OptionalTlsStream
Alexander A. Klimov [Wed, 17 Apr 2019 13:42:39 +0000 (15:42 +0200)]
ApiListener#ReplayLog(): read current log file too instead of rotating
Alexander A. Klimov [Wed, 17 Apr 2019 12:31:49 +0000 (14:31 +0200)]
ApiListener#RotateLogFile(): don't overwrite previous log
Alexander A. Klimov [Wed, 17 Apr 2019 11:52:13 +0000 (13:52 +0200)]
ApiListener#ApiTimerHandler(): delete all replayed logs
refs #6932
Alexander A. Klimov [Wed, 17 Apr 2019 16:15:32 +0000 (18:15 +0200)]
Make Object#m_Mutex std::recursive_mutex
refs #7123
Alexander A. Klimov [Wed, 17 Apr 2019 16:03:40 +0000 (18:03 +0200)]
Make Object#m_LockOwner std::atomic<std::thread::id>
refs #7123
Alexander A. Klimov [Wed, 17 Apr 2019 14:47:41 +0000 (16:47 +0200)]
ObjectLock: deduplicate constructors
refs #7123
Alexander A. Klimov [Wed, 17 Apr 2019 12:18:20 +0000 (14:18 +0200)]
Rotate replay log on shutdown, not on startup
Michael Friedrich [Wed, 17 Apr 2019 11:17:41 +0000 (13:17 +0200)]
Merge pull request #7050 from Icinga/feature/previous-state-change
Implement previous_state_change
Michael Friedrich [Wed, 17 Apr 2019 11:16:23 +0000 (13:16 +0200)]
Merge pull request #7112 from Icinga/bugfix/service-handled
Include host state in Service#handled and Service#severity
Michael Friedrich [Wed, 17 Apr 2019 11:14:32 +0000 (13:14 +0200)]
Merge pull request #7121 from Icinga/bugfix/concurrent-checks
Fix that MaxConcurrentChecks constant is overridden from 'checker' feature
Michael Friedrich [Tue, 16 Apr 2019 15:40:20 +0000 (17:40 +0200)]
Merge pull request #7122 from Icinga/bugfix/evaluatefilter-change-globals
FilterUtility::EvaluateFilter(): ensure not to modify the global namespace
Michael Friedrich [Tue, 16 Apr 2019 14:02:16 +0000 (16:02 +0200)]
Merge pull request #7113 from Elias481/fix/incorrect-usage-of-global-namespace-6874-6785
use dedicated permissions namespace for scriptframe in filterutility
Alexander A. Klimov [Tue, 16 Apr 2019 13:53:44 +0000 (15:53 +0200)]
FilterUtility::EvaluateFilter(): ensure not to modify the global namespace
Michael Friedrich [Mon, 15 Apr 2019 14:56:30 +0000 (16:56 +0200)]
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
Michael Friedrich [Tue, 16 Apr 2019 09:08:15 +0000 (11:08 +0200)]
Merge pull request #7120 from Icinga/bugfix/cluster-ignore-non-configured-zones
Ignore synced config zones where no config item exists
Michael Friedrich [Fri, 28 Sep 2018 11:55:41 +0000 (13:55 +0200)]
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
Michael Friedrich [Mon, 15 Apr 2019 11:40:06 +0000 (13:40 +0200)]
Merge pull request #7116 from Icinga/feature/no-reachable
Drop Checkable#reachable in favor of #last_reachable
Michael Friedrich [Fri, 12 Apr 2019 13:28:49 +0000 (15:28 +0200)]
Merge pull request #7115 from Icinga/feature/docs-api
Improve REST API docs
Michael Friedrich [Fri, 12 Apr 2019 10:49:41 +0000 (12:49 +0200)]
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
Alexander A. Klimov [Fri, 12 Apr 2019 11:03:11 +0000 (13:03 +0200)]
Drop Checkable#reachable in favor of #last_reachable
Michael Friedrich [Fri, 12 Apr 2019 07:34:34 +0000 (09:34 +0200)]
Docs: Fix RPM snapshot repo name
Elias Ohm [Fri, 12 Apr 2019 06:10:57 +0000 (08:10 +0200)]
* 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)
Alexander A. Klimov [Thu, 11 Apr 2019 09:36:23 +0000 (11:36 +0200)]
Service: reduce severity while host is down
Alexander A. Klimov [Thu, 11 Apr 2019 09:25:45 +0000 (11:25 +0200)]
Service: be handled while host is down
Michael Friedrich [Thu, 11 Apr 2019 09:20:46 +0000 (11:20 +0200)]
Merge pull request #7109 from Icinga/feature/enhance-cluster-message-send-code-docs
Improve code docs for cluster message routing conditions
Michael Friedrich [Wed, 10 Apr 2019 12:17:36 +0000 (14:17 +0200)]
Improve code docs for cluster message routing conditions
refs #6781
Michael Friedrich [Tue, 9 Apr 2019 14:57:31 +0000 (16:57 +0200)]
Merge pull request #7097 from Icinga/bugfix/disconnect-log-spam
JsonRpcConnection: reduce log spam on disconnect
Michael Friedrich [Tue, 9 Apr 2019 14:55:47 +0000 (16:55 +0200)]
Merge pull request #7096 from Icinga/feature/derivative-states
Expose derivative states via API
Michael Friedrich [Tue, 9 Apr 2019 12:16:39 +0000 (14:16 +0200)]
Merge pull request #7073 from Icinga/feature/docs-development-macos-windows
Improve docs for 2.11: Development, test snapshot packages & installation repos
Michael Friedrich [Tue, 9 Apr 2019 12:08:39 +0000 (14:08 +0200)]
Docs: Update installation for 2.11; remove EOL distributions
Michael Friedrich [Tue, 9 Apr 2019 12:08:03 +0000 (14:08 +0200)]
Development: Add snapshot package test details
Alexander A. Klimov [Tue, 9 Apr 2019 11:53:41 +0000 (13:53 +0200)]
JsonRpcConnection: reduce log spam on disconnect
Alexander A. Klimov [Tue, 9 Apr 2019 09:34:59 +0000 (11:34 +0200)]
Add Checkable#problem and #handled
Alexander A. Klimov [Tue, 9 Apr 2019 09:26:34 +0000 (11:26 +0200)]
Declare Checkable#IsStateOK() const
Alexander A. Klimov [Tue, 9 Apr 2019 09:09:02 +0000 (11:09 +0200)]
Expose Checkable#reachable
Michael Friedrich [Mon, 8 Apr 2019 12:52:58 +0000 (14:52 +0200)]
Merge pull request #7093 from Icinga/feature/docs-2-11
Docs: Update version specific changes for 2.11
Michael Friedrich [Mon, 8 Apr 2019 12:08:14 +0000 (14:08 +0200)]
Docs: Update version specific changes for 2.11
- Notification commands 2.7 dropped, reference to MTAs added
- Sysconfig variable locations
- Version bumps
Michael Friedrich [Fri, 5 Apr 2019 14:38:12 +0000 (16:38 +0200)]
Merge pull request #7079 from Icinga/tools/windows
Build Windows with Visual Studio 2017
Michael Friedrich [Fri, 5 Apr 2019 14:00:36 +0000 (16:00 +0200)]
Merge pull request #7087 from Icinga/feature/http-server-log-user-agent
HttpServerConnection: Log the user agent field for new requests too
Michael Friedrich [Fri, 5 Apr 2019 13:08:09 +0000 (15:08 +0200)]
HttpServerConnection: Log the user agent field for new requests too
refs #7041
Markus Frosch [Fri, 5 Apr 2019 08:34:07 +0000 (10:34 +0200)]
windows: Avoid 32-bit linker problems for check_swap
Michael Friedrich [Fri, 5 Apr 2019 08:31:30 +0000 (10:31 +0200)]
Merge pull request #7076 from Icinga/bugfix/eventqueue-leak
/v1/events: terminate on disconnect
Michael Insel [Thu, 4 Apr 2019 17:55:07 +0000 (19:55 +0200)]
Use Unicode functions inside check_swap
This ensures that always Unicode functions are used in check_swap.
Markus Frosch [Thu, 4 Apr 2019 16:15:21 +0000 (18:15 +0200)]
windows: Add rules for Win32 to IcingaAgent C#
Theoretically this should be automatically, but the C++ project uses
Win32 as platform...
Alexander A. Klimov [Fri, 5 Apr 2019 07:22:42 +0000 (09:22 +0200)]
/v1/events: don't deadlock other coroutines
Michael Friedrich [Fri, 5 Apr 2019 07:12:50 +0000 (09:12 +0200)]
Merge pull request #7085 from Icinga/bugfix/typo-upgrading-docs
Remove not needed inline code tag
Markus Frosch [Thu, 4 Apr 2019 12:42:58 +0000 (14:42 +0200)]
windows: Disable SAFESEH on x86
Markus Frosch [Thu, 4 Apr 2019 10:55:52 +0000 (12:55 +0200)]
cmake: Use the actual GIT_VERSION for ICINGA2_VERSION
And use a safe version with dots only for Windows.
Markus Frosch [Thu, 4 Apr 2019 10:20:52 +0000 (12:20 +0200)]
windows: Disable optimization for boost::context
Markus Frosch [Thu, 4 Apr 2019 10:11:15 +0000 (12:11 +0200)]
windows: Remove the flag to disable auto linking
Markus Frosch [Thu, 4 Apr 2019 10:10:23 +0000 (12:10 +0200)]
windows: Improve Powershell Tools and AppVeyor config
[travis skip]
Michael Insel [Thu, 4 Apr 2019 16:49:50 +0000 (18:49 +0200)]
Remove not needed inline code tag
This removes a not needed inline code tag (back-tick) in the upgrading
chapter for 2.11.
Michael Friedrich [Tue, 2 Apr 2019 13:30:35 +0000 (15:30 +0200)]
Improve development docs for macOS & Windows for 2.11
- macOS doesn't require sudo anymore
- Windows builds must use Boost 1.66+
- Fix link in About section
- Add recommended books: Boost application programming
Michael Friedrich [Thu, 4 Apr 2019 13:42:52 +0000 (15:42 +0200)]
Merge pull request #7082 from Icinga/feature/docs-troubleshooting
Troubleshooting docs: Add Windows agents without NodeName constant
Michael Friedrich [Thu, 4 Apr 2019 13:29:45 +0000 (15:29 +0200)]
Troubleshooting docs: Add Windows agents without NodeName constant
Michael Friedrich [Wed, 3 Apr 2019 17:53:26 +0000 (19:53 +0200)]
Merge pull request #7080 from Icinga/feature/docs-object-types
Docs: Improve config object types chapter
Michael Friedrich [Wed, 3 Apr 2019 13:00:36 +0000 (15:00 +0200)]
Docs: Improve config object types chapter
Michael Friedrich [Wed, 3 Apr 2019 12:59:36 +0000 (14:59 +0200)]
Merge pull request #7078 from Icinga/feature/deprecate-command-pipe-adjust-logs
Deprecate ExternalCommandListener feature ('command') and adjust log warnings to the roadmap
Michael Friedrich [Wed, 3 Apr 2019 12:39:10 +0000 (14:39 +0200)]
Deprecate ExternalCommandListener feature ('command') and adjust log warnings to the roadmap
They won't be removed with 2.11 thus far. Users should
be guided to the roadmap which holds all details instead
of hardcoding a version in the code.
Michael Friedrich [Wed, 3 Apr 2019 12:22:56 +0000 (14:22 +0200)]
Merge pull request #7077 from Icinga/bugfix/no-api
Always update object authority & don't skip notifications in non-API setups
Michael Friedrich [Wed, 3 Apr 2019 11:50:21 +0000 (13:50 +0200)]
Fix notification skip for local non-API enabled setups
W/o local endpoint, these reminder notifications would
have been skipped otherwise.
PR #6935 improved the logging and made this problem visible.
Thanks @nilmerg :)
Michael Friedrich [Wed, 3 Apr 2019 11:48:24 +0000 (13:48 +0200)]
Always update object authority, even w/o API feature
Regression from #7062
Thanks @nilmerg :)
Michael Friedrich [Wed, 3 Apr 2019 09:04:07 +0000 (11:04 +0200)]
Fix headings in the docs
refs #6918
Michael Friedrich [Wed, 3 Apr 2019 08:52:45 +0000 (10:52 +0200)]
Merge pull request #6918 from Icinga/feature/technical-concepts-jsonrpc-messages
Add technical concept docs for our internal JSON-RPC API messages
Michael Friedrich [Thu, 17 Jan 2019 17:20:23 +0000 (18:20 +0100)]
Add technical concept docs for our internal JSON-RPC message API
Alexander A. Klimov [Wed, 3 Apr 2019 07:59:45 +0000 (09:59 +0200)]
/v1/events: terminate on disconnect
Alexander A. Klimov [Wed, 3 Apr 2019 07:53:45 +0000 (09:53 +0200)]
EventQueue#WaitForEvent(): re-add timeout
Michael Friedrich [Wed, 3 Apr 2019 07:52:08 +0000 (09:52 +0200)]
Merge pull request #7074 from Icinga/feature/cli-run-as-icinga-not-root
Impersonate as Icinga user, not root
Michael Friedrich [Wed, 3 Apr 2019 07:51:35 +0000 (09:51 +0200)]
Upgrading docs: Mention CLI commands
Alexander A. Klimov [Wed, 3 Apr 2019 07:50:52 +0000 (09:50 +0200)]
HttpServerConnection#StartStreaming(): auto-detect disconnection
Michael Friedrich [Wed, 3 Apr 2019 07:46:17 +0000 (09:46 +0200)]
Merge pull request #7000 from Icinga/bugfix/goto-loop
Don't abuse goto for building simple loops
Alexander A. Klimov [Tue, 2 Apr 2019 15:37:29 +0000 (17:37 +0200)]
HttpServerConnection: encapsulate streaming start indicator
Michael Friedrich [Fri, 4 Jan 2019 14:29:25 +0000 (15:29 +0100)]
Impersonate as Icinga user, not root
This requires write permissions for
- etc/features-*
- etc/*.conf
- var/{lib,cache}/icinga2/*
Typically permissions are handled by prepare-dirs,
or the respective CLI commands are run as root either way.
fixes #4947
Michael Friedrich [Tue, 2 Apr 2019 13:15:56 +0000 (15:15 +0200)]
Merge pull request #7008 from Icinga/feature/shared-ptr-atomic
Use C++11 atomics for our intrusive pointers