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
Lionel Sausin
ae7a2f6c65
LXC v3.1 compatibility
...
The cgroup data was (yet again) moved to a new location in recent LXC
releases, starting with v3.1.0 from what I could gather.
https://github.com/lxc/lxc/issues/2782 states:
> [The cgroup lxc.payload] exists to adhere to cgroup2 delegation requirements.
2021-07-14 21:28:17 +02:00
Sebastian L
137913e39d
lxc_guests: Monitor randomly generated virtual ethernet devices
2020-11-19 01:47:40 +01:00
Sebastian L
b5f957268f
lxc_guests: Make it work with unpriviliged containers
2020-11-19 01:47:00 +01:00
Marc SCHAEFER
748cf3b4ee
- grep -EF is invalid
...
- SYSFS: buster has an existing /sys/fs/cgroup/systemd/lxc/$guest_name/tasks,
which does not contain anything useful, so checking
/sys/fs/cgroup/cpuacct/lxc/$guest_name/tasks first.
- spurious blank space for lxc_net and lxc_ram in here document
2019-08-19 15:07:16 +02:00
Lars Kruse
6e452ac6dc
Plugin lxc: remove fieldname compatibility attempt with double underscores
...
The attempt of compatibility (introduced in c0fe6dc3c
) did not work,
since the previous implementation *replaced* the first character
(if it was invalid - e.g. a digit) instead of prepending an underscore.
2019-08-12 02:36:01 +02:00
Lars Kruse
858f3e3af4
Plugin lxc: rename to "lxc_guests"
...
The plugin handles details of LXC guests. Thus we should leave the
remainder of the namespace to other plugins.
2019-08-12 02:36:01 +02:00
Lars Kruse
3ebcb8b550
Plugin lxc: remove reference to framagit repository
...
Plugins maintained within the contrib repository of munin should not
refer to other locations as their primary source.
(otherwise they should be maintained in that primary source and not in
the contrib repository)
2019-08-12 02:36:01 +02:00
Lars Kruse
2f1be9f908
Plugin lxc: update list of authors
2019-08-12 02:36:01 +02:00
Lars Kruse
f69587c28c
Plugin lxc: move to category "virtualization"
...
See http://guide.munin-monitoring.org/en/latest/reference/graph-category.html#well-known-categories
2019-08-12 02:36:01 +02:00
Lars Kruse
3f8ef105ff
Plugin lxc: enable "set -eu" for better error handling
...
The code should be suitable for "exit-on-error" and "error-on-unset".
2019-08-12 02:36:01 +02:00
Lars Kruse
856572ad9b
Plugin lxc: verify the availability of "lxc-ls"
...
Previously "autoconf" only verified, that /var/lib/lxc exists. But this
could be just a remainder of a formerly installed lxc package.
2019-08-12 02:36:01 +02:00
Lars Kruse
59cb851cf5
Plugin lxc: add support for MUNIN_CAP_DIRTYCONFIG
2019-08-12 02:36:01 +02:00
Lars Kruse
f00f28cf6f
Plugin lxc: use functions for top-level activities
...
This clarifies the flow of control and allows to use
MUNIN_CAP_DIRTYCONFIG later.
2019-08-12 02:36:01 +02:00
Lars Kruse
4356a024a7
Plugin lxc: clarify name for function "active_guests"
...
Previously a variable and a function used the same name.
This was no problem, but it can cause confusion.
2019-08-12 02:36:01 +02:00
Lars Kruse
55b881878c
Plugin lxc: change the plugin from "bash" to "sh"
...
No more bashisms were left.
2019-08-12 02:36:01 +02:00
Lars Kruse
6bb4719881
Plugin lxc: separate function for title beautification
...
This avoids a bashism.
2019-08-12 02:36:01 +02:00
Lars Kruse
8b1d537602
Plugin lxc: simplify interface of "lxc_cgroup" and rename function
2019-08-12 02:36:01 +02:00
Lars Kruse
33b2f3ed8b
Plugin lxc: use comprehensible names for variables
2019-08-12 02:36:01 +02:00
Lars Kruse
8b955667c5
Plugin lxc: fix handling of "excludes" parameter
...
Previously only the first item in the "excludes" environment variable
was really excluded.
2019-08-12 02:36:01 +02:00
Lars Kruse
199b4517cb
Plugin lxc: use "grep -E" instead of "egrep"
2019-08-12 02:36:01 +02:00
Lars Kruse
46626b9953
Plugin lxc: simplify implementation of function "active_guests"
2019-08-12 02:36:01 +02:00
Lars Kruse
276e96c0dd
Plugin lxc: remove ineffective "sort -u" from function "active_guests"
...
The output of "lxc-ls" is not line-splitted. Thus all active guests
are printed in a single line and "sort -u" (removal of non-unique
entries) had no effect.
2019-08-12 02:36:01 +02:00
Lars Kruse
6413375cdc
Plugin lxc: simplify processing in function "active_guests"
2019-08-12 02:36:01 +02:00
Lars Kruse
9cdea3c305
Plugin lxc: clarify variable names used in functions
2019-08-12 02:36:01 +02:00
Lars Kruse
da8a74fdcb
Plugin lxc: omit output of "max" if the network interface speed is unknown
...
The "U" value is not defined for the "max" field.
2019-08-12 02:36:01 +02:00
Lars Kruse
914d1c5f25
Plugin lxc: clarify network bandwidth calculation
2019-08-12 02:36:01 +02:00
Lars Kruse
313d195f3b
Plugin lxc: simplify interface of "lxc_netdev"
2019-08-12 02:36:01 +02:00
Lars Kruse
89003f0188
Plugin lxc: fix quoting issues
2019-08-12 02:36:01 +02:00
Lars Kruse
0d593014b4
Plugin lxc: fix printing of "${graph_period}"
...
This specific text token ("${graph_period}") is interpreted by munin and
should not be interpreted by the shell. Thus it needs to be escaped.
2019-08-12 02:36:01 +02:00
Lars Kruse
e91f7ecba7
Plugin lxc: remove ineffective usage of "bc"
...
The command "wc -w" already outputs the final result.
Thus we do not need this command (and do not have to depend on it).
2019-08-12 02:36:01 +02:00
Lars Kruse
d415877cdc
Plugin lxc: explicitly assign all accepted environment variables
2019-08-12 02:36:01 +02:00
Lars Kruse
ec3a7f4045
Plugin lxc: function "lxc_count_processes" now outputs its result
...
Previously the result was returned as the exit code of the function
(which would prevent the usage of "set -e").
Additionally the fallback value that was previously calculated outside
of the function is now part of it.
2019-08-12 02:36:01 +02:00
Lars Kruse
9af96d2c60
Plugin lxc: draw stacked RAM graphs by default
...
Previously "ram_display_stacked" defaulted to "false" (non-stacked
graphs). The new default should be suitable for most situations.
2019-08-12 02:36:01 +02:00
Lars Kruse
ab6f4e3c6e
Plugin lxc: fix configurable RAM graphing
...
Previously (before the multigraph conversion) the configuration setting
for "lxc_ram" was called "areastack". The multigraph conversion
documented a new configuration setting "ram_areastack", but it was not
used, yet.
Thus we can switch to a more descriptive name: "ram_display_stacked".
2019-08-12 02:36:01 +02:00
Lars Kruse
d004990b21
Plugin lxc: exit after autoconf
...
Previously processing continued after a successful autoconf operation.
2019-08-12 02:36:01 +02:00
Lars Kruse
6696a4d894
Plugin lxc: unify whitespace
2019-08-12 02:35:57 +02:00
Marc SCHAEFER
c0fe6dc3c7
Compatibility with older field names
2019-08-11 23:09:15 +02:00
Marc SCHAEFER
784b06fe75
Sections and small fix
2019-08-11 23:09:15 +02:00
Marc SCHAEFER
4e321bbc07
First multigraph version
2019-08-11 23:09:15 +02:00
Marc SCHAEFER
ddcc19cd81
Initial version of multigraph version
2019-08-11 23:09:15 +02:00
Marc SCHAEFER
154ffc100b
Fix
2019-08-11 23:09:15 +02:00
Marc SCHAEFER
5a3e66beef
version
2019-08-11 23:09:15 +02:00
Marc SCHAEFER
50a998b460
areastack option
2019-08-11 23:09:15 +02:00
Marc SCHAEFER
5105020fcf
- added systemd possibility for stats - cleanup
2019-08-11 23:09:15 +02:00
Marc SCHAEFER
241b0c6067
Fix for lxc < 3
2019-08-11 23:09:15 +02:00
Marc SCHAEFER
89e0f1c729
Update
2019-08-11 23:09:15 +02:00
Marc SCHAEFER
9ef366c71a
- autoconf cleanup - better lxc_clean_fieldname workaround supporting non numeric compatibility - lxc_netdev now compatible with lxc3 and lxc2 at a small CPU cost - lxc_cgroup now compatible with lxc3 and lxc2; may however fail with lxc2 if your config file contains cruft
2019-08-11 23:09:15 +02:00
Marc SCHAEFER
ab67ad805d
Comment
2019-08-11 23:09:15 +02:00
Marc SCHAEFER
2cfba9f840
Comment
2019-08-11 23:09:15 +02:00