NAME
Mojo::Netdata - https://netdata.cloud plugin for Perl
SYNOPSIS
Installation
sudo -i
apt install -y cpanminus
cpanm -n https://github.com/jhthorsen/mojo-netdata/archive/refs/heads/main.tar.gz
ln -s $(which mojo-netdata) /etc/netdata/custom-plugins.d/mojo-netdata.plugin
# See "Config file" below for information on what to place inside mojo.conf.pl
$EDITOR /etc/netdata/mojo.conf.pl
Config files
The config files are located in /etc/netdata/mojo.conf.d
. The files are plain Perl files, which means you can define variables and call functions. The only important part is that the last statement in the file is a hash-ref.
Any hash-refs that has the "collector" key will be placed into "collectors", while everything else will be merged into "config". Example:
# /etc/netdata/mojo.conf.d/foo.conf.pl
{foo => 42, bar => 100}
# /etc/netdata/mojo.conf.d/bar.conf.pl
{collector => 'Mojo::Netdata::Collector::HTTP', jobs => []}
The two config files above will result in this "config":
{
foo => 42,
bar => 100,
collectors => [
{collector => 'Mojo::Netdata::Collector::HTTP', jobs => []},
},
}
See "SYNOPSIS" in Mojo::Netdata::Collector::HTTP for an example config file.
Log file
The output from this Netdata plugin can be found in /var/log/netdata/error.log
.
DESCRIPTION
Mojo::Netdata is a plugin for Netdata. It can load custom Mojo::Netdata::Collector classes and write data back to Netdata on a given interval.
This module is currently EXPERIMENTAL, and the API might change without warning.
ATTRIBUTES
cache_dir
$path = $netdata->cache_dir;
Holds the NETDATA_CACHE_DIR
environment variable. See https://learn.netdata.cloud/docs/agent/collectors/plugins.d#environment-variables for more details.
config
$hash_ref = $netdata->config;
Holds the config for Mojo::Netdata and all "collectors".
collectors
$array_ref = $netdata->collectors;
An array-ref of Mojo::Netdata::Collector objects.
debug_flags
$str = $netdata->debug_flags;
Defaults to the NETDATA_DEBUG_FLAGS
environment variable. See https://learn.netdata.cloud/docs/agent/collectors/plugins.d#environment-variables for more details.
host_prefix
$str = $netdata->host_prefix;
Defaults to the NETDATA_HOST_PREFIX
environment variable. See https://learn.netdata.cloud/docs/agent/collectors/plugins.d#environment-variables for more details.
log_dir
$path = $netdata->log_dir;
Holds the NETDATA_LOG_DIR
environment variable. See https://learn.netdata.cloud/docs/agent/collectors/plugins.d#environment-variables for more details.
plugins_dir
$path = $netdata->plugins_dir;
Holds the NETDATA_PLUGINS_DIR
environment variable. See https://learn.netdata.cloud/docs/agent/collectors/plugins.d#environment-variables for more details.
stock_config_dir
$path = $netdata->stock_config_dir;
Holds the NETDATA_STOCK_CONFIG_DIR
environment variable. See https://learn.netdata.cloud/docs/agent/collectors/plugins.d#environment-variables for more details.
update_every
$num = $netdata->update_every;
Defaults to the NETDATA_UPDATE_EVERY
environment variable. See https://learn.netdata.cloud/docs/agent/collectors/plugins.d#environment-variables for more details.
user_config_dir
$path = $netdata->user_config_dir;
Holds the NETDATA_USER_CONFIG_DIR
environment variable. See https://learn.netdata.cloud/docs/agent/collectors/plugins.d#environment-variables for more details.
web_dir
$path = $netdata->web_dir;
Holds the NETDATA_WEB_DIR
environment variable. See https://learn.netdata.cloud/docs/agent/collectors/plugins.d#environment-variables for more details.
METHODS
start
$bool = $netdata->start;
Reads the "config" and return 1 if any "collectors" got registered.
AUTHOR
Jan Henning Thorsen
COPYRIGHT AND LICENSE
Copyright (C) Jan Henning Thorsen
This program is free software, you can redistribute it and/or modify it under the terms of the Artistic License version 2.0.
SEE ALSO
https://learn.netdata.cloud/docs/agent/collectors/plugins.d.