Title: omd restart: Exit Code is 2 on Failure
Class: fix
Compatible: compat
Component: omd
Date: 1706275639
Edition: cre
Level: 1
Version: 2.1.0p39
<code>omd restart</code> executes <code>omd start</code> and <code>omd stop</code>, both of which can terminate with exit code zero
or two. Previously, the exit code of these commands would be ignored. <code>omd restart</code> now reports the
worst exit code reported by the two commands.
Title: omd restart: Exit Code is 2 on Failure
Class: fix
Compatible: compat
Component: omd
Date: 1706275639
Edition: cre
Level: 1
Version: 2.2.0p21
<code>omd restart</code> executes <code>omd start</code> and <code>omd stop</code>, both of which can terminate with exit code zero
or two. Previously, the exit code of these commands would be ignored. <code>omd restart</code> now reports the
worst exit code reported by the two commands.
Title: host_config: add inherited labels to effective attributes
Class: fix
Compatible: compat
Component: rest-api
Date: 1706268055
Edition: cre
Level: 1
Version: 2.2.0p21
Previously, when using the effective attributes query parameter with the
C+:
GET /objects/host_config/{host_name}
C-:
endpoint, only the labels of the current host have been returned.
Now all of the effective labels are aggregated and returned.
[//]: # (werk v2)
# New OderBy header in livestatus
key | value
---------- | ---
date | 2024-01-29T10:12:24+00:00
version | 2.4.0b1
class | feature
edition | cre
component | livestatus
level | 1
compatible | yes
We provide a new header for livestatus that returns the rows in
sorted order.
For example, to sort host names in descending order
```
$ lq 'GET hosts\nColumns: name\nOrderBy: name desc'
zhost
yhost
xhost
...
```
in ascending order
```
$ lq 'GET hosts\nColumns: name\nOrderBy: name asc'
ahost
bhost
...
```
or, alternatively without `asc`,
```
$ lq 'GET hosts\nColumns: name\nOrderBy: name'
ahost
bhost
...
```
The `OrderBy` header can be combined with the `Limit` header to
limit the number of results as expected.
```
$ lq 'GET hosts\nColumns: name\OrderBy: name\Limit: 1'
ahost
```
Furthermore, it is possible to sort on dictionary keys with the
following syntax
```
$ lq << EOF
GET services
Columns: host_name description performance_data
OrderBy: performance_data.user_time
EOF
...
```
[//]: # (werk v2)
# NetApp: addition of datasource program and check plugins for NetApp ONTAP
key | value
---------- | ---
date | 2024-01-29T12:15:27+00:00
version | 2.4.0b1
class | feature
edition | cre
component | checks
level | 1
compatible | yes
Since NetApp has discontinued support for their old API this werk adds datasource program and check plugins for the new NetApp ONTAP REST API.
However, the new API does not provide certain metrics that were available in the old API. As a result, the new check plugins have been modified accordingly.
The plugins that have been migrated with this werk are the ones that monitor:
- NetApp aggregates
- NetApp node's CPUs
- NetApp disks
- NetApp sensors of environment and shelves
- NetApp node's fans
- NetApp node's interfaces
- NetApp LUNs
- NetApp node's ports
- NetApp power supply units
- NetApp volumes (and snapshots)
- NetApp (SVMs) Storage Virtual Machine's (formerly called "vservers”) traffic and status
[//]: # (werk v2)
# omd restart: Exit Code is 2 on Failure
key | value
---------- | ---
date | 2024-01-26T13:27:19+00:00
version | 2.4.0b1
class | fix
edition | cre
component | omd
level | 1
compatible | yes
`omd restart` executes `omd start` and `omd stop`, both of which can terminate with exit code zero
or two. Previously, the exit code of these commands would be ignored. `omd restart` now reports the
worst exit code reported by the two commands.
[//]: # (werk v2)
# folder_config: Prevent unintentional deletion of a non-empty folder
key | value
---------- | ---
date | 2024-01-11T09:34:55+00:00
version | 2.3.0b1
class | fix
edition | cre
component | rest-api
level | 1
compatible | no
Prior to this Werk, the REST API could delete non-empty folders without any further check. With this Werk, the endpoint now accepts the **delete_method** query parameter. The possible values are:
- **recursive**: Deletes the folder and all the elements it contains.
- **abort_on_nonempty**: Deletes the folder only if it is not empty
If no delete_method is provided, **recursive** is asumed and the behaviour is the same as before this Werk.
The enpoint will return a 409 status code when trying to delete a folder that contains hosts, rules, subfolders or is referenced by another object.
Use example:
`curl -X 'DELETE' 'http://example.com/my_site/check_mk/api/1.0/objects/folder_config/my_folder…' -H 'accept: */*`
[//]: # (werk v2)
# host_config: add inherited labels to effective attributes
key | value
---------- | ---
date | 2024-01-26T11:20:55+00:00
version | 2.4.0b1
class | fix
edition | cre
component | rest-api
level | 1
compatible | yes
Previously, when using the effective attributes query parameter with the
```
GET /objects/host_config/{host_name}
```
endpoint, only the labels of the current host have been returned.
Now all of the effective labels are aggregated and returned.
Title: check_mail_loop: if configured to delete processed mails, check_mail_loop would delete all mails instead
Class: fix
Compatible: compat
Component: checks
Date: 1705993144
Edition: cre
Level: 1
Version: 2.1.0p39
As a result of a refactoring instead of deleting just pre-filtered mails, <code>check_mail_loop</code> would
delete all previously fetched mails.
This change brings back the former behavior.
Title: size_trend: avoid 'infinite to integer' crash
Class: fix
Compatible: compat
Component: checks
Date: 1706105325
Edition: cre
Level: 1
Version: 2.1.0p39
While calculating how much time is left until the resource is full, if the value of the mb in range was too low (e.g. 1e-320) the check used to crash with 'infinite to integer'.
This has now been fixed and if the value is too low and causes division with it to result in 'inf', the check will not be executed.