exec plugin: Updated the documentation and sample configfile.
authorFlorian Forster <octo@leeloo.lan.home.verplant.org>
Fri, 30 Mar 2007 20:03:52 +0000 (22:03 +0200)
committerFlorian Forster <octo@leeloo.lan.home.verplant.org>
Fri, 30 Mar 2007 20:03:52 +0000 (22:03 +0200)
src/collectd.conf.in
src/collectd.conf.pod
src/collectd.pod

index 5221c56..02a6eae 100644 (file)
 #      MaxConns 5
 #</Plugin>
 
+#<Plugin exec>
+#      Exec user "/path/to/exec"
+#</Plugin>
+
 #<Plugin hddtemp>
 #      Host "127.0.0.1"
 #      Port 7634
index 6fc167b..2ddc5cb 100644 (file)
@@ -210,6 +210,20 @@ at most B<16384> to prevent typos and dumb mistakes.
 
 =back
 
+=head2 Plugin C<exec>
+
+Please make sure to read L<collectd/"SPECIAL PLUGINS"> before using this
+plugin. It containes valueable information on when the executable is executed
+and the output that is expected from it.
+
+=over 4
+
+=item B<Exec> I<User> I<Executable>
+
+Execute the executable I<Executable> as user I<User>.
+
+=back
+
 =head2 Plugin C<hddtemp>
 
 =over 4
index 96c3fcd..bc65f57 100644 (file)
@@ -219,6 +219,39 @@ Successful spam checks (e.g. "BAYES_99", "SUBJECT_DRUG_GAP_C", ...):
 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