Check qts-version

Overview

Checks if firmware updates are available for a QNAP appliance running QTS by querying the QNAP update API. Reports the currently installed version and alerts when a newer firmware version is available.

Important Notes:

  • 3rd party Python module xmltodict required

  • Tested on QuTScloud v4.5.6+

  • Does not work on QTS 4.3 or less (see #701 for details).

  • The user used for monitoring must be a member of the „administrators“ group. It is not sufficient to be a member of the „everyone“ group.

Data Collection:

  • Authenticates against the QTS API and fetches system information via /cgi-bin/management/manaRequest.cgi

  • Checks for updates via /cgi-bin/sys/sysRequest.cgi?subfunc=firm_update

  • Compares the installed version against the latest available version

Fact Sheet

Fact

Value

Check Plugin Download

https://github.com/Linuxfabrik/monitoring-plugins/tree/main/check-plugins/qts-version

Nagios/Icinga Check Name

check_qts_version

Check Interval Recommendation

Every day

Can be called without parameters

No (--password and --url are required)

Runs on

Cross-platform

Compiled for Windows

No

3rd Party Python modules

xmltodict

Help

usage: qts-version [-h] [-V] [--always-ok] [--insecure] [--no-proxy]
                   --password PASSWORD [--timeout TIMEOUT] --url URL
                   [--username USERNAME]

Checks if firmware updates are available for a QNAP appliance running QTS by
querying the QNAP update API. Alerts when firmware updates are available.

options:
  -h, --help           show this help message and exit
  -V, --version        show program's version number and exit
  --always-ok          Always returns OK.
  --insecure           This option explicitly allows insecure SSL connections.
  --no-proxy           Do not use a proxy.
  --password PASSWORD  QTS API password.
  --timeout TIMEOUT    Network timeout in seconds. Default: 6 (seconds)
  --url URL            QTS-based appliance URL. Example:
                       `--url=https://192.168.1.1:8080`.
  --username USERNAME  QTS API username. Default: admin

Usage Examples

./qts-version --url http://qts:8080 --username admin --password linuxfabrik --insecure

Output:

QTS vc5.0.1.2374 Build 20230419 installed, QTS vc5.1.0.2498 Build 20230822 available

States

  • OK if the installed firmware is up to date.

  • WARN if a firmware update is available.

  • --always-ok suppresses all alerts and always returns OK.

Perfdata / Metrics

There is no perfdata.

Credits, License