icinga-powershell-framework/lib
Tobias Deiminger d215cfd568 Use a BlockingCollection to avoid busy loop in REST API threads
The former implementation had 5 threads permanently spinning fast
(10ms sleep) while waiting for a REST connection to process.
This causes higher load in general and it breaks systems where
"Turn on PowerShell Script Block Logging policy" is enabled,
because then each PS statement including Start-Sleep is logged -
resulting in 500 event log entries per second. It's a suggested
setting in some hardening guidelines.

We can easily replace the Queue with a BlockingCollection backed
by a ConcurrentQueue, which has the built-in feature to sleep until
there are new items. Now the REST API threads consumes zero CPU time
while waiting.
2022-03-30 11:13:03 +02:00
..
apis Fixes lots of code styling, spelling and script analyzer 2022-01-14 22:26:53 +01:00
config Rewrite IfW service check daemon 2022-01-25 10:00:19 +01:00
core Adds feature to detect frozen threads 2022-03-18 22:54:43 +01:00
daemon Adds feature to detect frozen threads 2022-03-18 22:54:43 +01:00
daemons Use a BlockingCollection to avoid busy loop in REST API threads 2022-03-30 11:13:03 +02:00
help/help Remove legacy import from files 2021-08-07 14:27:17 +02:00
icinga Adds support for check_by_icingaforwindows.ps1 2022-01-28 23:31:23 +01:00
mssql Fixes MSSQL error handling on Integrated Security 2020-09-15 15:41:20 +02:00
web Improves error handling on IMC for Diretor 2021-09-10 11:40:58 +02:00
webserver Fixes Rest-Api SSL lookup for custom hostname 2022-03-17 12:26:39 +01:00
wmi Fixes lots of code styling, spelling and script analyzer 2022-01-14 22:26:53 +01:00