Alexander A. Klimov
9f9e2b3d95
Log#~Log(): skip messages based on Logger#m_ObjectFilterCache & ConfigObject#m_AllParentsAffectingLogging
...
If Logger#object_filter is set, but doesn't intersect with
ConfigObject#m_AllParentsAffectingLogging, drop the message.
2025-01-31 12:27:33 +01:00
Alexander A. Klimov
81ab5b6604
[TODO: REVERT] Repair GHA for now
2025-01-31 12:27:33 +01:00
Alexander A. Klimov
6b642b270e
Log#Log(): require passing one involved object
2025-01-31 12:27:33 +01:00
Alexander A. Klimov
481ef9ea72
Merge Log#Log() methods
2025-01-31 12:27:33 +01:00
Alexander A. Klimov
a3a6a8ab21
ConfigObject#OnAllConfigLoaded(): build m_AllParentsAffectingLogging cache
...
recursively from ConfigObject#GetParentsAffectingLogging().
2025-01-31 12:27:33 +01:00
Alexander A. Klimov
f98b5c5d7c
parent_affecting_logging: a config object affects everything functionally depending on it
2025-01-31 12:27:33 +01:00
Alexander A. Klimov
8c3b6adaec
parent_affecting_logging: a config object affects everything applied to it
...
See the currently supported apply rules.
2025-01-31 12:27:33 +01:00
Alexander A. Klimov
ddc10731a3
parent_affecting_logging: a group affects everything in it
2025-01-31 12:27:33 +01:00
Alexander A. Klimov
844bcd7508
parent_affecting_logging: a zone affects everything in it
2025-01-31 12:27:33 +01:00
Alexander A. Klimov
fff2cd8089
Forbid Zone#endpoints modification
...
The cluster tree can't be runtime-altered anyway.
2025-01-31 12:27:33 +01:00
Alexander A. Klimov
491499a7ac
Disallow Downtime#config_owner modification
...
This attribute is used only by ScheduledDowntime anyway
and is a relation declarator such as host_name, service_name.
2025-01-31 12:27:33 +01:00
Alexander A. Klimov
fd4d3e88b9
Introduce ObjectImpl<ConfigObject>#GetParentsAffectingLogging()
2025-01-31 12:27:33 +01:00
Alexander A. Klimov
071dae815e
Cache actual Logger#object_filter objects in Logger#m_ObjectFilterCache
2025-01-31 12:27:33 +01:00
Alexander A. Klimov
0738d6b78f
Logger#{OnAllConfigLoaded,SetObjectFilter}(): warn on missing objects for
2025-01-31 12:27:33 +01:00
Alexander A. Klimov
aaa06575af
Introduce Logger#object_filter
2025-01-31 12:27:33 +01:00
Alexander Aleksandrovič Klimov
d55c3644a2
Merge pull request #10312 from Icinga/win-configure-cmake-opts
...
tools/win32/configure*.ps1: allow custom $CMAKE_ARGS (JSON array)
2025-01-22 10:09:55 +01:00
Alexander A. Klimov
4175a47314
tools/win32/configure*.ps1: allow custom $CMAKE_ARGS (JSON array)
2025-01-21 18:17:05 +01:00
Alexander Aleksandrovič Klimov
866db3ba3c
Merge pull request #10137 from Icinga/win-progfiles-icinga2-var
...
On Windows, don't create C:\Program Files\Icinga2\var during MSI build
2025-01-16 12:02:33 +01:00
Julian Brost
4ffe88e263
Merge pull request #9732 from Icinga/silence-compiler-warnings-in-code-we-don-t-maintain
...
Silence compiler warnings in code we don't maintain
2025-01-15 16:33:24 +01:00
Alexander Aleksandrovič Klimov
cddb3ca868
Merge pull request #10279 from Icinga/Al2Klimov-patch-3
...
release.md: don't update doc/21-development.md
2025-01-14 12:53:21 +01:00
Alexander A. Klimov
6195a457a7
Silence compiler warnings in code we don't maintain
2025-01-14 11:48:33 +01:00
Julian Brost
1f047ebbf5
Merge pull request #10058 from Icinga/error-timestamp-out-of-range-53323
...
Ido*sqlConnection#FieldToEscapedString(): don't write out of range time
2025-01-14 09:43:37 +01:00
Alexander Aleksandrovič Klimov
cd7bf428b0
Merge pull request #10287 from Icinga/Al2Klimov-patch-7
...
21-development.md: support Windows Server
2025-01-13 18:43:11 +01:00
Julian Brost
55829c4f55
Merge pull request #10077 from RincewindsHat/reject_invalid_perfdata
...
Reject infinite performance data values
2025-01-13 12:00:12 +01:00
Julian Brost
fb50e4b1f1
Merge pull request #10188 from Icinga/icingadb-heartbeat-both-responsible
...
IcingaDB Check: Multiple Responsible Instances
2025-01-13 11:56:19 +01:00
Alexander A. Klimov
ab0f20d8d6
21-development.md: support Windows Server
...
That OS need NetFx3ServerFeatures to be enabled before NetFx3.
2025-01-13 11:29:38 +01:00
Julian Brost
ea789f85ec
Merge pull request #10282 from Icinga/fix-broken-links
...
Fix and cleanup broken and obsolete links
2025-01-10 14:34:53 +01:00
Lorenz Kästle
e7381193c8
Reject infinite performance data values
...
Some fault monitoring plugins may return "inf" or "-inf" as
values due to a failure to initialize or other errors.
This patch introduces a check on whether the parse value is infinite
(or negative infinite) and rejects the data point if that is the case.
The reasoning here is: There is no possible way a value of "inf" is ever
a true measuring or even useful. Furthermore, when passed to the
performance data writers, it may be rejected by the backend and lead
to further complications.
2025-01-09 11:46:34 +01:00
Julian Brost
b96dc39ea2
Merge pull request #10210 from Icinga/endpoint-client-dropped-early
...
JsonRpcConnection: Don't drop client from cache prematurely
2025-01-09 10:29:27 +01:00
Alexander Aleksandrovič Klimov
1065d3bb2d
Merge pull request #10284 from Icinga/Al2Klimov-patch-7
...
21-development.md: fix indentation
2025-01-08 18:33:13 +01:00
Yonas Habteab
1425641931
Don't endlessly wait on writer coroutine on disconnect
2025-01-08 16:30:36 +01:00
Yonas Habteab
41373ad0e5
Log before & after an RPC client is disconnected
2025-01-08 16:30:36 +01:00
Yonas Habteab
3af7cfe2ec
JsonRpcConnection: Don't drop client from cache prematurely
...
PR #7445 incorrectly assumed that a peer that had already disconnected
and never reconnected was due to the endpoint client being dropped after
a successful socket shutdown. However, the issue at that time was that
there was not a single timeout guards that could cancel the `async_shutdown`
call, petentially blocking indefinetely. Although removing the client from
cache early might have allowed the endpoint to reconnect, it did not
resolve the underlying problem. Now that we have a proper cancellation
timeout, we can wait until the currently used socket is fully closed
before dropping the client from our cache. When our socket termination
works reliably, the `ApiListener` reconnect timer should attempt to
reconnect this endpoint after the next tick. Additionally, we now have
logs both for before and after socket termination, which may help
identify if it is hanging somewhere in between.
2025-01-08 16:30:36 +01:00
Julian Brost
fba56f0e61
Merge pull request #10254 from Icinga/Timeout-Cancel
...
Timeout: use less resources, clean them up better and make cancellation deterministic
2025-01-08 16:28:54 +01:00
Blerim Sheqa
339ee7b125
Fix and cleanup broken and obsolete links
2025-01-08 13:42:20 +01:00
Alexander Aleksandrovič Klimov
9bc9d14e7e
Merge pull request #10283 from Icinga/itl-check_ssh-remote-pr9923
...
Update ITL for check_ssh
2025-01-08 12:22:44 +01:00
Alexander Aleksandrovič Klimov
d4b0e08c80
Merge pull request #10281 from Icinga/gha-sles
...
GHA: also test SLES, not just openSUSE
2025-01-08 12:04:01 +01:00
Alexander Aleksandrovič Klimov
b088d981ff
21-development.md: fix indentation
...
The last two points need to be children of the second one, but currently GitHub weights them equally.
2025-01-08 11:50:11 +01:00
Peter Eckel
920ba0b2db
Added the --dane
option to the command definition ssl_cert ( #10196 )
2025-01-08 10:47:37 +00:00
MarcusCaepio
a662cb1a6b
Update ITL for check_ssh
...
Adds parameters for check_ssh (-r and -P) based on
nagios-plugins 2.3.3 / monitoring-plugins 2.3
Fixes #9922
2025-01-08 10:31:25 +01:00
alvar
c5963712fa
Merge pull request #10261 from n-rodriguez/wip/unplugged_nics_state
...
ITL vmware-esx-soap-host-net{,-nic}: Add missing option "--unplugged_nics_state"
2025-01-08 09:03:33 +00:00
Alexander A. Klimov
8f72891228
Document Timeout
2025-01-07 18:20:54 +01:00
Alexander A. Klimov
3ca7ff7bf4
Timeout: explicitly delete #Timeout(const Timeout&), #Timeout(Timeout&&), #operator=(const Timeout&), #operator=(Timeout&&)
2025-01-07 18:20:52 +01:00
Alexander A. Klimov
27e0e236cb
Move Timeout instances from heap to stack
2025-01-07 18:20:50 +01:00
Alexander A. Klimov
d77d7506f1
Don't call Timeout#Cancel() where Timeout#~Timeout() is called
2025-01-07 18:20:14 +01:00
Alexander A. Klimov
959b162913
Timeout#~Timeout(), #Cancel(): support boost::asio::io_context running on multiple threads
2025-01-07 18:19:42 +01:00
Alexander A. Klimov
cb51649363
Timeout#Timeout(): drop unnecessary template parameters
2025-01-07 18:19:39 +01:00
Alexander A. Klimov
d2285bcf0e
While using Timeout, don't unnecessarily keep the strand alive via smart pointer
2025-01-07 18:18:46 +01:00
Alexander A. Klimov
8cdbea303b
Test Timeout
2025-01-07 18:18:39 +01:00
Alexander A. Klimov
faaeb4eb2e
Timeout: use a plain callback, not an unnecessary coroutine
2025-01-07 18:18:24 +01:00