netdata/docs/Add-more-charts-to-netdata.md

43 KiB

Add more charts to netdata

netdata collects system metrics by itself. It has many internal plugins for collecting most of the metrics presented by default when it starts, collecting data from /proc, /sys and other Linux kernel sources.

To collect non-system metrics, netdata supports a plugin architecture. The following are the currently available external plugins:

Check also Third Party Plugins for a list of plugins distributed by third parties.

configuring plugins

netdata comes with internal and external plugins:

  1. The internal ones are written in C and run as threads within the netdata daemon.
  2. The external ones can be written in any computer language. The netdata daemon spawns these as processes (shown with ps fax) and reads their metrics using pipes (so the stdout of external plugins is connected to netdata for metrics collection and the stderr of external plugins is connected to /var/log/netdata/error.log).

To make it easier to develop plugins, and minimize the number of threads and processes running, netdata supports plugin orchestrators, each of them supporting one or more data collection modules. Currently we ship plugin orchestrators for 4 languages: C, python, node.js and bash and 2 more are under development (go and java).

enabling and disabling plugins

To control which plugins netdata run, edit netdata.conf and check the [plugins] section. It looks like this:

[plugins]
	# enable running new plugins = yes
	# check for new plugins every = 60
	# proc = yes
	# diskspace = yes
	# cgroups = yes
	# cups = yes
	# tc = yes
	# nfacct = yes
	# idlejitter = yes
	# freeipmi = yes
	# node.d = yes
	# python.d = yes
	# fping = yes
	# ioping = yes
	# charts.d = yes
	# apps = yes
	# xenstat = yes

The default for all plugins is the option enable running new plugins. So, setting this to no will disable all the plugins, except the ones specifically enabled.

enabling and disabling modules

Each of the plugins may support one or more data collection modules. To control which of its modules run, you have to consult the configuration of the plugin (see table below).

modules configuration

Most modules come with auto-detection, configured to work out-of-the-box on popular operating systems with the default settings.

However, there are cases that auto-detection fails. Usually the reason is that the applications to be monitored do not allow netdata to connect. In most of the cases, allowing the user netdata from localhost to connect and collect metrics, will automatically enable data collection for the application in question (it will require a netdata restart).

You can verify netdata external plugins and their modules are able to collect metrics, following this procedure:

# become user netdata
sudo su -s /bin/bash netdata

# execute the plugin in debug mode, for a specific module.
# example for the python plugin, mysql module:
/usr/libexec/netdata/plugins.d/python.d.plugin 1 debug trace mysql

Similarly, you can use charts.d.plugin for BASH plugins and node.d.plugin for node.js plugins. Other plugins (like apps.plugin, freeipmi.plugin, fping.plugin, ioping.plugin) use the native netdata plugin API and can be run directly.

If you need to configure a netdata plugin or module, all user supplied configuration is kept at /etc/netdata while the stock versions of all files is at /usr/lib/netdata/conf.d. To copy a stock file and edit it, run /etc/netdata/edit-config. Running this command without an argument, will list the available stock files.

Each file should provide plenty of examples and documentation about each module and plugin.

This is a map of the all supported configuration options:

map of configuration files

plugin language plugin
configuration
modules
configuration
apps.plugin
(external plugin for monitoring the process tree on Linux and FreeBSD)
C netdata.conf section [plugin:apps] Custom configuration for the processes to be monitored at apps_groups.conf
freebsd.plugin
(internal plugin for monitoring FreeBSD system resources)
C netdata.conf section [plugin:freebsd] one section for each module [plugin:freebsd:MODULE]. Each module may provide additional sections in the form of [plugin:freebsd:MODULE:SUBSECTION].
cgroups.plugin
(internal plugin for monitoring Linux containers, VMs and systemd services)
C netdata.conf section [plugin:cgroups] N/A
charts.d.plugin
(external plugin orchestrator for BASH modules)
BASH charts.d.conf a file for each module in /etc/netdata/charts.d/
diskspace.plugin
(internal plugin for collecting Linux mount points usage)
C netdata.conf section [plugin:diskspace] N/A
fping.plugin
(external plugin for collecting network latencies)
C fping.conf This plugin is a wrapper for the fping command.
ioping.plugin
(external plugin for collecting disk latencies)
C ioping.conf This plugin is a wrapper for the ioping command.
freeipmi.plugin
(external plugin for collecting IPMI h/w sensors)
C netdata.conf section [plugin:freeipmi]
idlejitter.plugin
(internal plugin for monitoring CPU jitter)
C N/A N/A
macos.plugin
(internal plugin for monitoring MacOS system resources)
C netdata.conf section [plugin:macos] one section for each module [plugin:macos:MODULE]. Each module may provide additional sections in the form of [plugin:macos:MODULE:SUBSECTION].
node.d.plugin
(external plugin orchestrator of node.js modules)
node.js node.d.conf a file for each module in /etc/netdata/node.d/.
proc.plugin
(internal plugin for monitoring Linux system resources)
C netdata.conf section [plugin:proc] one section for each module [plugin:proc:MODULE]. Each module may provide additional sections in the form of [plugin:proc:MODULE:SUBSECTION].
python.d.plugin
(external plugin orchestrator for running python modules)
python
v2 or v3
both are supported
python.d.conf a file for each module in /etc/netdata/python.d/.
statsd.plugin
(internal plugin for collecting statsd metrics)
C netdata.conf section [statsd] Synthetic statsd charts can be configured with files in /etc/netdata/statsd.d/.
tc.plugin
(internal plugin for collecting Linux traffic QoS)
C netdata.conf section [plugin:tc] The plugin runs an external helper called tc-qos-helper.sh to interface with the tc command. This helper supports a few additional options using tc-qos-helper.conf.

writing data collection modules

You can add custom plugins following the External Plugins Guide.


available data collection modules

These are all the data collection plugins currently available.

Web Servers

application language notes
apache python
v2 or v3
Connects to multiple apache servers (local or remote) to collect real-time performance metrics.
 
netdata plugin: python.d.plugin
plugin module: apache.chart.py
configuration file: python.d/apache.conf
apache BASH
Shell Script
Connects to an apache server (local or remote) to collect real-time performance metrics.

DEPRECATED IN FAVOR OF THE PYTHON ONE. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: apache.chart.sh
configuration file: charts.d/apache.conf
ipfs python
v2 or v3
Connects to multiple ipfs servers (local or remote) to collect real-time performance metrics.
 
netdata plugin: python.d.plugin
plugin module: ipfs.chart.py
configuration file: python.d/ipfs.conf
litespeed python
v2 or v3
reads the litespeed rtreport files to collect metrics.
 
netdata plugin: python.d.plugin
plugin module: litespeed.chart.py
configuration file: python.d/litespeed.conf
nginx python
v2 or v3
Connects to multiple nginx servers (local or remote) to collect real-time performance metrics.
 
netdata plugin: python.d.plugin
plugin module: nginx.chart.py
configuration file: python.d/nginx.conf
nginx_plus python
v2 or v3
Connects to multiple nginx_plus servers (local or remote) to collect real-time performance metrics.
 
netdata plugin: python.d.plugin
plugin module: nginx_plus.chart.py
configuration file: python.d/nginx_plus.conf
nginx BASH
Shell Script
Connects to an nginx server (local or remote) to collect real-time performance metrics.

DEPRECATED IN FAVOR OF THE PYTHON ONE. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: nginx.chart.sh
configuration file: charts.d/nginx.conf
phpfpm python
v2 or v3
Connects to multiple phpfpm servers (local or remote) to collect real-time performance metrics.
 
netdata plugin: python.d.plugin
plugin module: phpfpm.chart.py
configuration file: python.d/phpfpm.conf
phpfpm BASH
Shell Script
Connects to one or more phpfpm servers (local or remote) to collect real-time performance metrics.

DEPRECATED IN FAVOR OF THE PYTHON ONE. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: phpfpm.chart.sh
configuration file: charts.d/phpfpm.conf
tomcat python
v2 or v3
Connects to multiple tomcat servers (local or remote) to collect real-time performance metrics.
 
netdata plugin: python.d.plugin
plugin module: tomcat.chart.py
configuration file: python.d/tomcat.conf
tomcat BASH
Shell Script
Connects to a tomcat server (local or remote) to collect real-time performance metrics.

DEPRECATED IN FAVOR OF THE PYTHON ONE. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: tomcat.chart.sh
configuration file: charts.d/tomcat.conf

Web Log Parsers

application language notes
web_log python
v2 or v3
powerful plugin, capable of incrementally parsing any number of web server log files
 
netdata plugin: python.d.plugin
plugin module: web_log.chart.py
configuration file: python.d/web_log.conf

Database Servers

application language notes
couchdb python
v2 or v3
Connects to multiple couchdb servers (local or remote) to collect real-time performance metrics.
 
netdata plugin: python.d.plugin
plugin module: couchdb.chart.py
configuration file: python.d/couchdb.conf
memcached python
v2 or v3
Connects to multiple memcached servers (local or remote) to collect real-time performance metrics.
 
netdata plugin: python.d.plugin
plugin module: memcached.chart.py
configuration file: python.d/memcached.conf
mongodb python
v2 or v3
Connects to multiple mongodb servers (local or remote) to collect real-time performance metrics.
 
Requires package python-pymongo.
 
netdata plugin: python.d.plugin
plugin module: mongodb.chart.py
configuration file: python.d/mongodb.conf
mysql
mariadb
python
v2 or v3
Connects to multiple mysql or mariadb servers (local or remote) to collect real-time performance metrics.
 
Requires package python-mysqldb (faster and preferred), or python-pymysql.
 
netdata plugin: python.d.plugin
plugin module: mysql.chart.py
configuration file: python.d/mysql.conf
mysql
mariadb
BASH
Shell Script
Connects to multiple mysql or mariadb servers (local or remote) to collect real-time performance metrics.

DEPRECATED IN FAVOR OF THE PYTHON ONE. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: mysql.chart.sh
configuration file: charts.d/mysql.conf
postgres python
v2 or v3
Connects to multiple postgres servers (local or remote) to collect real-time performance metrics.
 
Requires package python-psycopg2.
 
netdata plugin: python.d.plugin
plugin module: postgres.chart.py
configuration file: python.d/postgres.conf
redis python
v2 or v3
Connects to multiple redis servers (local or remote) to collect real-time performance metrics.
 
netdata plugin: python.d.plugin
plugin module: redis.chart.py
configuration file: python.d/redis.conf
rethinkdb python
v2 or v3
Connects to multiple rethinkdb servers (local or remote) to collect real-time metrics.
 
netdata plugin: python.d.plugin
plugin module: rethinkdb.chart.py
configuration file: python.d/rethinkdb.conf

Social Sharing Servers

application language notes
retroshare python
v2 or v3
Connects to multiple retroshare servers (local or remote) to collect real-time performance metrics.
 
netdata plugin: python.d.plugin
plugin module: retroshare.chart.py
configuration file: python.d/retroshare.conf

Proxy Servers

application language notes
squid python
v2 or v3
Connects to multiple squid servers (local or remote) to collect real-time performance metrics.
 
netdata plugin: python.d.plugin
plugin module: squid.chart.py
configuration file: python.d/squid.conf
squid BASH
Shell Script
Connects to a squid server (local or remote) to collect real-time performance metrics.

DEPRECATED IN FAVOR OF THE PYTHON ONE. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: squid.chart.sh
configuration file: charts.d/squid.conf

HTTP Accelerators

application language notes
varnish python
v2 or v3
Uses the varnishstat command to provide varnish cache statistics (client metrics, cache perfomance, thread-related metrics, backend health, memory usage etc.).
 
netdata plugin: python.d.plugin
plugin module: varnish.chart.py
configuration file: python.d/varnish.conf

Search Engines

application language notes
elasticsearch python
v2 or v3
Monitor elasticsearch performance and health metrics.
 
netdata plugin: python.d.plugin
plugin module: elasticsearch.chart.py
configuration file: python.d/elasticsearch.conf

Name Servers

application language notes
named node.js Connects to multiple named (ISC-Bind) servers (local or remote) to collect real-time performance metrics. All versions of bind after 9.9.10 are supported.
 
netdata plugin: node.d.plugin
plugin module: named.node.js
configuration file: node.d/named.conf
bind_rndc python
v2 or v3
Parses named.stats dump file to collect real-time performance metrics. All versions of bind after 9.6 are supported.
 
netdata plugin: python.d.plugin
plugin module: bind_rndc.chart.py
configuration file: python.d/bind_rndc.conf
nsd python
v2 or v3
Charts the nsd received queries and zones.
 
netdata plugin: python.d.plugin
plugin module: nsd.chart.py
configuration file: python.d/nsd.conf
powerdns python
v2 or v3
Monitors powerdns performance and health metrics
 
netdata plugin: python.d.plugin
plugin module: powerdns.chart.py
configuration file: python.d/powerdns.conf
dnsdist python
v2 or v3
Monitors dnsdist performance and health metrics
 
netdata plugin: python.d.plugin
plugin module: dnsdist.chart.py
configuration file: python.d/dnsdist.conf
unbound python
v2 or v3
Monitors Unbound performance and resource usage metrics
 
netdata plugin: python.d.plugin
plugin module: unbound.chart.py
configuration file: python.d/unbound.conf

DHCP Servers

application language notes
isc dhcp python
v2 or v3
Monitor lease database to show all active leases.
 
Python v2 requires package python-ipaddress.
 
netdata plugin: python.d.plugin
plugin module: isc-dhcpd.chart.py
configuration file: python.d/isc-dhcpd.conf

Load Balancers

application language notes
haproxy python
v2 or v3
Monitor frontend, backend and health metrics.
 
netdata plugin: python.d.plugin
plugin module: haproxy.chart.py
configuration file: python.d/haproxy.conf
traefik python
v2 or v3
Connects to multiple traefik instances (local or remote) to collect API metrics (response status code, response time, average response time and server uptime).
 
netdata plugin: python.d.plugin
plugin module: traefik.chart.py
configuration file: python.d/traefik.conf

Message Brokers

application language notes
rabbitmq python
v2 or v3
Monitor rabbitmq performance and health metrics.
 
netdata plugin: python.d.plugin
plugin module: rabbitmq.chart.py
configuration file: python.d/rabbitmq.conf
beanstalkd python
v2 or v3
Provides server and tube level statistics.
 
Requires beanstalkc python package (pip install beanstalkc or install package python-beanstalkc, which also installs python-yaml).
 
netdata plugin: python.d.plugin
plugin module: beanstalk.chart.py
configuration file: python.d/beanstalk.conf

UPS

application language notes
apcupsd BASH
Shell Script
Connects to an apcupsd server to collect real-time statistics of an APC UPS.
 
netdata plugin: charts.d.plugin
plugin module: apcupsd.chart.sh
configuration file: charts.d/apcupsd.conf
nut BASH
Shell Script
Connects to a nut server (upsd) to collect real-time UPS statistics.
 
netdata plugin: charts.d.plugin
plugin module: nut.chart.sh
configuration file: charts.d/nut.conf

RAID

application language notes
megacli python
v2 or v3
Collects adapter, physical drives and battery stats..
 
netdata plugin: python.d.plugin
plugin module: megacli.chart.py
configuration file: python.d/megacli.conf

Mail Servers

application language notes
dovecot python
v2 or v3
Connects to multiple dovecot servers (local or remote) to collect real-time performance metrics.
 
netdata plugin: python.d.plugin
plugin module: dovecot.chart.py
configuration file: python.d/dovecot.conf
exim python
v2 or v3
Charts the exim queue size.
 
netdata plugin: python.d.plugin
plugin module: exim.chart.py
configuration file: python.d/exim.conf
exim BASH
Shell Script
Charts the exim queue size.

DEPRECATED IN FAVOR OF THE PYTHON ONE. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: exim.chart.sh
configuration file: charts.d/exim.conf
postfix python
v2 or v3
Charts the postfix queue size (supports multiple queues).
 
netdata plugin: python.d.plugin
plugin module: postfix.chart.py
configuration file: python.d/postfix.conf
postfix BASH
Shell Script
Charts the postfix queue size.

DEPRECATED IN FAVOR OF THE PYTHON ONE. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: postfix.chart.sh
configuration file: charts.d/postfix.conf

File Servers

application language notes
NFS Client C This is handled entirely by the netdata daemon.
 
Configuration: netdata.conf, section [plugin:proc:/proc/net/rpc/nfs].
NFS Server C This is handled entirely by the netdata daemon.
 
Configuration: netdata.conf, section [plugin:proc:/proc/net/rpc/nfsd].
samba python
v2 or v3
Performance metrics of Samba SMB2 file sharing.
 
documentation page: python.d.plugin module samba
netdata plugin: python.d.plugin
plugin module: samba.chart.py
configuration file: python.d/samba.conf

Print Servers

application language notes
CUPS C Charts metrics of printers, jobs and other cups destinations.
 
netdata plugin: cups.plugin

Hypervisors

application language notes
xenstat C Collects host and domain statistics for XenServer or XCP-ng hypervisors.
 
netdata plugin: xenstat.plugin

System

application language notes
apps C apps.plugin collects resource usage statistics for all processes running in the system. It groups the entire process tree and reports dozens of metrics for CPU utilization, memory footprint, disk I/O, swap memory, network connections, open files and sockets, etc. It reports metrics for application groups, users and user groups.
 
Documentation of apps.plugin.
 
netdata plugin: apps_plugin.c
configuration file: apps_groups.conf
ioping C Charts disk latency statistics for a directory/file/device, using the ioping command. A recent (probably unreleased) version of ioping is required. The plugin supplied can install it in /usr/local.
 
netdata plugin: ioping.plugin (this is a shell wrapper to start ioping - once ioping is started, netdata and ioping communicate directly - it can also install the right version of ioping)
configuration file: ioping.conf
cpu_apps BASH
Shell Script
Collects the CPU utilization of select apps.

DEPRECATED IN FAVOR OF apps.plugin. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: cpu_apps.chart.sh
configuration file: charts.d/cpu_apps.conf
load_average BASH
Shell Script
Collects the current system load average.

DEPRECATED IN FAVOR OF THE NETDATA INTERNAL ONE. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: load_average.chart.sh
configuration file: charts.d/load_average.conf
mem_apps BASH
Shell Script
Collects the memory footprint of select applications.

DEPRECATED IN FAVOR OF apps.plugin. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: mem_apps.chart.sh
configuration file: charts.d/mem_apps.conf

Sensors

application language notes
cpufreq BASH
Shell Script
Collects current CPU frequency from /sys/devices.

DEPRECATED IN FAVOR OF THE PYTHON ONE. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: cpufreq.chart.sh
configuration file: charts.d/cpufreq.conf
IPMI C Collects temperatures, voltages, currents, power, fans and SEL events from IPMI using libipmimonitoring.
Check Monitoring IPMI for more information
 
netdata plugin: freeipmi.plugin
configuration file: none required - to enable it, compile/install netdata with --enable-plugin-freeipmi
hddtemp python
v2 or v3
Connects to multiple hddtemp servers (local or remote) to collect real-time performance metrics.
 
netdata plugin: python.d.plugin
plugin module: hddtemp.chart.py
configuration file: python.d/hddtemp.conf
hddtemp BASH
Shell Script
Connects to a hddtemp server (local or remote) to collect real-time performance metrics.

DEPRECATED IN FAVOR OF THE PYTHON ONE. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: hddtemp.chart.sh
configuration file: charts.d/hddtemp.conf
sensors BASH
Shell Script
Collects sensors values from files in /sys.

DEPRECATED IN FAVOR OF THE PYTHON ONE. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: sensors.chart.sh
configuration file: charts.d/sensors.conf
sensors python
v2 or v3
Uses lm-sensors to collect sensor data.
 
netdata plugin: python.d.plugin
plugin module: sensors.chart.py
configuration file: python.d/sensors.conf
smartd_log python
v2 or v3
Collects the S.M.A.R.T attributes from smartd log files.
 
netdata plugin: python.d.plugin
plugin module: smartd_log.chart.py
configuration file: python.d/smartd_log.conf
w1sensor python
v2 or v3
Collects data from connected 1-Wire sensors.
 
netdata plugin: python.d.plugin
plugin module: w1sensor.chart.py
configuration file: python.d/w1sensor.conf

Network

application language notes
ap BASH
Shell Script
Uses the iw command to provide statistics of wireless clients connected to a wireless access point running on this host (works well with hostapd).
 
netdata plugin: charts.d.plugin
plugin module: ap.chart.sh
configuration file: charts.d/ap.conf
fping C Charts network latency statistics for any number of nodes, using the fping command. A recent (probably unreleased) version of fping is required. The plugin supplied can install it in /usr/local.
 
netdata plugin: fping.plugin (this is a shell wrapper to start fping - once fping is started, netdata and fping communicate directly - it can also install the right version of fping)
configuration file: fping.conf
snmp node.js Connects to multiple snmp servers to collect real-time performance metrics.
 
netdata plugin: node.d.plugin
plugin module: snmp.node.js
configuration file: node.d/snmp.conf
nfacct C collects netfilter firewall, connection tracker and accounting metrics using libmnl and libnetfilter_acct
dns_query_time python
v2 or v3
Provides DNS query time statistics.
 
Requires package dnspython (pip install dnspython or install package python-dnspython).
 
netdata plugin: python.d.plugin
plugin module: dns_query_time.chart.py
configuration file: python.d/dns_query_time.conf
http python
v2 or v3
Monitors a generic web page for status code and returned content in HTML
port ptyhon
v2 or v3
Checks if a generic TCP port for its availability and response time

Time Servers

application language notes
chrony python
v2 or v3
Uses the chronyc command to provide chrony statistics (Frequency, Last offset, RMS offset, Residual freq, Root delay, Root dispersion, Skew, System time).
 
netdata plugin: python.d.plugin
plugin module: chrony.chart.py
configuration file: python.d/chrony.conf
ntpd python
v2 or v3
Connects to multiple ntpd servers (local or remote) to provide statistics of system variables and optional also peer variables (if enabled in the configuration).
 
netdata plugin: python.d.plugin
plugin module: ntpd.chart.py
configuration file: python.d/ntpd.conf

Security

application language notes
freeradius python
v2 or v3
Uses the radclient command to provide freeradius statistics (authentication, accounting, proxy-authentication, proxy-accounting).
 
netdata plugin: python.d.plugin
plugin module: freeradius.chart.py
configuration file: python.d/freeradius.conf
openvpn python
v2 or v3
All data from openvpn-status.log in your dashboard!
 
netdata plugin: python.d.plugin
plugin module: ovpn_status_log.chart.py
configuration file: python.d/ovpn_status_log.conf
fail2ban python
v2 or v3
Monitor fail2ban log file to show all bans for all active jails
 
netdata plugin: python.d.plugin
plugin module: fail2ban.chart.py
configuration file: python.d/fail2ban.conf

Telephony Servers

application language notes
opensips BASH
Shell Script
Connects to an opensips server (local only) to collect real-time performance metrics.
 
netdata plugin: charts.d.plugin
plugin module: opensips.chart.sh
configuration file: charts.d/opensips.conf

Go applications

application language notes
go_expvar python
v2 or v3
Parses metrics exposed by applications written in the Go programming language using the expvar package.
 
netdata plugin: python.d.plugin
plugin module: go_expvar.chart.py
configuration file: python.d/go_expvar.conf
documentation: Monitoring Go Applications

Household Appliances

application language notes
sma_webbox node.js Connects to multiple remote SMA webboxes to collect real-time performance metrics of the photovoltaic (solar) power generation.
 
netdata plugin: node.d.plugin
plugin module: sma_webbox.node.js
configuration file: node.d/sma_webbox.conf
fronius node.js Connects to multiple remote Fronius Symo servers to collect real-time performance metrics of the photovoltaic (solar) power generation.
 
netdata plugin: node.d.plugin
plugin module: fronius.node.js
configuration file: node.d/fronius.conf
stiebeleltron node.js Collects the temperatures and other metrics from your Stiebel Eltron heating system using their Internet Service Gateway (ISG web).
 
netdata plugin: node.d.plugin
plugin module: stiebeleltron.node.js
configuration file: node.d/stiebeleltron.conf

Java Processes

application language notes
Spring Boot Application java Monitors running Java Spring Boot applications that expose their metrics with the use of the Spring Boot Actuator included in Spring Boot library.
 
netdata plugin: python.d.plugin
plugin module: springboot
configuration file: python.d/springboot.conf

Provisioning Systems

application language notes
puppet python
v2 or v3
Connects to multiple Puppet Server and Puppet DB instances (local or remote) to collect real-time status metrics.
 
netdata plugin: python.d.plugin
plugin module: puppet.chart.py
configuration file: python.d/puppet.conf

Game Servers

application language notes
SpigotMC Python
v2 or v3
Monitors Spigot Minecraft server ticks per second and number of online players using the Minecraft remote console.
 
netdata plugin: python.d.plugin
plugin module: spigotmc.chart.py
configuration file: python.d/spigotmc.conf

Distributed Computing Clients

application language notes
BOINC Python
v2 or v3
Monitors task states for local and remote BOINC client software using the remote GUI RPC interface. Also provides alarms for a handful of error conditions. Requires manual configuration
 
netdata plugin: python.d.plugin
plugin module: boinc.chart.py
configuration file: python.d/boinc.conf

Skeleton Plugins

application language notes
example BASH
Shell Script
Skeleton plugin in BASH.

DEPRECATED IN FAVOR OF THE PYTHON ONE. It is still supplied only as an example module to shell scripting plugins.
 
netdata plugin: charts.d.plugin
plugin module: example.chart.sh
configuration file: charts.d/example.conf
example python
v2 or v3
Skeleton plugin in Python.
 
netdata plugin: python.d.plugin
plugin module: example.chart.py
configuration file: python.d/example.conf

analytics