Environment variables accessible in plugins¶
The node automatically defines some environment vars. All the munin-related
vars do begin with the MUNIN_
prefix and are all capitals.
Munin related¶
MUNIN_DEBUG
Defines the debug level the plugin should run in.
Default:
0
MUNIN_MASTER_IP
Contains the IP of the connecting master. If using
munin-run
, it is equal to the"-"
string.MUNIN_CAP_DIRTYCONFIG
Indicates whether the master is able to understand the dirtyconfig protocol.
Value |
Description |
---|---|
0 |
Master does not understand |
1 |
Master is able to consume |
MUNIN_CAP_MULTIGRAPH
Indicates whether the master is able to understand the multigraph keyword.
Value |
Description |
---|---|
0 |
Master does not understand the |
1 |
Master does understand the |
MUNIN_PLUGSTATE
Defines the directory that a plugin must use if it wants to store stateful data that is shared with other plugins.
Default:
/var/lib/munin-node/$USER
Note
Only the plugins that execute themselves as the same user can exchange data, for obvious security reasons.
MUNIN_STATEFILE
Defines a file that the plugin must use if it wants to store stateful data for himself.
It is guaranteed to be unique, per plugin and per master. Therefore 2 masters will have 2 different state files for the same plugin.
Config related¶
Here is a list of other environment vars, that are derived from the Munin::Common::Defaults
package.
MUNIN_PREFIX
MUNIN_CONFDIR
MUNIN_BINDIR
MUNIN_SBINDIR
MUNIN_DOCDIR
MUNIN_LIBDIR
MUNIN_HTMLDIR
MUNIN_CGIDIR
MUNIN_CGITMPDIR
MUNIN_DBDIR
MUNIN_PLUGSTATE
MUNIN_SPOOLDIR
MUNIN_MANDIR
MUNIN_LOGDIR
MUNIN_STATEDIR
MUNIN_USER
MUNIN_GROUP
MUNIN_PLUGINUSER
MUNIN_VERSION
MUNIN_PERL
MUNIN_PERLLIB
MUNIN_GOODSH
MUNIN_BASH
MUNIN_PYTHON
MUNIN_RUBY
MUNIN_OSTYPE
MUNIN_HOSTNAME
MUNIN_HASSETR
System related¶
Munin does redefine some system environment vars :
PATH
This is redefined for security. It does provide a safe environment so that shell scripts are able to launch regular commands such as
cat
,grep
without having to be explicit in their location.LC_ALL
&LANG
This is redefined (to
C.UTF-8
) to ease the work of plugin authors. It enables a non-localized output when parsing common commands output.