Title: Handle template backups with agent_proxmox
Class: fix
Compatible: compat
Component: checks
Date: 1696513059
Edition: cre
Knowledge: doc
Level: 1
State: unknown
Version: 2.2.0p12
Till now, template backups were ignored by the special agent proxmox as they are missing some previously required data.
We now continue processing those kind of backups with a minimal set of information:
<ul>
<li> started_time
<li> total_duration
<li> archive_name
<li> archive_size
</ul>
Title: Handle fast transferred proxmox backups
Class: fix
Compatible: compat
Component: checks
Date: 1696505627
Edition: cre
Knowledge: undoc
Level: 1
State: unknown
Version: 2.2.0p12
This werk is relevant for you if you're monitoring your proxmox backups and you noted some of them are missing.
The reason for that is they were transferred in less than a second.
A potential traceback could have been:
C+:
cmk.special_agents.agent_proxmox_ve.BackupTask.LogParseWarning: End of VM '123' while still information is missing (we have: {'archive_name', 'archive_size', 'started_time', 'total_duration'})
C-:
This pattern was not yet recognized by our special agent and will now be honored.
Title: Handle redirect RoutingRules of azure's application gateways
Class: fix
Compatible: compat
Component: checks
Date: 1696591284
Edition: cre
Knowledge: doc
Level: 1
Version: 2.2.0p12
If you're having a http redirect routing rule configured in your azure application gateway, the parsing of the section may have failed with:
C+:
pydantic.error_wrappers.ValidationError: 10 validation errors for AppGateway
C-:
This is due to the fact, that a redirect routing rule may not have the previously required information (backendAddressPool and backendHttpSettings).
Those fields are now not required anymore.
Title: postgres_processes: Restore Monitoring if Instance Name is Missing
Class: fix
Compatible: compat
Component: checks
Date: 1695383436
Edition: cre
Knowledge: doc
Level: 1
State: unknown
Version: 2.2.0p12
As of version 2.1.0p30 and 2.2.0p4, it was no longer possible to use the plugin postgres_instances,
if the instance name was empty, i.e. ``. In previous versions, this plugin would show a service with
the item `PostgreSQL Instance `. This service would be OK, if there was at least one process
belonging to any postgres instance, and CRIT otherwise.
With this Werk, the plugin postgres_instances no longer crashes, if there is an empty instance name.
The old service `PostgreSQL Instance ` is no longer discovered. Instead the new check plugin
postgres_processes can be used.
Title: postgres: Fix Internal error: 'NoneType' object has no attribute 'value_to_json_safe'
Class: fix
Compatible: compat
Component: wato
Date: 1695631092
Edition: cee
Knowledge: doc
Level: 1
Version: 2.2.0p12
In Werk 16016, an incompatible change to rule `PostgreSQL database and sessions (Linux, Windows)`
was introduced. This Werk caused multiple regression bugs, particularly affecting users with
existing rulesets.
If a user upgraded to 2.1.0p33 and had an existing rule `PostgreSQL database and sessions (Linux,
Windows)`, then the would see the following error during upgrade:
C+:
- ERROR: Failed to transform rule: (Ruleset: agent_config:mk_postgres, ...}}:
C-:
Moreover, if users tried to address the issue by editing the rule, then the following error was
shown:
C+:
Internal error: 'NoneType' object has no attribute 'value_to_json_safe'
C-:
With this Werk, the configuration is automatically migrated to the new format and the errors should
no longer occur. Users, whom upgraded to 2.2.0p8 were not affected by this problem.
If a user updated the agent plugin `mk_postgres.py` with means other than the bakery, then they
would encounter the following error while executing `mk_postgres.py`:
C+:
ValueError: not enough values to unpack (expected 4, got 3)
C-:
This error could be addressed by adopting the postgres.cfg in the ways described by Werk 16016.
However, if the environment file was called `.env`, then another error might occur:
C+:
ValueError: Instance name can not be inferred from .env file, instance name should be specified explicitly
C-:
With this Werk, these errors no longer occur. Both, old configuration files and configuration files
where the instance name is empty, are considered to be valid. The absence of an instance name is
handled in the same way it was handled before Werk 16016.
Note, that an empty instance is still a mistake. If you are affected by any of the two errors above,
it is recommended to migrate to the configuration format and to specify a non-empty instance name
explicitely. For example, let's assume your configuration file contains this line:
C+:
INSTANCE=/home/postgres/db1.env:USER_NAME:/PATH/TO/.pgpass
C-:
Then, you can find the instance name by taking the environment file path (`/home/postgres/db1.env`),
removing the directory (`db1.env`), and removing everything after the `.` (`db1`). Thus, the new
format is equivalent to:
C+:
INSTANCE=/home/postgres/db1.env:USER_NAME:/PATH/TO/.pgpass:db1
C-:
Sometimes, this may fail if your instance name is empty. For example,
C+:
INSTANCE=/home/postgres/.env:USER_NAME:/PATH/TO/.pgpass
C-:
would result in
C+:
INSTANCE=/home/postgres/.env:USER_NAME:/PATH/TO/.pgpass:
C-:
With this version of `mk_postgres.py` this configuration is allowed again, but it is not
recommended. You view your instances, by creating a `psql` session and using the command
C+:
postgres-# \l
C-:
Additionally, Werk 15644 fixes the crash of the postgres_instances check.
Title: Pure Storage FlashArray: Internal Alerts: Only show open alerts
Class: fix
Compatible: compat
Component: checks
Date: 1696842132
Edition: cre
Knowledge: doc
Level: 1
Version: 2.3.0b1
The "Internal Alerts" service for Pure Storage FlashArray should only monitor alerts with the state "open". However, the relevant filter was not working correctly and all alerts were monitored until now.
This has been fixed with this werk.
Title: folder_config: Extend GET and DELETE endpoints folder name pattern to match the CREATE enpoint one
Class: fix
Compatible: compat
Component: rest-api
Date: 1696846527
Edition: cre
Knowledge: doc
Level: 1
Version: 2.3.0b1
Previously, the folder name pattern for GET and DELETE endpoints were stricter than the CREATE, provoking that a new folder could not be retrieved nor deleted. This fix widens the folder name pattern on GET and DELETE endpoints to align with the CREATE one.
Title: Handle redirect RoutingRules of azure's application gateways
Class: fix
Compatible: compat
Component: checks
Date: 1696591284
Edition: cre
Knowledge: doc
Level: 1
State: unknown
Version: 2.3.0b1
If you're having a http redirect routing rule configured in your azure application gateway, the parsing of the section may have failed with:
C+:
pydantic.error_wrappers.ValidationError: 10 validation errors for AppGateway
C-:
This is due to the fact, that a redirect routing rule may not have the previously required information (backendAddressPool and backendHttpSettings).
Those fields are now not required anymore.
Title: Handle template backups with agent_proxmox
Class: fix
Compatible: compat
Component: checks
Date: 1696513059
Edition: cre
Knowledge: doc
Level: 1
State: unknown
Version: 2.3.0b1
Till now, template backups were ignored by the special agent proxmox as they are missing some previously required data.
We now continue processing those kind of backups with a minimal set of information:
<ul>
<li> started_time
<li> total_duration
<li> archive_name
<li> archive_size
</ul>
Title: Handle fast transferred proxmox backups
Class: fix
Compatible: compat
Component: checks
Date: 1696505627
Edition: cre
Knowledge: undoc
Level: 1
State: unknown
Version: 2.3.0b1
This werk is relevant for you if you're monitoring your proxmox backups and you noted some of them are missing.
The reason for that is they were transferred in less than a second.
A potential traceback could have been:
C+:
cmk.special_agents.agent_proxmox_ve.BackupTask.LogParseWarning: End of VM '123' while still information is missing (we have: {'archive_name', 'archive_size', 'started_time', 'total_duration'})
C-:
This pattern was not yet recognized by our special agent and will now be honored.