Plugin monitors nftables counters and can be configured to show
a subset of counters. Limiting output by type of counter (bytes
or packets) is also possible.
Plugin requires python3-nftables, which makes use of libnftables
and is part of Netfilter's nftables, but may need to be installed
separately. Plugin will bail out if the nftables module cannot be
loaded.
Plugin is built upon PyMunin, adapted for Python3. The version
listed in PIP is still using Python 2 syntax. Release of a Python 3
compatible version is pending.
when installing / first running the plugin, it can take longer than
one munin-update call to create the $TIMEFILE. so until it is created
we assume the $LOCKFILE is not too old yet and let the first run finish
before we spawn additional processes.
* support systems without time executable
(if we can use bash time keyword)
* use curl as smtp client if available
* enable specifying different ports from 25
* enable specifying other test commands than "HELO localhost"
(e.g. HELP, QUIT can also be used to test connections)
* Fix awk search-term for ROS7*
Value could be named "temperature" or "cpu-temperature". Tested with
RB5009, hex, CRS309, CRS305.
Search value without :.
Check different values in different ROS-Versions.
Tested with RB5009, hex, CRS309, CRS305.
The code was python3-compatible before, thus it was just a matter of
changing "python" to "python3".
The micropython approach previously relied on micropython-lib being
installed. Now the basic micropython package (on OpenWrt) is
sufficient.
This adds a plugin that supports the Arris SB8200 cable modem
- Uptime
- Downstream error counts
- Downstream Signal-to-Noise ratio (dB)
- Downstream & Upstream Power (dBmV)
Signed-off-by: Nathaniel Clark <Nathaniel.Clark@misrule.us>
Address several issues regarding the psi-plugin (pressure stall information).
Fixes:
- Use local for variables in functions.
- Add fetch as a valid parameter and remove auto.
- Remove double slash in path for get_pressure_value() and quote it.
- Remove line break in return value of get_printable_name().
- Quote variables to avoid splitting/globbing.
- Rename pressure plugin to linux_psi.
References:
- https://github.com/munin-monitoring/contrib/pull/1302
Adds a plugin to monitor the pressure stall information (psi) as reported by the Linux kernel.
- groups averages per resource
- rate/derive totals for ease of reading
- resources, intervals and scopes configurable
See: https://www.kernel.org/doc/html/latest/accounting/psi.html
If we don't want to show any host names in graphs/legend, it makes sense to not resolve them.
I occasionally notice the issue with name resolution of IPv6 addresses on certain networks, which makes `chronyc tracking` take 20+ seconds. Adding -n makes it almost instantaneous.
this helps use the same configs on multiple nodes where not all the
patterns expand to existing files on all of them or when files are not
yet existing
Some SNMP implementations actively report the interface speed as 0 (e.g., when disconnected). This led the plugin to report both min and max to be 0, which later confuses RRDTool, with errors such as
[ERROR] Unable to create '/var/lib/munin/example.net/192.2.0.1-snmp_if_combined_vlan-37-send-d.rrd': failed to parse data source 600:0:0: min must be less than max in DS definition
when trying to creates the RRDs. Ultimately, this would prevent the graph creation from suceeding with errors such as
[ERROR] In RRD: Error updating /var/lib/munin/example.net/192.2.0.1-snmp_if_combined_vlan-37-send-d.rrd: opening '/var/lib/munin/example.net/192.2.0.1-snmp_if_combined_vlan-37-send-d.rrd': No such file or directory
Signed-off-by: Olivier Mehani <shtrom@ssji.net>
The data was incorrectly loaned from a `temp` subgraph, which should
have been `temperature`.
This led to errors during munin-graph, as follow
[ERROR] Failed to find windChill source at temp.windChill, skipping field
[ERROR] Failed to find heatIndex source at temp.heatIndex, skipping field
[PERL WARNING] Use of uninitialized value in concatenation (.) or string at /usr/share/perl5/Munin/Master/Utils.pm line 1149, <GEN1> line 1728.
[ERROR] filename is empty for $VAR1 = {
'#%#name' => 'windChill',
'graph_data_size' => 'normal',
'label' => 'Wind chill [°C]',
'update_rate' => '300'
};
, temp.windChill
[PERL WARNING] Use of uninitialized value in concatenation (.) or string at /usr/share/perl5/Munin/Master/Utils.pm line 1149, <GEN1> line 1728.
[ERROR] filename is empty for $VAR1 = {
'#%#name' => 'heatIndex',
'graph_data_size' => 'normal',
'label' => 'Heat index [°C]',
'update_rate' => '300'
};
, temp.heatIndex
Signed-off-by: Olivier Mehani <shtrom@ssji.net>
This fix allows to skip validity checks on any intermediate certificate
which subject hash appears in the list.
Let's Encrypt certificates are cross-signed by both DST Root CA X3 and
ISRG Root X1. DST Root CA X3 has expired on 2021-09-30 [0], which causes
the plugin to incorrectly report some full-chain LE certificates as
expired.
[0] https://letsencrypt.org/docs/dst-root-ca-x3-expiration-september-2021/
Signed-off-by: Olivier Mehani <shtrom@ssji.net>