Commit Graph

4328 Commits

Author SHA1 Message Date
Kim B. Heino e43e882527 process_group: monitor process group age, cpu, memory and count
Generic plugin to monitor configured processes. Multiple process
groups can be configured with regexps.
2023-12-11 11:50:40 +02:00
Kenyon Ralph 48c4275851
Merge pull request #1401 from shakemid/add_switchbotmeter_multi
add switchbotmeter_multi
2023-12-06 09:07:12 -08:00
shakemid 2a21fb8420 add switchbotmeter_multi 2023-12-06 22:28:30 +09:00
Kim B. Heino 295325eb80 kea: fix autoconf, it always returned "yes"
I changed read_data's return value after testing autoconf. Oops...
2023-12-04 15:51:25 +02:00
Kim B. Heino c9cd3469b4 keepalived: plugin to monitor keepalived status and state
Currently this plugin monitors state of VRRP sync groups and
instances. More features, like IPVS, will be added soon.
2023-12-01 14:42:06 +02:00
Tim Connors f2080448e1
Tasmota voltmeter (#1397)
* added millivolts to tasmota_ to get ANALOG/Range value

* allow to print_thresholds in tasmota plugin

* Experimented with different graph settings to obtain best axis labels

If voltage limits were eg 11 and 14 volts, the labels and limits
default terribly to 10 to 20, and if you fix limits, then labels read
"11, 11, 11, 12, 12, 12, 13, ...".  alt-y-grid and alt-autoscale seem
to improve this a lot

* get_value -> get_status to better reflect what it's doing

* millivolts() forgot to account for invalid value "U"

---------

Co-authored-by: Tim Connors <tconnors@rather.puzzling.org>
2023-11-15 10:02:19 -08:00
Kenyon Ralph 15670c8e6d
Merge pull request #1329 from shtrom/plugin-freebox-url
[router/freebox] Allow to override the default base URL
2023-10-26 12:26:51 -07:00
Tim Connors 891c19b60f documentation fix for critical threshold for nutups2_ plugin 2023-10-19 00:30:18 +11:00
Tim Connors c66f50b2e0
Nutups2 multiplier (#1313)
* add multiplier_fetch that's much like common_fetch

* moved multiplier_fetch functionality to common_fetch

* power_emulated_multiplier env var added and Documented

---------

Co-authored-by: Tim Connors <tconnors@rather.puzzling.org>
2023-10-16 10:39:47 -07:00
Kenyon Ralph 89bd7114e1
Merge pull request #1393 from spacelama/ceph_updates
Cater for newer OS dependencies - python and ceph updates
2023-10-16 10:34:22 -07:00
Kenyon Ralph e27c47b426
Merge pull request #1394 from spacelama/zfs_labels
fix munin-update logs filling up with some values not having labels
2023-10-16 10:33:10 -07:00
Kenyon Ralph 4c1a92ec28
Merge pull request #1392 from kimheino/master
systemd_status: add support to monitor user services
2023-10-16 10:32:36 -07:00
Kenyon Ralph c428d15a3f
Merge pull request #1312 from spacelama/tasmota
Created tasmota plugin that reads power monitoring devices such as ta…
2023-10-16 10:30:17 -07:00
Tim Connors c8bbf97e30 fix munin-node logs filling up with some values not having labels 2023-10-16 23:04:41 +11:00
Tim Connors 5b1300aebf Cater for newer OS dependencies - python and ceph updates
system default python is now usually python3 - better make our code
compliant with it

`ceph` CLI itself has some slightly different usage and outputs

jq used instead of cut in a few places, because was easier to work out
what the original commands were intending to grab, now that those
outputs have moved location.  Yes, jq is a new dependency for some of
the plugins, but it was already implicitly depended upon in ceph_osd
plugin
2023-10-16 22:55:52 +11:00
Kim B. Heino d93503664b systemd_status: add support to monitor user services
Also add support to ignore specific services.
2023-10-16 11:54:14 +03:00
Tim Connors e182f5d37c add SCD40 and PMS5003 pollution monitors 2023-10-16 17:03:07 +11:00
Tim Connors 33b1b80361 Fix issues detected in munin-monitoring!PR 1312
Consistent tabbing
perldoc style comment
detect curl and jq prereqs
shellcheck linting
error handling
jq parsing
2023-10-16 17:00:02 +11:00
Tim Connors cdd731d0ae add DS18B20temp and rename SWITCH->DEVICE 2023-10-16 13:46:14 +11:00
Tim Connors 96250b3764 updated comment per PR suggestion 2023-10-16 13:45:06 +11:00
Tim Connors 693509563c use jq instead of sed 2023-10-16 13:28:09 +11:00
Kim B. Heino eb3e032d1f knot: add support for mod-cookies and mod-rrl statistics
Plugin will graph these optional Knot modules only if they are enabled.
2023-10-09 10:26:04 +03:00
Dominik f4e0fc95fe
add support for ntpsec 2023-10-01 17:33:42 +02:00
Kim B. Heino 3555ad873d nginx_vts: add missing AUTHOR tag 2023-09-04 20:26:58 +03:00
Doctor 785540f6f4 Fix varnish plugin for varnishstat output
- Fix get_values() json
- Remove SMF
- Remove SMS
- Remove backend_toolate
- Replace sess_drop by sess_dropped
- Replace sess_pipe_overflow by sc_pipe_overflow
2023-08-10 15:33:43 +02:00
HaseHarald b76f630440 fix(weather_temp_): Better match temperature and dew point
For whatever reason, sometimes linebreaks are only denoted as \n in the
querry-result. This lead to the temperature RegEx matching the dew point. This
caused the temperature to be reported the same as the dew point. These changes
should make the RegEx more specific and work consistently, no matter if
linebreaks are actual linebreaks or just \n.
2023-07-23 15:10:29 +02:00
HaseHarald 0e4dd7d1fb feat(weather_hum_): Add a humidity plugin for US NOAA weather
This adds a plugin for relative humidity, based on the weather_press_ and
weather_temp_ plugins. It's basically a copy of these two plugins with only
minor adjustments.
2023-07-23 15:10:29 +02:00
HaseHarald d8b4732c4a fix(weather_press_/temp_): Use https
In 2023, it should be the default to use an encrypted connection, which
totally is supported by the data-source.
2023-07-23 15:10:29 +02:00
HaseHarald 05d820334a fix(weather_press_/temp_): Cast url-read object to string
The read function on an urllib urlopen object returns an object as a response.
Regular expressions using re can't be used on such objects. This causes
the following error:

```
Traceback (most recent call last):
  File "/tmp/weather/./weather_press_LOWW", line 43, in <module>
    hpa = re_hpa.findall(txt)[0]
TypeError: cannot use a string pattern on a bytes-like object
```

This can be easily fixed, because said object can simply be cast to string.
Which is, what this patch does for both the US NOAA based plugins.
2023-07-23 15:10:29 +02:00
Andreas Perhab eb257a9c3c dnsresponse_: enable verifying responses
add option verify to enable graphing the number of successful responses.
if verify is enabled (default it is not) then a warning is emitted when
we do not get a response for all queries and critical if no query
succeeded.

add option timeout to be able to limit the time the plugin takes for
unresponsive servers. old max time was 75 seconds times 20 (25minutes).
new default max is 30 seconds timeout times 20 (10 minutes). with
setting a timeout of a few seconds this can now be reduced even more.

added warnings if average and or mean get close to the timeout.
2023-07-19 12:37:14 +02:00
Andreas Perhab 698cf1e2fb nvme: fix for nvme-cli > 2 2023-06-28 14:59:27 +02:00
Simon Josefsson 5627c096fc
nvme: Prefix 'NVME' to spare graph title for consistency. 2023-06-25 10:26:56 +02:00
Michael Grote c05b5417da
add new plugin: docker_volumesize (#1377)
* first try

* indentation

* whitespaces

* check bc

* move sed

* typo

* docs

* shellcheck

* fix bytes

* areastack

* typo

* heading

* areastack

* fix calculation

* base

* cutoff

* comments
2023-06-19 20:29:37 -07:00
Kenyon Ralph 72990c251f
Merge pull request #1324 from codeurimpulsif/rabbitmq_messages
[rabbitmq_messages*] Fix rabbitmqctl output filter
2023-05-31 12:08:16 -07:00
Kenyon Ralph db3e5a2a94
Merge pull request #1323 from codeurimpulsif/rabbitmq_consumers
[rabbitmq_consumers] Fix rabbitmqctl output filter
2023-05-31 12:07:51 -07:00
Kenyon Ralph bb6c0e0b18
Merge pull request #1322 from codeurimpulsif/exodus_warning_critical
[exodus_] Add warning and critical configurations
2023-05-31 12:06:36 -07:00
Doctor 4b9a11c854 make gunicorn_memory_status and gunicorn_status python3 compatible 2023-05-31 18:30:12 +02:00
Kim B. Heino f8b31590b6 dhcp/kea: add plugin to monitor Kea DHCP server
Kea is ISC's recommended DHCP server, old dhcpd is not maintained anymore.

See https://www.isc.org/kea/ for more information.
2023-05-23 11:22:21 +03:00
Kenyon Ralph 38f2647dd0
Merge pull request #1372 from trollagit/trollagit-patch-1
Update md_iostat_ for '--write-mostly' drives
2023-05-03 12:29:58 -07:00
trollagit ba6595ff2b
Update md_iostat_ for '--write-mostly' drives
Doesn't work with '--write-mostly' drives like sde1 in : 
     md94 : active raid1 sde1[1](W)(S) sdd1[2]
I assume to remove everything behind the opening bracket
2023-05-03 16:59:45 +02:00
brknkfr 46a483ed36
lxc_guests: Enhanced and fixed lxc_guests plugin (#1371)
* lxc_guests2: Enhanced and fixed lxc_guests plugin

- Working with systemd and cgroup version 2 (tested on debian bullseye and debian booksworm)
- Fixed processes (with cgroup version 2)
- Simplified labels
- Simplified memory usage graph
- Added CPU usage in percent (using systemd-cgtop)
- Added Tasks
- No cgrouppath guessing

* Rename lxc_guests2 to lxc_guests to replace old plugin

---------

Co-authored-by: Sebastian L <sl@momou.ch>
2023-04-29 10:38:44 -07:00
Sebastian L c09e9461ab [onlyoffice] Add plugin for onlyoffice
Plugin that monitors editing and viewing connections of an onlyoffice instance
2023-04-26 08:43:03 +02:00
Kenyon Ralph 112ea7d02c
Merge pull request #1317 from quotengrote/header_ksm
Fix formatting for Munin Plugin Gallery
2023-04-21 14:11:51 -07:00
Kenyon Ralph 5b9b75e5b0
Merge pull request #1369 from codeurimpulsif/icecast2_stats_
[icecast2_stats_] Fix sources parsing if there is only one source
2023-04-20 14:02:46 -07:00
Doctor 706e181358 fix sources parsing if there is only one source 2023-04-19 18:44:09 +02:00
Michael Grote 4791449ef4
typo
warn --> warning; sry
2023-04-18 14:40:56 +02:00
Michael Grote 549c127d7d
add plugin: drone (#1367)
* add drone-cicd plugin

* optimize loops

* silencing curl

* docs

* housekeeping

* add count

* add links

* fix if

* add link

* areastack

* shellcheck
2023-04-17 10:18:02 -07:00
Michael Grote a49e70566f
add new plugin: gitea_commit_time_diff (#1366)
* add new plugin: gitea_commit_time_diff

* Typo

* better explanation
2023-04-17 10:12:27 -07:00
Andreas Perhab a928b81374 docker_memory: add total memory used 2023-04-14 10:41:46 +02:00
Kenyon Ralph e5f366d3d1
Merge pull request #1361 from quotengrote/quotengrote-patch-2
zfs_pool_dataset_count: Integers
2023-04-10 09:29:56 -07:00
Kenyon Ralph e2c256a7e5
Merge pull request #1364 from quotengrote/deye_apikey
Deye/Solarman: remove AppId variable
2023-04-10 09:17:08 -07:00
Kenyon Ralph 7d5d8aed8c
Merge pull request #1363 from quotengrote/zfs_list
zfs_list: set better labels
2023-04-10 09:14:55 -07:00
Michael Grote 69d890ee11 zfs_list: set better labels 2023-04-10 10:28:31 +02:00
Michael Grote b62bee5f09 Deye/Solarman: remove AppId variable 2023-04-09 10:56:01 +02:00
Andreas Perhab 0e24b3c935 docker_memory: handle cgroup v2 2023-03-30 14:49:12 +02:00
Michael Grote cf5f375b8b
zfs_pool_dataset_count: Integers 2023-03-28 21:24:49 +02:00
Michael Grote e21dfc07fb
Values as Integers 2023-03-24 14:08:46 +01:00
Michael Grote f140a08c16
Deye/Solarman (#1359)
* deye: fix production calculation

* solarman: add new plugins

* fix labels

* move api check

* Typo

* deye: quoting

* unfiy labels

* Typo

* Test, set Value to zero if api does not find device

* dont show errors

* Revert "dont show errors"

This reverts commit dc71783f93.

* Revert "Test, set Value to zero if api does not find device"

This reverts commit fa1853955c.

* dependency check

* remove exports

* send 0 instead of U

* dependency check

* remove exports

* check dependency removed

* send U when API isnt reachable

* add AC graphs

* Typo

* Typo

* Get all Panels

* remove var

* Typo

* Typo

* Typo

* packe Logik in Funktionen; Frage Daten im Fehlerfall mehrfach ab

* Zähler umgebaut

* Remove Panel Plugin

* deactivate panel 3+4

* api reachable check

* unknown limits

* warnings

* area

* deye: printf http://munin-monitoring.org/faq#q-why-does-my-users-plugin-report-floating-point-numbers

* deaktiviere graph scaling

* setze base

* schreibe retries

* graph opts

* statefile

* deye statefile

* x

* Info
2023-03-16 09:17:53 -07:00
Andreas Perhab 3b4acf90df docker_cpu: handle cgroup v2 2023-03-16 11:19:57 +01:00
Kim B. Heino 8c30611df5 nginx_vts: plugin to monitor nginx statistics with nginx-module-vts
This plugin requires https://github.com/vozlt/nginx-module-vts module
to be loaded. It provides lot of statistics.
2023-03-09 12:40:34 +02:00
Kim B. Heino b52691ad66 disk/storagebox_df: monitor Hetzner Storagebox disk free
This plugin is similar to df plugin, but monitors Storagebox disk instead.
It requires config and ssh keys to access Storagebox.
2023-03-07 11:08:37 +02:00
Kenyon Ralph e70e5320f1
move deye solar inverter plugin to the solar directory 2023-02-25 13:43:46 -08:00
Michael Grote 735c644a1b
add Plugin for Deye Solar Inverters (#1353)
* add Plugin for Deye Solar Inverters

* better Titles

* fill Area

* Typo

* check if Inverter is reachable

* even better Titles

* changed Header to perl-Style

* Typo

* Typos

* Fix Values

* Set yield to unkown when offline

* Escaping
2023-02-25 13:42:37 -08:00
Kai d628ff5a50 Fix for Python 3
Default for Python 3 is to return byte-objects, not string. This will cause the plugin to fail with an error: "TypeError: a bytes-like object is required, not 'str'".
Fixed by decoding for UTF8.
2023-02-25 13:41:29 -08:00
Kim B. Heino 26bcef2f21 disk/stratis: add support for stratis v3.4 output 2023-02-24 14:55:16 -08:00
Nathaniel Clark cfea1e2332 [arris-sb8200] Fix channel selection and warnings
This actually silences InsecureRequestWarning.
The Arris SB8200 has 32 downstream channels, but in my experience
report more than that, but the "extra" channels report modulation as
"Other" instead of QAM256.  This filters those channels, since they seem
to drive the error count up, but don't provide data.

Signed-off-by: Nathaniel Clark <Nathaniel.Clark@misrule.us>
2023-02-18 12:42:15 -08:00
Robert Kulyassa 2a12025ee5 Remove old "transmission" plugin
It doesn't work (looks like calling outdated python lib) and had the same
    funcionality than the newer transmission_ plugin. It is quite confusing now
    they are in the same directory, but the documentation (README) mentions
    only the other one.
2023-01-31 21:49:43 -08:00
Simon Josefsson 4f22f27347 Support shmem & file hugepages statistics.
Also fixes doc typo for /proc path.
Also downcase Anon.label for consistency with other labels.
2023-01-13 22:01:38 -08:00
Sebastian L 2f14a9b31e Fix imapproxy_multi
- Added imapproxy.conf as parameter as pimpstat won't work without
- Added unversal_newlines as Popen parameter because otherwise it's binary output
2023-01-13 22:00:44 -08:00
Kim B. Heino eea45ab34b raid2: add support for LSI MPT Fusion SAS 3.0 RAID 2023-01-13 21:59:50 -08:00
jackson 836ec47f1f Added Comet Backup plugin 2023-01-13 21:59:06 -08:00
HaseHarald eb9d7fa2a1 [ssl/ssl-certificate-expiry] Disable shellcheck SC1090
When linting this script, this will always fire. This is because shellcheck
only does static code analysis and thus can not determine the filepath.

References:
- https://www.shellcheck.net/wiki/SC1090
2023-01-13 21:57:17 -08:00
HaseHarald 470e837b26 [ssl/ssl-certificate-expiry] Add configurable timeout
This should help with unreachable hosts, as the plugin can take more than
10 minutes to complete otherwise. These changes should be fully backwards
compatible, since the default is no timeout set, so it acts the same way
as before.

Changes:
- Introduce "timeout" configuration
- Only run timeout when configured
- Document usage of new configuration
2023-01-13 21:57:17 -08:00
Olivier Mehani 59bb8555db [wunderground_] update default api key
Signed-off-by: Olivier Mehani <shtrom@ssji.net>
2023-01-13 21:55:49 -08:00
shakemid 8cac37d2a7 add plugin switchbotplugmini 2023-01-13 21:53:03 -08:00
Rowan Wookey 6dfba8c0e0 Added opensmtpd plugin
This is a new plugin for monitoring the mails sent/bounced/queued/looped
for OpenSMTPD https://www.opensmtpd.org/

Supports auto conf
2023-01-13 21:51:27 -08:00
Kim B. Heino 57ae10a6e4 zram: fix df to be percents 2023-01-13 21:50:17 -08:00
Kim B. Heino e23f2af4b0 disk/zram: new plugin to monitor zram devices 2023-01-13 21:50:17 -08:00
Doctor 210c5dbe8f Add prosody_0.12_ plugin
This plugin replace prosody_ for Prosody versions 0.12+
2023-01-13 21:49:00 -08:00
Fredrick-III a450e79104 Correct multigraph typo for uptime graph 2023-01-13 21:47:40 -08:00
darac caf2f067c2 Allow dovecot_stats_ cope with Dovecot 2.3
Dovecot has a new "stats" command, and the version that this plugin
works with is now called as "doveadm oldstats", so try to adapt the
command based on the dovecot version.

Fixes #1327
2023-01-13 21:46:21 -08:00
Kenyon Ralph 5d028e8aec
consolidate location of transmission plugins 2023-01-13 21:42:00 -08:00
Robert Kulyassa 4be1b6aaf3
+ transmission plugin (torrent activity, status, traffic) 2023-01-13 21:36:28 -08:00
Kenyon Ralph 479e88f750
move transmission_ratios to the network directory
So that it's next to the other transmission plugin.
2023-01-13 21:34:21 -08:00
Sebastian L 8fdb734bfc Fix for clamav plugin
- Add exit 0 at the end, otherwise the plugin fails
2023-01-13 21:15:43 -08:00
An | Anton Röhm 47ad0b2431
Fix another typo 2023-01-13 21:14:06 -08:00
An | Anton Röhm b9982af42b
Fix typo 2023-01-13 21:14:06 -08:00
darac 00a3d064ae
Add gpsd_ plugin
This is a multigraph plugin which graphs various stats from gpsd. Only
enough statistics are graphed to show the _quality_ of the fix, not the
actual fix itself (attempting to protect privacy).

GPSd will report various messages asynchronously (that is, the messages
may come in any order) so, during the collect phase, we emit values as
and when the messages arrive. This should provide the most expedient
response.
2023-01-13 21:11:45 -08:00
Olivier Mehani 2386f9133c [router/freebox] Allow to override the default base URL
It seems the default base URL stopped working, so a locally-resolvable
address or name needs to be provided instead.

Signed-off-by: Olivier Mehani <shtrom@ssji.net>
2022-08-13 23:00:18 +10:00
Doctor 94c7f9f01e Fix rabbitmqctl output filter 2022-07-11 13:49:52 +02:00
Doctor 79e63fc69d Fix rabbitmqctl output filter 2022-07-11 13:23:43 +02:00
Doctor 78bcdf3627 Add warning and critical configurations 2022-07-09 20:14:12 +02:00
Kenyon Ralph c31973d3c8
add gpsd plugin
This plugin graphs dilution of precision and satellite count data from
[gpsd](https://gpsd.gitlab.io/gpsd/).
2022-07-06 11:43:09 -07:00
Kenyon Ralph e3f08308ab add Tesla Wall Connector plugin 2022-06-25 15:01:56 +02:00
Steve Baroti d00a5ab56b kvm_*: improve field names
fixed graph failure for VM names starting with digits

used "Validate filednames" Python stanza from docs to improve
clean_vm_name functions, helping graph creations for VM with names
starting with digits, like "150-121-Apache".

remember: each data source in a plugin must be identified by a field
name (in this case VM names). The characters must be [a-zA-Z0-9_],
while the first character must be [a-zA-Z_].
2022-06-22 16:43:40 +02:00
Kenyon Ralph 7869455fcb puppet_runtime: fix perlpod
perlpod needs these blank lines in order to detect and format the
documentation.
2022-06-19 22:14:52 +02:00
Michael Grote 841c4b9522 Moved MAGIC MARKERS to the bottom 2022-06-13 22:30:05 +02:00
Michael Grote 69db9ea437 Extend NAME with Comment 2022-06-13 22:28:31 +02:00
Michael Grote 396c2c2d1f Fixed formatting for all my Plugins 2022-06-12 22:08:57 +02:00
Michael Grote fafb0d9bd6 Fix formatting for kernel_same_page_merging-Plugin 2022-06-12 21:46:38 +02:00