Commit Graph

13513 Commits

Author SHA1 Message Date
Alexander A. Klimov 415b810abf IcingaDB::PrepareObject(): round Notification#times.{begin,end} not to crash Go daemon
The latter expects ints, not floats - not to mention strings.
Luckily Icinga already enforces numeric strings so that we can cast it to number.
2023-06-27 12:53:08 +02:00
Alexander Aleksandrovič Klimov a3dabde28a
Doc: Troubleshooting: recommend reducing concurrency for more speed (#9777) 2023-06-05 16:30:06 +00:00
Julian Brost 7c381ae12f
Merge pull request #9779 from Icinga/macroprocessor-resolvemacro-quasi-cv-object-icingaapplication
MacroProcessor::ResolveMacro(): treat quasi-CV-object IcingaApplication as real CV-object
2023-05-31 20:41:31 +02:00
Julian Brost e2bfd21bae
Merge pull request #9767 from Icinga/doc-ifw
Doc: recommend IfW more prominently
2023-05-31 16:36:04 +02:00
Alexander A. Klimov a9c80ffb2e MacroProcessor::ResolveMacro(): treat quasi-CV-object IcingaApplication as real CV-object
As MacroProcessor checked just for CustomVarObject base class, but
IcingaApplication provided the vars attribute by itself, it had to also
resolve CV macros by itself. That logic diverged from MacroProcessor so that
macros inside IcingaApplication CVs weren't resolved. Until now.
2023-05-31 16:35:09 +02:00
Julian Brost bc492cc3ce
Merge pull request #9688 from Icinga/bugfix/selinux-sudo-logging
Add syslog logging to SELinux
2023-05-31 15:19:39 +02:00
Alexander A. Klimov bbcde92dc6 Doc: recommend IfW more prominently
to make it the users' preferred choice.
2023-05-31 12:44:26 +02:00
Julian Brost 8a42c3bf18
Merge pull request #9775 from Icinga/icingadb-service-crashes-on-negative-downtime-duration-or-end-before-start-9774
Icinga DB: don't write negative Downtime durations into Redis
2023-05-31 11:37:42 +02:00
Alexander A. Klimov 75eaa81c06 Icinga DB: don't write negative Downtime durations into Redis
via `std::max(0, x)` not to crash the Go daemon which can't handle such.
2023-05-30 17:56:03 +02:00
Julian Brost b0899d9ab4
Merge pull request #8429 from Icinga/bugfix/last-reload-attempt-failed-8428
Share "Last reload attempt failed" time across Icinga process tree on *nix
2023-05-30 11:42:21 +02:00
Julian Brost d871c5c837
Merge pull request #9772 from Icinga/icinga-db-feature-should-normalize-command-arguments-required-skip_key-repeat_key-to-boolean-9576
Icinga DB feature: normalize *Command.arguments[*].{required,skip_key…
2023-05-25 11:54:01 +02:00
Julian Brost 68cebc6bd5
Merge pull request #9769 from Icinga/docs/parse-performance-data
Fix documentation for parse_performance_data DSL function
2023-05-25 11:01:39 +02:00
Alexander A. Klimov ad618e9716 Icinga DB feature: normalize *Command.arguments[*].{required,skip_key,repeat_key} to boolean
At the moment, the Icinga DB feature will use that value as-is and
serialize it to JSON, resulting in a crash in Icinga DB down the road
because it expects a boolean.
2023-05-24 16:04:14 +02:00
Julian Brost 07d2527c7f
Merge pull request #9703 from Icinga/NSClient++
Windows MSI: don't bundle NSClient++
2023-05-24 14:49:54 +02:00
Julian Brost 2470e930eb
Merge pull request #9643 from Icinga/hardware_concurrency
Always use Configuration#Concurrency, not `std:🧵:hardware_concurrency()`
2023-05-23 19:23:14 +02:00
Alexander A. Klimov 3fae41ef22 Restart thread pool after freezing Configuration
The user (-D) or we could have changed Configuration.Concurrency,
so correct the thread pool's thread amount.
2023-05-23 14:41:35 +02:00
Julian Brost 0e25644151
Merge pull request #8969 from Icinga/bugfix/perfdata-dont-get-parsed-correctly-8912
PluginUtility: Fix PerfData parsing for values separated with multiple spaces
2023-05-22 17:16:31 +02:00
Julian Brost 9463c937e6
Fix documentation for parse_performance_data DSL function
The function does not support parsing multiple values at once but instead
generates labels like "foo=1 bar":

  Icinga 2 (version: v2.13.0-729-g8fe957bc2)
  Type $help to view available commands.
  <1> => parse_performance_data("foo=1 bar=2")
  {
  	counter = false
  	crit = null
  	label = "foo=1 bar"
  	max = null
  	min = null
  	type = "PerfdataValue"
  	unit = ""
  	value = 2.000000
  	warn = null
  }

While a function with the documented behavior would probably be more useful,
that change can't be made in a compatible way as this would have to change the
return type from PerfdataValue to Array.
2023-05-22 16:56:43 +02:00
Alexander Aleksandrovič Klimov 8fe957bc26
Merge pull request #9763 from Icinga/Al2Klimov-patch-6
Doc: don't mix up check_mysql and check_disk
2023-05-20 09:42:57 +02:00
Julian Brost 2fcc3e00ac
Merge pull request #9764 from Icinga/probot/update-authors/master/bead025b9cf7d20e931bca4d40599c2fa3952959
Update AUTHORS
2023-05-19 20:33:34 +02:00
icinga-probot[bot] a3f6ce512c
Update AUTHORS 2023-05-19 14:34:51 +00:00
Julian Brost bead025b9c
Merge pull request #9713 from Tqnsls/Tqnsls-updated-mail-notifications
Updated mail-host-notification and mail-service-notification
2023-05-19 16:34:21 +02:00
Alexander Aleksandrovič Klimov 23e50a1f64
Doc: don't mix up check_mysql and check_disk 2023-05-17 15:21:53 +02:00
Alexander A. Klimov 32eb1680f7 Configuration.Concurrency: default to 1 until Configuration freeze
not to start many threads before the user could override their amount (-D).
2023-05-11 16:59:47 +02:00
Julian Brost 3276cc9412
Merge pull request #9705 from Icinga/windows-doc-off
On Windows don't ship docs and images
2023-05-11 16:13:55 +02:00
Alexander A. Klimov 8fb5d53118 Track Configuration.Concurrency modifications 2023-05-11 15:41:35 +02:00
Julian Brost 0320431bc2
Merge pull request #9761 from Icinga/boost182
Bump Boost shipped for Windows to v1.82
2023-05-11 15:27:12 +02:00
Alexander A. Klimov d552d0779e Bump Boost shipped for Windows to v1.82 2023-05-10 16:40:46 +02:00
Henrik Triem 6febbdc19a
Add syslog logging to SELinux during usage of sudo 2023-05-10 09:16:13 +02:00
Alexander Aleksandrovič Klimov 9f5ba58a1c
Merge pull request #9706 from Icinga/Al2Klimov-patch-3
Require CMake s/2.8.8/2.8.12/
2023-05-09 10:20:28 +02:00
Julian Brost 517b291a94
Merge pull request #9757 from Icinga/Al2Klimov-patch-6
Fix typo
2023-05-08 20:10:40 +02:00
Julian Brost e9fa037983
Merge pull request #9754 from Icinga/cmake3
GHA: use a CMake version which can set(CMAKE_CXX_STANDARD 17) where possible
2023-05-08 18:52:42 +02:00
Alexander Aleksandrovič Klimov ae0a4fb464
Fix typo
which leaves a string open and prevents the code which should be outside it from running.
2023-05-08 15:23:06 +02:00
Alexander A. Klimov 5c330e9d4f Share "Last reload attempt failed" time across Icinga process tree on *nix
... as only the umbrella process knows that time,
but the icinga check running in the main process also needs to know it.

refs #8428
2023-05-08 14:42:21 +02:00
Julian Brost b4ce16c488
Merge pull request #9748 from Icinga/Al2Klimov-patch-6
GHA: Drop openSUSE 15.3 (EOL)
2023-05-08 14:20:55 +02:00
Julian Brost eca8890d49
Merge pull request #9718 from Icinga/acknowledgement-sync-between-masters-are-not-working-9652
Checkable#ProcessCheckResult(): only clean up ack comments older than check result
2023-05-05 15:29:38 +02:00
Alexander A. Klimov 59d07ec03c GHA: use a CMake version which can set(CMAKE_CXX_STANDARD 17) where possible
especially on Amazon Linux which seems to have trouble with our workaround:
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
2023-05-02 15:40:32 +02:00
Julian Brost af9d67b262
Merge pull request #9726 from Icinga/43624b
Remove -and notify- expired downtimes immediately, not every 60s II
2023-05-02 11:25:03 +02:00
Julian Brost b724d61330
Merge pull request #9683 from Icinga/third-party/utf8cpp
Update vendored github.com/nemtrif/utfcpp to v3.2.3
2023-04-28 17:31:09 +02:00
Alexander A. Klimov 58b788cd51 Downtime#Start(): trigger flexible downtimes not earlier than fixed ones
the last state change could be a long time ago. If it's longer than
the new downtime's duration, the downtime expires immediately.

trigger time + duration < now
2023-04-18 16:55:32 +02:00
Alexander Aleksandrovič Klimov 4b3a845e50
GHA: Drop openSUSE 15.3 (EOL) 2023-04-18 15:35:46 +02:00
Julian Brost a15ce7fc70
Merge pull request #9741 from Icinga/docs-monitoring-basics-make-event-commands-not-a-subsection-of-dependencies
Docs: Monitoring Basics: make Event Commands not a subsection of Dependencies
2023-04-17 17:51:49 +02:00
Alexander A. Klimov 5638b3b234 Docs: Monitoring Basics: make Event Commands not a subsection of Dependencies 2023-04-17 13:43:19 +02:00
Julian Brost 8238ec0d96
Merge pull request #9725 from Icinga/operation_aborted-shutDownIfNeeded.Cancel
ApiListener#NewClientHandlerInternal(): on basic_socket#cancel() (due to timeout) don't ssl::stream#async_shutdown()
2023-04-17 12:21:21 +02:00
Alexander A. Klimov 0ac1cd1ecb Rename Downtime::DowntimesExpireTimerHandler()
to actually reflect its purpose.
2023-04-14 14:52:05 +02:00
Alexander A. Klimov 6adf2d19e4 Remove -and notify- expired downtimes immediately, not every 60s
Don't look for expired downtimes in a timer fired every 60s,
but fire one timer per downtime once at expire time.
2023-04-14 14:52:05 +02:00
Alexander A. Klimov ba7102cae3 Explicitly stop started timers and wait for them
before permitting their parent objects' destruction.
For the cases where the handlers have raw pointers to these objects.
2023-04-14 14:52:04 +02:00
Alexander Aleksandrovič Klimov c2c0c27dac
Fix typo 2023-04-14 12:36:01 +02:00
Alexander Aleksandrovič Klimov a85892ccb9
mail-*-notification: remove redundant required = false 2023-04-14 12:22:27 +02:00
Julian Brost 8228fae740
Merge pull request #8627 from WuerthPhoenix/bug/agent-cannot-update-executions-8616
Fix update execution message discarded. refs #8616
2023-04-13 19:29:49 +02:00