With serials like
Node SN Model Namespace Usage Format FW Rev
---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------
/dev/nvme0n1 285S100HTYST KXG50ZNV512G TOSHIBA 1 512,11 GB / 512,11 GB 512 B + 0 B AAGA4106
/dev/nvme1n1 S4GENX0N713949 SAMSUNG MZVLB512HBJQ-00000 1 474,89 GB / 512,11 GB 512 B + 0 B EXF7201Q
the internal names (by serial number) were rewritten to
Field Internal name Type Warn Crit Info
/dev/nvme0n1 _85S100HTYST_w derive
/dev/nvme1n1 S4GENX0N713949_w derive
--> the trailing underscore in case of nvme0n1 created problems in graph processing:
[RRD ERROR] Unable to graph /var/cache/munin/www/lxdserver/....agitos.de/nvme_bytes-month.png : undefined vname c285S100HTYST_r
Therefore I added a prefix 'SN_' for internal names.
the line length change doesn't make the world better... without pyflakes I already wondered, why there is an additional linebreak. now it needs two additional one to stay below 99
changes here are tested and work on Python 3.7.3 (debian buster).
in python3 filter returns an object, not an list. I think a list is required here? at least the plugin works as soon as list(...) is added.
need to change from pid to pid.decode, as pid is binary and not a string.
root privileges are not required for sending queries to the docker socket.
Instead the group "docker" should be sufficient.
Additionally replace /var/run with /run (following updates of FHS).
As per the zpool(8) man page:
> zpool list [-HgLpPv] [-o property[,property]...] [-T u|d] [pool]... [interval [count]]
> Lists the given pools along with a health status and space usage. If no pools are specified, all pools in the system are listed. When given an interval, the information is printed every
> interval seconds until ^C is pressed. If count is specified, the command exits after count reports are printed.
> [...]
> -p Display numbers in parsable (exact) values.
There is some trickery going on to not wakeup the disk when it's in standby
Note: this was aimed at munin-c, but was rejected since it uses a
subprocess that calls the `smartctl` tool.
In contrast to using http_responsecode and http_loadtime with the same
configuration, this plugin performs only one request per site and munin
run to gather its statistics.
systemctl calculates memory consumption quite differently than existing plugins, which usually query /proc/.
This plugin monitors what memory a service uses according to systemctl.