Check postgresql-version

Overview

This plugin lets you track if PostgreSQL is End-of-Life (EOL). To compare against the current/installed version of PostgreSQL, the check has to run on the PostgreSQL server itself.

This check plugin alerts n days before or after the EOL date is reached. Optionally, it can also alert on available major, minor or patch releases (each independently).

Fact Sheet

Fact

Value

Check Plugin Download

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

Check Interval Recommendation

Once a day

Can be called without parameters

Yes

Compiled for Windows

No

Uses SQLite DBs

$TEMP/linuxfabrik-lib-version.db

Help

usage: postgresql-version [-h] [-V] [--always-ok] [--check-major]
                          [--check-minor] [--check-patch] [--insecure]
                          [--no-proxy] [--offset-eol OFFSET_EOL]
                          [--timeout TIMEOUT] [--username USERNAME]

Tracks if PostgreSQL is EOL.

options:
  -h, --help            show this help message and exit
  -V, --version         show program's version number and exit
  --always-ok           Always returns OK.
  --check-major         Alert me when there is a new major release available,
                        even if the current version of my product is not EOL.
                        Example: Notify when I run v26 (not yet EOL) and v27
                        is available. Default: False
  --check-minor         Alert me when there is a new major.minor release
                        available, even if the current version of my product
                        is not EOL. Example: Notify when I run v26.2 (not yet
                        EOL) and v26.3 is available. Default: False
  --check-patch         Alert me when there is a new major.minor.patch release
                        available, even if the current version of my product
                        is not EOL. Example: Notify when I run v26.2.7 (not
                        yet EOL) and v26.2.8 is available. Default: False
  --insecure            This option explicitly allows to perform "insecure"
                        SSL connections. Default: False
  --no-proxy            Do not use a proxy. Default: False
  --offset-eol OFFSET_EOL
                        Alert me n days before ("-30") or after an EOL date
                        ("30" or "+30"). Default: -30 days
  --timeout TIMEOUT     Network timeout in seconds. Default: 8 (seconds)
  --username USERNAME   PostgreSQL username for running `psql`. Default:
                        postgres

Usage Examples

./postgresql-version --offset-eol=-30

Output:

PostgreSQL v10.16 (EOL 2022-11-10 -30d [WARNING], major 16.0 available, minor 10.23 available)

States

  • WARN if software is EOL

  • Optional: WARN when new major version is available

  • Optional: WARN when new minor version is available

  • Optional: WARN when new patch version is available

Perfdata / Metrics

Name

Type

Description

postgresql-version

Number

Installed PostgreSQL version as float. „10.23“ becomes 10.23.

Credits, License