diff options
Diffstat (limited to 'src/go/plugin/go.d/README.md')
-rw-r--r-- | src/go/plugin/go.d/README.md | 85 |
1 files changed, 30 insertions, 55 deletions
diff --git a/src/go/plugin/go.d/README.md b/src/go/plugin/go.d/README.md index 28f046ab9..ecb8c45fa 100644 --- a/src/go/plugin/go.d/README.md +++ b/src/go/plugin/go.d/README.md @@ -1,43 +1,18 @@ -<!-- -title: go.d.plugin -description: "go.d.plugin is an external plugin for Netdata, responsible for running individual data collectors written in Go." -custom_edit_url: "/src/go/plugin/go.d/README.md" -sidebar_label: "go.d.plugin" -learn_status: "Published" -learn_topic_type: "Tasks" -learn_rel_path: "Developers/External plugins/go.d.plugin" -sidebar_position: 1 ---> - # go.d.plugin -`go.d.plugin` is a [Netdata](https://github.com/netdata/netdata) external plugin. It is an **orchestrator** for data -collection modules written in `go`. - -1. It runs as an independent process (`ps fax` shows it). -2. It is started and stopped automatically by Netdata. -3. It communicates with Netdata via a unidirectional pipe (sending data to the Netdata daemon). -4. Supports any number of data collection modules. -5. Allows each module to have any number of data collection jobs. - -## Bug reports, feature requests, and questions - -Are welcome! We are using [netdata/netdata](https://github.com/netdata/netdata/) repository for bugs, feature requests, -and questions. - -- [GitHub Issues](https://github.com/netdata/netdata/issues/new/choose): report bugs or open a new feature request. -- [GitHub Discussions](https://github.com/netdata/netdata/discussions): ask a question or suggest a new idea. +`go.d.plugin` is a [Netdata](https://github.com/netdata/netdata) external plugin: -## Install - -Go.d.plugin is shipped with Netdata. +- **Independent Operation**: Runs as a separate process from Netdata core, visible in system process lists (`ps fax`). +- **Automated Management**: Integrated with Netdata's lifecycle management, managed automatically by Netdata (start/stop operations). +- **Efficient Communication**: Uses a unidirectional pipe for optimal data transfer to Netdata. +- **Modular Architecture**: + - Supports an unlimited number of data collection modules. + - Each module can run multiple collection jobs simultaneously. + - Easy to extend with new collection modules ### Required Linux capabilities -All capabilities are set automatically during Netdata installation using -the [official installation method](/packaging/installer/methods/kickstart.md). -No further action required. If you have used a different installation method and need to set the capabilities manually, -see the appropriate collector readme. +All capabilities are set automatically during Netdata installation using the [official installation method](/packaging/installer/methods/kickstart.md). | Capability | Required by | |:--------------------|:-------------------------------------------------------------------------------------------------------:| @@ -47,15 +22,21 @@ see the appropriate collector readme. ## Available modules +<details> +<summary>Data Collection Modules</summary> + | Name | Monitors | |:-------------------------------------------------------------------------------------------------------------------|:-----------------------------:| | [adaptec_raid](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/adaptecraid) | Adaptec Hardware RAID | | [activemq](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/activemq) | ActiveMQ | | [ap](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/ap) | Wireless AP | | [apache](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/apache) | Apache | +| [apcupsd](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/apcupsd) | UPS (APC) | | [beanstalk](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/beanstalk) | Beanstalk | | [bind](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/bind) | ISC Bind | +| [boinc](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/boinc) | BOINC | | [cassandra](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/cassandra) | Cassandra | +| [ceph](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/ceph) | Ceph | | [chrony](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/chrony) | Chrony | | [clickhouse](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/clickhouse) | ClickHouse | | [cockroachdb](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/cockroachdb) | CockroachDB | @@ -74,7 +55,6 @@ see the appropriate collector readme. | [dovecot](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/dovecot) | Dovecot | | [elasticsearch](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/elasticsearch) | Elasticsearch/OpenSearch | | [envoy](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/envoy) | Envoy | -| [example](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/example) | - | | [exim](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/exim) | Exim | | [fail2ban](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/fail2ban) | Fail2Ban Jails | | [filecheck](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/filecheck) | Files and Directories | @@ -98,6 +78,7 @@ see the appropriate collector readme. | [logind](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/logind) | systemd-logind | | [logstash](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/logstash) | Logstash | | [lvm](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/lvm) | LVM logical volumes | +| [maxscale](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/maxscale) | MaxScale | | [megacli](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/megacli) | MegaCli Hardware Raid | | [memcached](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/memcached) | Memcached | | [mongoDB](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/mongodb) | MongoDB | @@ -105,13 +86,17 @@ see the appropriate collector readme. | [mysql](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/mysql) | MySQL | | [nginx](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/nginx) | NGINX | | [nginxplus](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/nginxplus) | NGINX Plus | +| [nginxunit](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/nginxunit) | NGINX Unit | | [nginxvts](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/nginxvts) | NGINX VTS | | [nsd](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/nsd) | NSD (NLnet Labs) | | [ntpd](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/ntpd) | NTP daemon | +| [nvidia_smi](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/nvidia_smi) | Nvidia SMI | | [nvme](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/nvme) | NVMe devices | +| [openldap](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/openldap) | OpenLDAP | | [openvpn](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/openvpn) | OpenVPN | | [openvpn_status_log](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/openvpn_status_log) | OpenVPN | | [pgbouncer](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/pgbouncer) | PgBouncer | +| [oracledb](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/oracledb) | Oracle DB | | [phpdaemon](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/phpdaemon) | phpDaemon | | [phpfpm](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/phpfpm) | PHP-FPM | | [pihole](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/pihole) | Pi-hole | @@ -131,12 +116,14 @@ see the appropriate collector readme. | [rethinkdb](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/rethinkdb) | RethinkDB | | [riakkv](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/riakkv) | Riak KV | | [rspamd](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/rspamd) | Rspamd | +| [samba](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/samba) | Samba | | [scaleio](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/scaleio) | Dell EMC ScaleIO | | [sensors](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/sensors) | Hardware Sensors | | [SNMP](https://github.com/netdata/netdata/blob/master/src/go/plugin/go.d/modules/snmp) | SNMP | | [squid](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/squid) | Squid | | [squidlog](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/squidlog) | Squid | | [smartctl](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/smartctl) | S.M.A.R.T Storage Devices | +| [spigotmc](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/spigotmc) | SpigotMC | | [storcli](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/storcli) | Broadcom Hardware RAID | | [supervisord](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/supervisord) | Supervisor | | [systemdunits](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/systemdunits) | Systemd unit state | @@ -144,11 +131,15 @@ see the appropriate collector readme. | [tomcat](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/tomcat) | Tomcat | | [tor](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/tor) | Tor | | [traefik](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/traefik) | Traefik | -| [upsd](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/upsd) | UPSd (Nut) | +| [typesense](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/typesense) | Typesense | | [unbound](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/unbound) | Unbound | +| [upsd](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/upsd) | UPSd (Nut) | +| [uwsgi](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/uwsgi) | uWSGI | +| [varnish](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/varnish) | Varnish | | [vcsa](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/vcsa) | vCenter Server Appliance | | [vernemq](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/vernemq) | VerneMQ | | [vsphere](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/vsphere) | VMware vCenter Server | +| [w1sensor](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/w1sensor) | 1-Wire Sensors | | [web_log](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/weblog) | Apache/NGINX | | [wireguard](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/wireguard) | WireGuard | | [whoisquery](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/whoisquery) | Domain Expiry | @@ -157,6 +148,8 @@ see the appropriate collector readme. | [zfspool](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/zfspool) | ZFS Pools | | [zookeeper](https://github.com/netdata/netdata/tree/master/src/go/plugin/go.d/modules/zookeeper) | ZooKeeper | +</details> + ## Configuration Edit the `go.d.conf` configuration file using `edit-config` from the @@ -192,18 +185,7 @@ modules: example: yes ``` -Then [restart netdata](/docs/netdata-agent/start-stop-restart.md) -for the change to take effect. - -## Contributing - -If you want to contribute to this project, we are humbled. Please take a look at -our [contributing guidelines](https://github.com/netdata/.github/blob/main/CONTRIBUTING.md) and don't hesitate to -contact us in our forums. - -### How to develop a collector - -Read [how to write a Netdata collector in Go](/src/go/plugin/go.d/docs/how-to-write-a-module.md). +Then [restart netdata](/docs/netdata-agent/start-stop-restart.md) for the change to take effect. ## Troubleshooting @@ -235,10 +217,3 @@ sudo su -s /bin/bash netdata ``` Change `<module name>` to the [module name](#available-modules) you want to debug. - -## Netdata Community - -This repository follows the Netdata Code of Conduct and is part of the Netdata Community. - -- [Community Forums](https://community.netdata.cloud) -- [Netdata Code of Conduct](https://github.com/netdata/.github/blob/main/CODE_OF_CONDUCT.md) |