Commit Graph

10828 Commits

Author SHA1 Message Date
Michael Friedrich c77d6eb869 Quality: Drop unused boost/tuple header include 2019-05-24 15:50:43 +02:00
Michael Friedrich 5dbb6ad366 Quality: Remove old SocketEvent functionality 2019-05-24 15:50:43 +02:00
Michael Friedrich c7a2fc556c Quality: Purge old TlsStream functionality 2019-05-24 15:50:43 +02:00
Michael Friedrich e606d14705 Quality: Clean JsonRPC class and add function docs 2019-05-24 15:50:43 +02:00
Michael Friedrich f933aafd29 Quality: Purge old HTTP code in lib/remote 2019-05-24 15:50:43 +02:00
Michael Friedrich 5d0af5c879
Merge pull request #6813 from Icinga/feature/gelfwriter-tls-support
Implement TLS support for the GelfWriter feature
2019-05-24 15:50:18 +02:00
Michael Friedrich 2ba2134eda
Merge pull request #7156 from Icinga/feature/itl-sleep
Implement sleep CheckCommand
2019-05-24 15:42:46 +02:00
Michael Friedrich 794374a32c
Merge pull request #7199 from Icinga/feature/docs-dev-style-guide
Docs: Add styleguide with development details
2019-05-24 15:08:36 +02:00
Michael Friedrich fb596a70d1 Docs: Add styleguide with development details
@htriem
2019-05-24 14:48:56 +02:00
Michael Friedrich 23b823e341
Merge pull request #7142 from Icinga/feature/boost-asio-nscp
check_nscp_api: Rewrite using Boost ASIO and Beast
2019-05-23 14:15:47 +02:00
Michael Friedrich f44c5d7030 Merge branch 'support/2.10' 2019-05-23 13:57:54 +02:00
Michael Friedrich 22026cd859 Release version 2.10.5 2019-05-23 13:57:49 +02:00
Michael Friedrich 7a7e01868c Release version 2.10.5 2019-05-23 13:56:44 +02:00
Michael Friedrich eb3ce9cb83 check_nscp_api: Rewrite using Boost ASIO and Beast
This includes a huge workaround for NSCP not sending
the status reason correctly. Therefore parsing the raw
data buffer is required, otherwise we could just use
Beast's builtin HTTP parser as everywhere else.

refs #7142
refs #7041
2019-05-23 13:36:38 +02:00
Michael Friedrich b0cdad05c4
Merge pull request #7143 from Icinga/feature/boost-asio-debug-console
Use I/O engine in debug console CLI command
2019-05-22 13:52:09 +02:00
Michael Friedrich a0c8f41d58 Debug Console: Use our new I/O engine for HTTP requests
refs #7041
2019-05-22 12:51:23 +02:00
Michael Friedrich ea0fbf9a0b Docs: Remove EOL distributions (SLES11, Ubuntu 14)
(cherry picked from commit 478f087a3a)
2019-05-22 09:45:31 +02:00
Michael Friedrich 017cd813cf Adjust docs for 2.10.x from cherry-picked commits 2019-05-21 16:46:31 +02:00
Michael Friedrich 7e70bb2180 Update technical concepts docs on object authority and HA aware features
This includes are more detailed insight into how object authority calculation
works.

(cherry picked from commit 3fdc9669c6)
2019-05-21 16:44:33 +02:00
Michael Friedrich e6e3db8602 Quickfix technical docs for debugging
(cherry picked from commit 0bd1d9a6f8)
2019-05-21 16:41:23 +02:00
Michael Friedrich d875cd88d2
Merge pull request #7190 from Icinga/bugfix/check-service-ambiguous-parameter
Disable program option guessing in check_service
2019-05-20 16:09:42 +02:00
Michael Friedrich bbbf43fdc5
Merge pull request #7189 from peteeckel/fix/check_service-7188
Use --description instead of -d for check_service.exe
2019-05-20 16:08:19 +02:00
Michael Insel 3258d6832a Disable program option guessing in check_service
This disables the program option guessing in check_service to avoid
ambiguous parameter parsing.

refs #7188
2019-05-17 19:57:08 +02:00
Peter Eckel b7148cf558 Use --description instead of -d for check_service.exe 2019-05-17 15:09:58 +02:00
Michael Friedrich ef89ea79cb
Merge pull request #7185 from Icinga/bugfix/gelfwriter-wrong-log-facility
Fix wrong facility in GelfWriter log message
2019-05-17 08:33:34 +02:00
Michael Insel bb70613ed1 Fix wrong facility in GelfWriter log message
This fixes a wrong facility in GelfWriter log message (paused message).
2019-05-16 19:50:40 +02:00
Michael Insel bc0ab93e44 Use new I/O engine in GelfWriter 2019-05-16 19:39:06 +02:00
Michael Insel 7963881715 Add documentaion for GelfWriter TLS support
This adds the documentation for the GelfWriter TLS support.
2019-05-16 17:49:40 +02:00
Michael Insel 90bb423226 Implement TLS support for the GelfWriter
This implements TLS support for the GelfWriter.
2019-05-16 17:48:47 +02:00
Dirk Goetz a4f2006884 Docs: Add Master-Master-Replication as option for mysql
(cherry picked from commit c4f1ad7abb)
2019-05-16 16:54:27 +02:00
Michael Friedrich d5b2081d76 Docs: Add initial sync for secondary HA masters, hints on IDO DB clusters
refs #6492

(cherry picked from commit c2542710b7)
2019-05-16 16:53:29 +02:00
Michael Friedrich 9d658530ce Docs: Improve features chapter and add details on HA setups
refs #4855

(cherry picked from commit 07790e456b)
2019-05-16 16:53:06 +02:00
Michael Friedrich 5f4f50b9af Docs: Add note for reachability calculation with checks disabled
refs #6844

(cherry picked from commit 15326caf38)
2019-05-16 16:49:10 +02:00
Michael Friedrich 1d14b75fc1 Update AUTHORS 2019-05-16 16:48:25 +02:00
Alexander A. Klimov 40a19e41d0 ApiListener#ReplayLog(): read current log file too instead of rotating
(cherry picked from commit 407e77883c)
2019-05-16 16:45:58 +02:00
Alexander A. Klimov c55e4e122f ApiListener#RotateLogFile(): don't overwrite previous log
(cherry picked from commit 997d84bfa0)
2019-05-16 16:32:53 +02:00
Alexander A. Klimov 206fb222c0 Rotate replay log on shutdown, not on startup
(cherry picked from commit f44e847717)
2019-05-16 16:32:45 +02:00
Alexander A. Klimov 511772e08a ApiListener#ApiTimerHandler(): delete all replayed logs
refs #6932

(cherry picked from commit 9b489cf9b9)
2019-05-16 16:32:22 +02:00
Elias Ohm b623274918 another small adjustment by the way just to ensure the object on stack ist the same as the one serialized further in case the object does not implement locking on mutation (besides it's mor efficient to not fetch the same value twice)
(cherry picked from commit cdd843a998)
2019-05-16 16:31:09 +02:00
Elias Ohm 22fcdd868d add some object locking to the Dump method (which could theoreticylly suffer from same reace condition as serializer)
(cherry picked from commit 44ac6cf1ec)
2019-05-16 16:31:01 +02:00
Elias Ohm 68418eb6bc Lock Objects during serialization
old behaviour was to only lock arrays, dictionaries and namespaces but not other objects

(cherry picked from commit 91296c2a25)
2019-05-16 16:30:53 +02:00
Alexander A. Klimov ae3590023b Namespace: place ObjectLock in all methods
(cherry picked from commit 5afda77943)
2019-05-16 16:19:29 +02:00
Elias Ohm c6f84e24da try without initialization of frame Locals which are not used for permissions filter and as far as I can see also not for query filters
(cherry picked from commit c10ff9dd72)
2019-05-16 16:17:06 +02:00
Elias Ohm 14cb6ec741 use current frame scope for permission filter function calls
(cherry picked from commit 53febdea81)
2019-05-16 16:16:58 +02:00
Alexander A. Klimov 967616d88e FilterUtility::EvaluateFilter(): ensure not to modify the global namespace
(cherry picked from commit bdadb53940)
2019-05-16 16:16:51 +02:00
Elias Ohm 8315ea86d7 * 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)

(cherry picked from commit 1e7cd4afc8)
2019-05-16 16:12:21 +02:00
Michael Friedrich 6e822672be Add log message for log rotate; update docs
refs #6737

(cherry picked from commit df25b183cb)
2019-05-16 15:28:52 +02:00
Alexander A. Klimov 98d674f780 Timer::TimerThreadProc(): use C++11 lambda instead of bind()
refs #6737

(cherry picked from commit 7a8f8fd734)
2019-05-16 15:27:53 +02:00
Alexander A. Klimov f551666a7d StreamLogger#BindStream(): set #m_FlushLogTimer only if needed
refs #6737

(cherry picked from commit 622f684124)
2019-05-16 15:27:29 +02:00
Elias Ohm 304ba1fd6c 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

(cherry picked from commit 52e3db279a)
2019-05-16 15:26:47 +02:00