lxc_guests: Monitor randomly generated virtual ethernet devices
lxc_guests: Make it work with unpriviliged containers
- 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
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.
Plugin lxc: rename to "lxc_guests"
The plugin handles details of LXC guests. Thus we should leave theremainder of the namespace to other plugins.
Plugin lxc: remove reference to framagit repository
Plugins maintained within the contrib repository of munin should notrefer to other locations as their primary source.(otherwise they should be maintained in that primary source and not inthe contrib repository)
Plugin lxc: update list of authors
Plugin lxc: move to category "virtualization"
See http://guide.munin-monitoring.org/en/latest/reference/graph-category.html#well-known-categories
Plugin lxc: enable "set -eu" for better error handling
The code should be suitable for "exit-on-error" and "error-on-unset".
Plugin lxc: verify the availability of "lxc-ls"
Previously "autoconf" only verified, that /var/lib/lxc exists. But thiscould be just a remainder of a formerly installed lxc package.
Plugin lxc: add support for MUNIN_CAP_DIRTYCONFIG
Plugin lxc: use functions for top-level activities
This clarifies the flow of control and allows to useMUNIN_CAP_DIRTYCONFIG later.
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.
Plugin lxc: change the plugin from "bash" to "sh"
No more bashisms were left.
Plugin lxc: separate function for title beautification
This avoids a bashism.
Plugin lxc: simplify interface of "lxc_cgroup" and rename function
Plugin lxc: use comprehensible names for variables
Plugin lxc: fix handling of "excludes" parameter
Previously only the first item in the "excludes" environment variablewas really excluded.
Plugin lxc: use "grep -E" instead of "egrep"
Plugin lxc: simplify implementation of function "active_guests"
Plugin lxc: remove ineffective "sort -u" from function "active_guests"
The output of "lxc-ls" is not line-splitted. Thus all active guestsare printed in a single line and "sort -u" (removal of non-uniqueentries) had no effect.
Plugin lxc: simplify processing in function "active_guests"
Plugin lxc: clarify variable names used in functions
Plugin lxc: omit output of "max" if the network interface speed is unknown
The "U" value is not defined for the "max" field.
Plugin lxc: clarify network bandwidth calculation
Plugin lxc: simplify interface of "lxc_netdev"
Plugin lxc: fix quoting issues
Plugin lxc: fix printing of "${graph_period}"
This specific text token ("${graph_period}") is interpreted by munin andshould not be interpreted by the shell. Thus it needs to be escaped.
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).
Plugin lxc: explicitly assign all accepted environment variables
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 outsideof the function is now part of it.
Plugin lxc: draw stacked RAM graphs by default
Previously "ram_display_stacked" defaulted to "false" (non-stackedgraphs). The new default should be suitable for most situations.
Plugin lxc: fix configurable RAM graphing
Previously (before the multigraph conversion) the configuration settingfor "lxc_ram" was called "areastack". The multigraph conversiondocumented a new configuration setting "ram_areastack", but it was notused, yet....
Plugin lxc: exit after autoconf
Previously processing continued after a successful autoconf operation.
Plugin lxc: unify whitespace
Compatibility with older field names
Sections and small fix
First multigraph version
Initial version of multigraph version
Fix
version
areastack option
- added systemd possibility for stats - cleanup
Fix for lxc < 3
Update
- 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
Comment
lxc < 3 support
lxc: working on buster (gandalf), and almost working on virtual (jessie), except lxc_net
Whitespace cleanup
lxc_ram: simplify config with/without 'areastack'
lxc_ram: add support for DIRTYCONFIG
lxc_ram: use functions for actions
lxc_ram: unify whitespace
lxc_ram: change from bash to sh
lxc_ram: fix shellcheck issues
lxc_ram: simplify quoting
refactor: code of areastack option is hard to understand
- reviewed on https://github.com/munin-monitoring/contrib/pull/738#pullrequestreview-5187474- split two conditional branches to simple if-else code
rename option to 'env.areastack'
Add support for Ubuntu 14.04
add new option 'env.stack_usage' to lxc_ram
Category Tree: reduce number of categories
Added handling of multiple lxc.network.veth.pair-lines
typofixes - https://github.com/vlajos/misspell_fixer
Suspicious sections:plugins/mail/postfix_mail_stats recieved.labelplugins/nginx/nginx_vhost_traffic
added lxc plugins from https://github.com/vajtsz/munin-plugins