Name server and resolver statistics from the `statistics-channel'
interface of BIND 9.5, 9,6 and later.
+ - cgroups
+ CPU accounting information for process groups under Linux.
+
- conntrack
Number of nf_conntrack entries.
+ - contextswitch
+ Number of context switches done by the operating system.
+
- cpu
CPU utilization: Time spent in the system, user, nice, idle, and related
states.
Retrieves JSON data via cURL and parses it according to user
configuration.
+ - curl_xml
+ Retrieves XML data via cURL and parses it according to user
+ configuration.
+
- dbi
Executes SQL statements on various databases and interprets the returned
data.
- entropy
Amount of entropy available to the system.
+ - ethstat
+ Network interface card statistics.
+
- exec
Values gathered by a custom program or script.
See collectd-exec(5).
- load
System load average over the last 1, 5 and 15 minutes.
+ - lpar
+ Detailed CPU statistics of the “Logical Partitions” virtualization
+ technique built into IBM's POWER processors.
+
- libvirt
- CPU, disk and network I/O statistics from virtual machines.
+ CPU, memory, disk and network I/O statistics from virtual machines.
+
+ - lvm
+ Size of “Logical Volumes” (LV) and “Volume Groups” (VG) of Linux'
+ “Logical Volume Manager” (LVM).
- madwifi
Queries very detailed usage statistics from wireless LAN adapters and
Motherboard sensors: temperature, fanspeed and voltage information,
using mbmon(1).
+ - md
+ Linux software-RAID device information (number of active, failed, spare
+ and missing disks).
+
- memcachec
Query and parse data from a memcache daemon (memcached).
Memory utilization: Memory occupied by running processes, page cache,
buffer cache and free.
+ - mic
+ Collects CPU usage, memory usage, temperatures and power consumption from
+ Intel Many Integrated Core (MIC) CPUs.
+
+ - modbus
+ Reads values from Modbus/TCP enabled devices. Supports reading values
+ from multiple "slaves" so gateway devices can be used.
+
- multimeter
Information provided by serial multimeters, such as the `Metex
M-4650CR'.
MySQL server statistics: Commands issued, handlers triggered, thread
usage, query cache utilization and traffic/octets sent and received.
+ - netapp
+ Plugin to query performance values from a NetApp storage system using the
+ “Manage ONTAP” SDK provided by NetApp.
+
- netlink
Very detailed Linux network interface and routing statistics. You can get
(detailed) information on interfaces, qdiscs, classes, and, if you can
Network UPS tools: UPS current, voltage, power, charge, utilisation,
temperature, etc. See upsd(8).
+ - numa
+ Information about Non-Uniform Memory Access (NUMA).
+
- olsrd
Queries routing information from the “Optimized Link State Routing”
daemon.
write your own plugins in Perl and return arbitrary values using this
API. See collectd-perl(5).
+ - pf
+ Query statistics from BSD's packet filter "pf".
+
+ - pinba
+ Receive and dispatch timing values from Pinba, a profiling extension for
+ PHP.
+
- ping
Network latency: Time to reach the default gateway or another given
host.
- protocols
Counts various aspects of network protocols such as IP, TCP, UDP, etc.
+ - python
+ The python plugin implements a Python interpreter into collectd. This
+ makes it possible to write plugins in Python which are executed by
+ collectd without the need to start a heavy interpreter every interval.
+ See collectd-python(5) for details.
+
+ - redis
+ The redis plugin gathers information from a redis server, including:
+ uptime, used memory, total connections etc.
+
+ - routeros
+ Query interface and wireless registration statistics from RouterOS.
+
- rrdcached
RRDtool caching daemon (RRDcacheD) statistics.
Follows (tails) logfiles, parses them by lines and submits matched
values.
+ - tail_csv
+ Follows (tails) files in CSV format, parses each line and submits
+ extracted values.
+
- tape
Bytes and operations read and written on tape devices. Solaris only.
- users
Users currently logged in.
+ - varnish
+ Various statistics from Varnish, an HTTP accelerator.
+
- vmem
Virtual memory statistics, e. g. the number of page-ins/-outs or the
number of pagefaults.
* Output can be written or sent to various destinations by the following
plugins:
+ - amqp
+ Sends JSON-encoded data to an Advanced Message Queuing Protocol (AMQP)
+ server, such as RabbitMQ.
+
- csv
Write to comma separated values (CSV) files. This needs lots of
diskspace but is extremely portable and can be analysed with almost
you can easily do weird stuff with the plugins we didn't dare think of
;) See collectd-perl(5).
+ - python
+ It's possible to implement write plugins in Python using the python
+ plugin. See collectd-python(5) for details.
+
- rrdcached
Output to round-robin-database (RRD) files using the RRDtool caching
daemon (RRDcacheD) - see rrdcached(1). That daemon provides a general
needed. Please read collectd-unixsock(5) for a description on how that's
done.
+ - write_graphite
+ Sends data to Carbon, the storage layer of Graphite using TCP or UDP. It
+ can be configured to avoid logging send errors (especially useful when
+ using UDP).
+
- write_http
Sends the values collected by collectd to a web-server using HTTP POST
requests. The transmitted data is either in a form understood by the
Exec plugin or formatted in JSON.
+ - write_mongodb
+ Sends data to MongoDB, a NoSQL database.
+
+ - write_redis
+ Sends the values to a Redis key-value database server.
+
+ - write_riemann
+ Sends data to Riemann, a stream processing and monitoring system.
+
* Logging is, as everything in collectd, provided by plugins. The following
plugins keep up informed about what's going on:
Log messages are propagated to plugins written in Perl as well.
See collectd-perl(5).
+ - python
+ It's possible to implement log plugins in Python using the python plugin.
+ See collectd-python(5) for details.
+
- syslog
Logs to the standard UNIX logging mechanism, syslog.
Notifications are propagated to plugins written in Perl as well.
See collectd-perl(5).
+ - python
+ It's possible to implement notification plugins in Python using the
+ python plugin. See collectd-python(5) for details.
+
* Value processing can be controlled using the "filter chain" infrastructure
and "matches" and "targets". The following plugins are available:
- match_empty_counter
Match counter values which are currently zero.
+ - match_hashed
+ Match values using a hash function of the hostname.
+
- match_regex
Match values by their identifier based on regular expressions.
- target_replace
Replace parts of an identifier using regular expressions.
+ - target_scale
+ Scale (multiply) values by an arbitrary value.
+
- target_set
Set (overwrite) entire parts of an identifier.
* Miscellaneous plugins:
+ - aggregation
+ Selects multiple value lists based on patterns or regular expressions
+ and creates new aggregated values lists from those.
+
+ - threshold
+ Checks values against configured thresholds and creates notifications if
+ values are out of bounds. See collectd-threshold(5) for details.
+
- uuid
Sets the hostname to an unique identifier. This is meant for setups
where each client may migrate to another physical host, possibly going
network plugins, makes sure your resources are used efficiently. Also,
since collectd is programmed multithreaded it benefits from hyperthreading
and multicore processors and makes sure that the daemon isn't idle if only
- one plugins waits for an IO-operation to complete.
+ one plugin waits for an IO-operation to complete.
* Once set up, hardly any maintenance is necessary. Setup is kept as easy
as possible and the default values should be okay for most users.
* libclntsh (optional)
Used by the `oracle' plugin.
+ * libcredis (optional)
+ Used by the redis plugin. Please note that you require a 0.2.2 version
+ or higher. <http://code.google.com/p/credis/>
+
* libcurl (optional)
If you want to use the `apache', `ascent', `curl', `nginx', or `write_http'
plugin.
Used by the `memcachec' plugin to connect to a memcache daemon.
<http://tangent.org/552/libmemcached.html>
+ * libmodbus (optional)
+ Used by the “modbus” plugin to communicate with Modbus/TCP devices. The
+ “modbus” plugin works with version 2.0.3 of the library – due to frequent
+ API changes other versions may or may not compile cleanly.
+ <http://www.libmodbus.org/>
+
* libmysqlclient (optional)
Unsurprisingly used by the `mysql' plugin.
<http://dev.mysql.com/>
+ * libnetapp (optional)
+ Required for the “netapp” plugin.
+ This library is part of the “Manage ONTAP SDK” published by NetApp.
+
* libnetlink (optional)
Used, obviously, for the `netlink' plugin.
<http://www.linuxfoundation.org/en/Net:Iproute2>
Used to capture packets by the `dns' plugin.
<http://www.tcpdump.org/>
+ * libperfstat (optional)
+ Used by various plugins to gather statistics under AIX.
+
* libperl (optional)
Obviously used by the `perl' plugin. The library has to be compiled with
ithread support (introduced in Perl 5.6.0).
The PostgreSQL C client library used by the `postgresql' plugin.
<http://www.postgresql.org/>
+ * libprotobuf-c, protoc-c (optional)
+ Used by the `pinba' plugin to generate a parser for the network packets
+ sent by the Pinba PHP extension.
+ <http://code.google.com/p/protobuf-c/>
+
+ * libpython (optional)
+ Used by the `python' plugin. Currently, Python 2.3 and later and Python 3
+ are supported.
+ <http://www.python.org/>
+
+ * librabbitmq (optional; also called “rabbitmq-c”)
+ Used by the AMQP plugin for AMQP connections, for example to RabbitMQ.
+ <http://hg.rabbitmq.com/rabbitmq-c/>
+
+ * librouteros (optional)
+ Used by the `routeros' plugin to connect to a device running `RouterOS'.
+ <http://verplant.org/librouteros/>
+
* librrd (optional)
Used by the `rrdtool' and `rrdcached' plugins. The latter requires RRDtool
client support which was added after version 1.3 of RRDtool. Versions 1.0,
Parse JSON data. This is needed for the `curl_json' plugin.
<http://github.com/lloyd/yajl>
+ * libvarnish (optional)
+ Fetches statistics from a Varnish instance. This is needed for the Varnish plugin
+ <http://varnish-cache.org>
+
Configuring / Compiling / Installing
------------------------------------