Merge branch 'pull/collectd-4' into collectd-4
[collectd.git] / src / collectd.pod
index 095463c..bc65f57 100644 (file)
@@ -16,7 +16,7 @@ settings. The following features may be available:
 
 =item
 
-Apache server stats (I<apache>)
+Apache and lighttpd server statistics (I<apache>)
 
 =item
 
@@ -40,14 +40,30 @@ Disk and partition usage/throughput (I<disk>)
 
 =item
 
+DNS traffic (I<dns>)
+
+=item
+
+Email usage (I<email>)
+
+=item
+
 Harddisk temperatures (I<hddtemp>)
 
 =item
 
+Irq (I<irq>)
+
+=item
+
 System load averages (I<load>)
 
 =item
 
+Motherboard monitor (I<mbmon>)
+
+=item
+
 Memory usage (I<memory>)
 
 =item
@@ -113,7 +129,9 @@ directory.
 =item B<-P> I<E<lt>pid-fileE<gt>>
 
 Specify an alternative pid file. This overwrites any settings in the config 
-file.
+file. This is thought for init-scripts that require the PID-file in a certain
+directory to work correctly. For everyday-usage use the B<PIDFile>
+config-option.
 
 =item B<-f>
 
@@ -156,10 +174,10 @@ values.
 
 =head2 apache
 
-This module connects to an Apache webserver and expects the output produced by
-B<mod_status.c>. If requires B<libcurl> to set up the HTTP connection and issue
-the request(s). The following is a sample config for the Apache webserver. The
-use of C<ExtendedStatus on> is mandatory.
+This module connects to an Apache or lighttpd webserver and expects the output
+produced by B<mod_status.c>. If requires B<libcurl> to set up the HTTP
+connection and issue the request(s). The following is a sample config for the
+Apache webserver. Under Apache, the use of C<ExtendedStatus on> is mandatory.
 
   ExtendedStatus on
   <IfModule mod_status.c>
@@ -178,6 +196,62 @@ not exist make sure B<cpufreqd> (L<http://cpufreqd.sourceforge.net/>) or a
 similar tool is installed and an "cpu governor" (that's kernel module) is
 loaded.
 
+=head2 email
+
+This plugin collects data indirectly by providing a UNIX socket that external
+programs can connect to. A simple line based protocol is used to communicate
+with the plugin:
+
+E-Mail type (e.g. "ham", "spam", "virus", ...) and size (bytes):
+
+  e:<type>:<size>
+
+If C<size> is less than or equal to zero, C<size> is ignored.
+
+Spam score:
+
+  s:<value>
+
+Successful spam checks (e.g. "BAYES_99", "SUBJECT_DRUG_GAP_C", ...):
+
+  c:<type1>[,<type2>,...]
+
+Each line is limited to 256 characters (including the newline character). 
+Longer lines will be ignored.
+
+=head2 exec
+
+The C<exec> plugin forks of an executable and reads back values that it writes
+to C<STDOUT>. The executable is forked kind of as L<init> does: It is forked
+once and not again until it exits. If it exited, it will be forked again after
+at most I<Interval> seconds. It is perfectly legal for the executable to run
+for a long time and continuously write values to C<STDOUT>.
+
+The forked executable is expected to print values to C<STDOUT>. The expected
+format is as follows:
+
+=over 4
+
+=item
+
+Each line beginning with a C<#> (hash mark) is ignored.
+
+=item
+
+Any other line must be of the form C<I<type>,I<type-instance>,I<value>>, where
+I<type> is either B<counter> or B<gauge>, I<type-instance> may not contain
+C<,> (comma), C</> (slash) and C<\0> (null byte) and I<value> is either an
+integer (if I<type> is B<counter>) or a floating-point number (if I<type> is
+B<gauge>).
+
+=back
+
+The values are always considered to be "fresh", i.E<nbsp>e. the time is set to
+"now".
+
+When collectd exits it sends a B<SIGTERM> to all still running
+child-processes upon which they have to quit.
+
 =head2 mysql
 
 Requires B<mysqlclient> to be installed. It connects to the database when
@@ -202,6 +276,20 @@ L<sensors.conf(5)> for details.
 The B<lm_sensors> homepage can be found at
 L<http://secure.netroedge.com/~lm78/>.
 
+=head2 mbmon
+
+The B<mbmon> module uses mbmon to retrieve temperature, voltage, etc.
+
+collectd connects to B<localhost> (127.0.0.1), port B<411/tcp>.
+The B<Host> and B<Port> options can be used to change these
+default values. See L<collectd.conf(5)> for details. C<mbmon> has to be
+running to work correctly. If C<mbmon> is not running timeouts may appear
+which may interfere with other statistics..
+
+C<mbmon> must be run with the -r option ("print TAG and Value format");
+Debian's /etc/init.d/mbmon script already does this, other people
+will need to ensure that this is the case.
+
 =head2 hddtemp
 
 To get values from B<hddtemp> collectd connects to B<localhost> (127.0.0.1),
@@ -324,10 +412,22 @@ The DS'es depend on the module creating the RRD files:
   DS:wcount:COUNTER:HEARTBEAT:0:U
   DS:wbytes:COUNTER:HEARTBEAT:0:U
 
+=item E-Mail count (F<email/email-I<E<lt>typeE<gt>>.rrd>)
+
+  DS:count:GAUGE:HEARTBEAT:0:U
+
+=item E-Mail size (F<email/email_size-I<E<lt>typeE<gt>>.rrd>)
+
+  DS:size:GAUGE:HEARTBEAT:0:U
+
 =item HDD Temperature (F<hddtemp-I<E<lt>majorE<gt>>-I<E<lt>minorE<gt>>.rrd>)
 
   DS:value:GAUGE:HEARTBEAT:U:U
 
+=item Irq (F<irq-I<E<lt>irqnumberE<gt>>.rrd>)
+
+  DS:value:COUNTER:HEARTBEAT:0:65535
+
 =item System load (F<load.rrd>)
 
   DS:shortterm:GAUGE:HEARTBEAT:0:100
@@ -419,15 +519,31 @@ The DS'es depend on the module creating the RRD files:
   DS:paging:GAUGE:HEARTBEAT:0:65535
   DS:blocked:GAUGE:HEARTBEAT:0:65535
 
-=item lm_sensors (F<sensors-I<E<lt>chipE<gt>>-I<E<lt>featureE<gt>>.rrd>)
+=item lm_sensors fanspeed sensor (F<sensors-I<E<lt>instE<gt>>.rrd> or F<lm_sensors-I<E<lt>chipE<gt>>/fanspeed-I<E<lt>instE<gt>>.rrd>)
+
+  DS:value:GAUGE:HEARTBEAT:U:U
+
+=item lm_sensors temperature sensor (F<sensors-I<E<lt>instE<gt>>.rrd> or F<lm_sensors-I<E<lt>chipE<gt>>/temperature-I<E<lt>instE<gt>>.rrd>)
 
   DS:value:GAUGE:HEARTBEAT:U:U
 
+=item lm_sensors voltage sensor (F<sensors-I<E<lt>instE<gt>>.rrd> or F<lm_sensors-I<E<lt>chipE<gt>>/voltage-I<E<lt>instE<gt>>.rrd>)
+
+  DS:voltage:GAUGE:HEARTBEAT:U:U
+
 =item Serial port traffic (F<serial-I<E<lt>numE<gt>>.rrd>)
 
   DS:incoming:COUNTER:HEARTBEAT:0:U
   DS:outgoing:COUNTER:HEARTBEAT:0:U
 
+=item Spam score (F<email/spam_score.rrd>)
+
+  DS:score:GAUGE:HEARTBEAT:0:U
+
+=item Spam checks (F<email/spam_check-I<E<lt>typeE<gt>>.rrd>)
+
+  DS:hits:GAUGE:HEARTBEAT:0:U
+
 =item Swap usage (F<swap.rrd>)
 
   DS:used:GAUGE:HEARTBEAT:0:1099511627776
@@ -506,6 +622,7 @@ The DS'es depend on the module creating the RRD files:
 =head1 SEE ALSO
 
 L<collectd.conf(5)>, L<rrdtool(1)>, L<sensors(1)>, L<hddtemp(8)>,
+L<mbmon(1)>,
 L<kstat(3KSTAT)>
 
 =head1 AUTHOR