Releases: Icinga/icinga-powershell-framework
Releases · Icinga/icinga-powershell-framework
Icinga for Windows v1.13.0-beta2
Icinga for Windows v1.13.0-beta1
1.13.0 Beta-1 (2024-08-30)
Notes
This beta release has reworked the entire handling on how thresholds and the checker core operate. For that reason, the Beta-1
release will not include the Metrics over Time
feature. The goal of this beta is to get an idea if the threshold handling is working as expected and evaluate the performance gains for the new check handling. The Metrics over Time
feature will be re-implemented with an entire new background task and configurations in Beta-2
.
Bugfixes
- #729 Fixes
Update-Icinga
to print an error in case a component is not installed, instead of silently continue - #734 Fixes a scenario on which a JEA service could become orphaned while manually stopping the Icinga for Windows service, without gracefully shutting down JEA
- #735 Fixes an issue with filter for EventLog events, which did not properly handle multiple event id includes, causing empty results
- #743 In the REST API response header
Server
, tell the software version, not the machine name (RFC 9110) - #745 Fixes an issue for service provider with service names not interpreted correctly in case it contains
[]
- #746 Fixes an issue with performance counters, sometimes reporting empty values instead of at least 0
Enhancements
- #711 Adds cmdlet
Write-IcingaAgentEventLogConfig
to update eventlog severity and defaults towarning
during installation and migration - #732 Adds support for TLS 1.3 and improves startup response
- #735 Adds support to provide occuring problem event id's for the Eventlog and corresponding acknowledgement id's, providing an indicator if certain issues are resolved or still present
- #739 Adds support to check the encoding of files to ensure we can properly load them and throw errors for unsupported encoding
- #740 Adds new command
Invoke-IcingaForWindowsRESTApi
for easier API communication - #742 Adds support for the CPU provider to limit the CPU usage to 100% for each thread
- #750 Reworks the internal handling on how plugin thresholds are evaluated and the internal checker core, including on how performance metrics are generated
Icinga for Windows v1.12.3
1.12.3 (2024-04-24)
Bugfixes
- #718 Fixes Icinga repository JSON validator to report the correct state of the validation status, in case the JSON is not valid
- #722 Fixes leading
\
for the service binary path and directory, which results in wrong behavior while using the same shell on which the initial installation was made - #724 Fixes
icingaforwindows.pfx
creation in case anothercertutil
is installed on the system and being available in thePATH
environment - #725 Fixes Icinga for Windows certificate handling by keeping the .pfx file on the system as created, without using the certificate store. Also fixes handling for providing thumbprints for certificates, which are now loaded directly from the certificate store by also providing a new filter mechanic to fetch the proper certificates from the store
Icinga for Windows v1.12.2
1.12.2 (2024-04-10)
Bugfixes
- #719 Fixes certificate handling for renewing certificates with the scheduled task background, which could fail on some Windows Server 2022 environments
Icinga for Windows v1.12.1
1.12.1 (2024-04-09)
Bugfixes
- #672 Fixes Icinga for Windows REST-Api to fully read client data, even when they client is sending the packets on a very slow basis, preventing the API trying to process an incomplete request
- #707 Fixes size of the
Icinga for Windows
eventlog by setting it to20MiB
, allowing to store more events before they are overwritten - #708 Fixes the order for updating components with
Update-Icinga
, to ensure theframework
is always updated first before all other components - #709 Fixes error handling for Icinga for Windows repositories by providing more details about occurring errors as well as properly checking the JSON-File for the repository and providing more details about JSON errors
- #710 Fixes various console errors while running Icinga for Windows outside of an administrative shell
- #713 Fixes Icinga for Windows REST-Api which fails during certificate auth handling while running as
NT Authority\NetworkService
- #714 Fixes missing service environment information during initial setup of Icinga for Windows v1.12 on some systems
- #715 Fixes internal scheduled task handling and certificate renewal task by setting the user to
LocalSystem
instead of any administrative user or group, ensuring compatibility with all Windows versions as well as managing by using WinRM and SSH - #716 Fixes Icinga for Windows certificate creation while using WinRM or SSH for remote connections
Icinga for Windows v1.12.0
1.12.0 (2024-03-26)
Bugfixes
- #673 Fixes a memory leak while fetching Windows EventLog information by using CLI tools and inside the Hyper-V provide
- #678 Fixes various memory leaks in Icinga for Windows API core and check handler
- #680 Fixes exception in some cases, when provider or metrics return values as
null
instead of0
while units are being used for check objects - #683 Fixes JEA installer to exclude domain from user name length check, which can easily exceed the Windows 20 digits username limit
- #685 Fixes an issue while trying to stop the JEA process in certain cases, which results in an error during installation but has no other effect on the environment
- #686 Fixes certutil error handling and message output in case the icingaforwindows.pfx could not be created
- #687 Fixes Icinga for Windows port handling on installation, which will now use the proper defined port for communicating with the Icinga CA
- #699 Fixes Icinga for Windows password management for the managed user
icinga
, which could fail in some cases because of ambiguous characters or complexity errors and will now retry up to 10 times before giving up - #702 Fixes an issue with Icinga Director Self-Service API, which ignored the defined service user
Enhancements
- #313 Adds IWKB entry
IWKB000017
handling issues with failed checks once SCOM is uninstalled as example - #587 Adds support to create own snapshot repositories with
New-IcingaRepository
- #631 Deduplicates
-C try { Use-Icinga ...
boilerplate by adding it to thePowerShell Base
template and removing it from every single command - #669 Adds new metric to the CPU provider, allowing for distinguishing between the average total load as well as the sum of it
- #679 Adds a new data provider for fetching process information of Windows systems, while sorting all objects based on a process name and their process id
- #682 Adds new data provider for fetching Eventlog information to increase performance and reduce memory impact
- #688 Adds new handling to add scheduled tasks in Windows for interacting with Icinga for Windows core functionality as well as an auto renewal task for the Icinga for Windows certificate generation
- #690 Adds automatic renewal of the
icingaforwindows.pfx
certificate for the REST-Api daemon in case the certificate is not yet present, valid or changed during the runtime of the daemon while also making theicingaforwindows.pfx
mandatory for all installations, regardless of JEA being used or not - #692 Renames
Restart-IcingaWindowsService
toRestart-IcingaForWindows
and adds alias for backwards compatibility to start unifying the Icinga for Windows cmdlets - #693 Adds new command
Restart-Icinga
to restart both, the Icinga Agent and Icinga for Windows - #694 Adds support for check objects not being added to summary header
- #695 Adds security hardening to JEA profiles by always prohibit certain cmdlets
- #700 Adds feature to support using pipes and multi lines for plugin documentation
- #701 Adds new command
Test-IcingaForWindows
to check the current environment health by also improving internal handlings on how service information are fetched, preventing a lock on those
Icinga for Windows v1.11.1
1.11.1 (2023-11-07)
Bugfixes
- #659 Fixes configuration writer which publishes invalid Icinga plain configuration files
- #660 Fixes
Update-Icinga
not updating to the latest available version for a component and specifying-Version
is updating to the latest one instead of the given one instead - #661 Fixes Icinga Agent installation and uninstallation, which could cause unintended automatic reboots
- #662 Fixes JEA-Profiles always being updated during
Update-Icinga
calls, even when no component or non JEA related components were updated - #664 Fixes JEA profile compiler not including REST-Api configuration during first installation
Icinga for Windows v1.11.0
1.11.0 (2023-08-01)
Bugfixes
- #579 Fixes error message during config generation with
Get-IcingaCheckCommandConfig
to make it more clear, in case the custom variables generated are too long for the Icinga Director import - #603 Fixes service filter to handle exclude with wildcards instead of requiring the full service name (not applying to the display name)
- #609 Fixes config generator to never use
set_if = true
on Icinga 2/Icinga Director configuration - #611 Fixes
Sync-IcingaRepository
which did not save the SSH user and host inside the repository configuration, preventingUpdate-IcingaRepository
to work properly and added missing scp progress - #615 Fixes the framework migration tasks which fails in case multiple versions of the framework are installed, printing warnings in case there is
- #617 Fixes failing calls for plugins which use a switch argument like
-NoPerfData
, which is followed directly by the-ThresholdInterval
argument - #621 Fixes
-ThresholdInterval
key detection on newer systems - #634 Fixes an issue with
Clear-Host
which could cause an exception during certain automation tasks, causing it to fail - #645 Fixes error and exception handling while using API-Checks, which now will in most cases always return a proper check-result object and also abort while running into plugin execution errors, in case a server is not reachable by the time sync plugin for example
- #646 Fixes REST-Api to allow arguments for check execution with and without leading
-
- #648 Fixes some memory management while using the REST-Api to clear connection objects once they are no longer required
Enhancements
- #544 Adds support to configure the Icinga Director JSON string for registering hosts via self-service API
- #572 Adds support to write the name of the repository synced/created into the local
ifw.repo.json
file - #573 Adds support to run command
icinga
with new argument-NoNewInstance
, to use-RebuildCache
as example to update the current PowerShell instance with all applied changes - #613 Adds a
-Version
parameter to theUpdate-Icinga
command, to be able to update a component to a specified version [@log1-c] - #619 Adds feature to securely read enum provider values with new function
Get-IcingaProviderEnumData
- #623 Adds support to provide the Icinga service user written as
user@domain
- #633 Adds support for Icinga 2.14.0 native Icinga for Windows API communication
- #635 Adds support for
Write-IcingaAgentApiConfig
function to configure the Icinga Agent TLS cipher list setting by new argument-CipherList
- #637 Adds new base handling for future data providers with first metrics for
CPU
information - #638 Adds option for formatted, colored console prints with
Write-ColoredOutput
- #640 Adds support to set the flag
-NoSSLValidation
for Cmdletsicinga
andInstall-Icinga
, to ignore errors on self-signed certificates within the environment - #643 Adds support for
-RebuildCache
flag onicinga
cmd to rebuild component cache as well - #644 Adds progress bar output to repository interaction (sync, update, new) instead of plain text output
- #649 Adds new basic data provider base for Hyper-V information
- #655 Adds IWKB and test/manage Cmdlets for SCOM intercept counters
- #656 Adds new feature to write document content easier by storing it in memory first and then allowing to write it to disk at once with proper UTF8 encoding
Icinga for Windows v1.10.1
1.10.1 (2022-12-20)
Bugfixes
- #578 Fixes installation and uninstallation commands changing PowerShell location even when not necessary
- #582 Fixes background service registration caused by migration task for v1.10.0 being executed even when no services were defined before
- #588 Fixes threshold values causing an error because of too aggressive regex expression
- #599 Fixes plugin argument parser to proceed with real argument names and possible provided aliases
Icinga for Windows v1.10.0
1.10.0 (2022-08-30)
Please have a look on the upgrading docs before upgrading to v1.10.0!
Deprecated
- We have decided to now officially deprecate the previous installation method
Start-IcingaAgentInstallWizard
. It hasn't been updated or promoted in a long time and all new features have been moved to the Icinga Management Console. Please update your installation method to the new solution. The old method will be removed in a future release.
Bugfixes
- #473 Fixes an issue with current string rendering config implementation, as string values containing whitespaces or
$
are rendered wrong by default, if not set in single quotes''
- #476 Fixes exception
You cannot call a method on va null-valued expression
during installation in case no background daemon is configured - #482 Fixes encoding problems with special chars or German umlauts during plugin execution and unescaped whitespace in plugin argument strings like
Icinga for Windows
, which was previously wrongly rended asIcinga
for example - #489 Fixes error message
This argument does not support the % unit
in case aBaseValue
is set, but the actual value is0
- #503 Fixes wrong conversion of values for
Convert-IcingaPluginThresholds
, which did not properly handle string values containing certain units inside the string itself - #505 Fixes certificate generation and host registration, in case a custom hostname was set during usage of
Install-Icinga
automation - #529 Fixes package manifest reader for Icinga for Windows components on Windows 2012 R2 and older
- #523 Fixes errors on encapsulated PowerShell calls for missing Cmdlets
Write-IcingaConsoleError
andOptimize-IcingaForWindowsMemory
- #524 Fixes uninstallation process by improving the location handling of PowerShell instances with Icinga IMC or Shell
- #528 Fixes negative thresholds being interpreted wrongly as argument instead of an value for an argument
- #545 Fixes
RemoteSource
being cleared within repository.json
files duringUpdate-IcingaRepository
tasks - #552 Fixes file encoding for Icinga for Windows v1.10.0 to ensure the cache is always properly created with the correct encoding
- #553 Fixes an exception caused by service recovery setting, if the required service was not installed before
- #556 Fixes the certificate folder not present during first installation, preventing permissions properly set from the start which might cause issues once required
- #562 Fixes corrupt Performance Data, in case plugins were executed inside a JEA context without the REST-Api
- #563 Fixes checks like MSSQL using arguments of type
SecureString
not being usable with the Icinga for Windows REST-Api - #565 Fixes internal cache file writer and reader to store changes inside a
.tmp
file first and validating the file state and content, before applying it to the actual file to prevent data corruption - #566 Fixes useless testing and printing of error messages, in case the Icinga Agent is not installed during installation and Icinga for Windows printing plenty of errors, because the ACL checks cannot be completed because of the missing Agent
- #568 Fixes misleading SID error during uninstallation of Icinga for Windows or the Agent component
Enhancements
- #40 Adds support to set service recovery for the Icinga Agent and Icinga for Windows service, to restart them in case of a crash or error
- #485 Adds new style for performance data labels, to use the multi output format, allowing for better filtering and visualisation with InfluxDB and Grafana
- #502 Adds support for hostname override for old installer function
Start-IcingaAgentInstallWizard
[moreamazingnick] - #525 Adds new developer mode for
icinga
command and improved cache handling, to ensure within-DeveloperMode
and inside a VS Code environment, the framework cache file is never overwritten, while still all functions are loaded and imported. - #531 Adds
Test-IcingaStateFile
andRepair-IcingaStateFile
, which is integrated intoTest-IcingaAgent
, to ensure the Icinga Agent state file is healthy and not corrupt, causing the Icinga Agent to fail on start - #534 Improves Icinga and Director configuration generator, by wrapping PowerShell arrays inside
@()
instead of simply writing them comma separated - #536 Adds new function
Test-IcingaArrayFilter
for easier include and exclude filtering during plugin runtime and to allow filtering of array content for intended values only - #560 Improves handling for Icinga Management Console which will now terminate itself during full uninstallation and restarts after updating the Icinga PowerShell Framework, to apply changes directly
- #569 Adds
-Include
and-Exclude
filter for EventLog CLI parser, to only contain certain messages or exclude them from the output