collectd{,.conf}.pod: Extended and clarified documentation of the email plugin.
[collectd.git] / src / collectd.conf.pod
index d65c192..aa4799a 100644 (file)
@@ -8,8 +8,7 @@ collectd.conf - Configuration for the system statistics collection daemon B<coll
   DataDir /path/to/data/
   PIDFile /path/to/pidfile/collectd.pid
   LogFile /path/to/logfile/collectd.log
-  Server  123.123.123.123
-  Port    12345
+  Server  123.123.123.123 12345
 
   LoadPlugin cpu
   LoadPlugin load
@@ -36,7 +35,7 @@ ignored.
 
 =over 4
 
-=item B<Mode> (B<Local>|B<Client>|B<Server>)
+=item B<Mode> (B<Local>|B<Client>|B<Server>|B<Log>)
 
 Sets the operating mode. See the section B<MODES> in L<collectd(1)> for a
 description. This option determines which other options are allowed. Defaults
@@ -50,13 +49,14 @@ will be mostly useless. The names of the plugins are listed in L<collectd(1)>.
 =item B<PIDFile> I<File>
 
 Sets where to write the PID file to. This file is overwritten when it exists
-and deleted when the program ist stopped. Available in B<all modes>.
+and deleted when the program ist stopped. Some init-scripts might override this
+setting using the B<-P> commandline option. Available in B<all modes>.
 
 =item B<DataDir> I<Directory>
 
 Sets the data directory. This is the directory beneath all RRD-files are
 created. Possibly more subdirectories are created. This is also the working
-directory for the daemon. Available in B<all modes>, though the B<Server> mode
+directory for the daemon. Available in B<all modes>, though the B<Client> mode
 won't write to this directory.
 
 =item B<LogFile> I<File>
@@ -64,18 +64,38 @@ won't write to this directory.
 Sets the file to write debugging output to. This is only used if compiled with
 debugging enabled. It's ignored otherwise. Available in B<all modes>.
 
-=item B<Server> I<IP-address>
+=item B<Listen> I<Host> [I<Port>]
 
-The server to send data to. B<This is not yet implemented!> Maybe a better name
-for this was B<Receiver>, since I plan on detecting multicast groups
-automatically. On the other hand a extra MulticastGroup-option would be of
-interest for the server process. Anyhow, right now this is available for the
-B<Client> mode only.
+=item B<Server> I<Host> [I<Port>]
 
-=item B<Port> I<Port-number>
+In B<client mode> the B<Server> statement sets the server to send datagrams to.
+The statement may occur multiple times to send each datagram to multiple
+destinations.
 
-(UDP-)Port to send packages to or to bind to and wait for packages. This option
-is available in the B<Client> and B<Server> mode.
+In B<server mode> the B<Listen> statement sets the interfaces to bind to. When
+multiple statements are found the daemon will bind to multiple interfaces.
+
+The argument I<Host> may be a hostname, an IPv4 address or an IPv6 address. If
+the argument is a multicast address the daemon will join that multicast group.
+
+If no B<Listen> statement is found the server tries join both, the IPv6
+multicast group and the IPv4 multicast group. If no B<Server> statement is
+found the client will try to send data to the IPv6 multicast group first. If
+that failes the client will try the IPv4 multicast group.
+
+The default IPv6 multicast group is C<ff18::efc0:4a42>. The default IPv4
+multicast group is C<239.192.74.66>.
+
+The optional I<Port> argument sets the port to use. It can either be given
+using a numeric port number or a service name. If the argument is omited the
+default port B<25826> is assumed.
+
+=item B<TimeToLive> I<1-255>
+
+Set the time-to-live of sent packets. This applies to all, unicast and
+multicast, and IPv4 and IPv6 packets. The default is to not change this value.
+That means that multicast packets will be sent with a TTL of C<1> (one) on most
+operating systems.
 
 =back
 
@@ -84,6 +104,128 @@ is available in the B<Client> and B<Server> mode.
 Some Plugins may register own options. These options must be inclosed in a
 C<Plugin>-Section. Which options exist depends on the plugin used:
 
+=head2 Plugin C<apache>
+
+To configure the C<apache>-plugin you first need to configure the Apache
+webserver correctly. The Apache-plugin C<mod_status> needs to be loaded and
+working and the C<ExtendedStatus> directive needs to be B<enabled>. You can use
+the following snipped to base your Apache config upon:
+
+  ExtendedStatus on
+  <IfModule mod_status.c>
+    <Location /mod_status>
+      SetHandler server-status
+    </Location>
+  </IfModule>
+
+The following options are accepted by the C<apache>-plugin:
+
+=over 4
+
+=item B<URL> I<http://host/mod_status?auto>
+
+Sets the URL of the C<mod_status> output. This needs to be the output generated
+by C<ExtendedStatus on> and it needs to be the machine readable output
+generated by appending the C<?auto> argument.
+
+=item B<User> I<Username>
+
+Optional user name needed for authentication.
+
+=item B<Password> I<Password>
+
+Optional password needed for authentication.
+
+=item B<CACert> I<File>
+
+File that holds one or more SSL certificates. If you want to use HTTPS you will
+possibly need this option. What CA certificates come bundeled with C<libcurl>
+and are checked by default depends on the distribution you use.
+
+=back
+
+=head2 Plugin C<apcups>
+
+=over 4
+
+=item B<Host> I<Hostname>
+
+Hostname of the host running B<apcupsd>. Defaults to B<localhost>. Please note
+that IPv6 support has been disabled unless someone can confirm or decline that
+B<apcupsd> can handle it.
+
+=item B<Port> I<Port>
+
+TCP-Port to connect to. Defaults to B<3551>.
+
+=back
+
+=head2 Plugin C<df>
+
+=over 4
+
+=item B<Device> I<Device>
+
+Select partitions based on the devicename.
+
+=item B<MountPoint> I<Directory>
+
+Select partitions based on the mountpoint.
+
+=item B<FSType> I<FSType>
+
+Select partitions based on the filesystem type.
+
+=item B<IgnoreSelected> I<true>|I<false>
+
+Invert the selection: If set to true, all partitions B<except> the ones that
+match any one of the criteria are collected. By default only selected
+partitions are collected if a selection is made. If no selection is conifured
+at all, B<all> partitions are selected.
+
+=back
+
+=head2 Plugin C<dns>
+
+=over 4
+
+=item B<Interface> I<Interface>
+
+The dns plugin uses B<libpcap> to capture dns traffic and analyses it. This
+option sets the interface that should be used. If this option is not set, or
+set to "any", the plugin will try to get packets from B<all> interfaces. This
+may not work on certain platforms, such as MacE<nbsp>OSE<nbsp>X.
+
+=item B<IgnoreSource> I<IP-address>
+
+Ignore packets that originate from this address.
+
+=back
+
+=head2 Plugin C<email>
+
+=over 4
+
+=item B<SocketGroup> I<Group>
+
+If running as root change the group of the UNIX-socket after it has been 
+created. Defaults to B<collectd>.
+
+=item B<SocketPerms> I<Permissions>
+
+Change the file permissions of the UNIX-socket after it has been created. The
+permissions must be given as a numeric, octal value as you would pass to
+L<chmod(1)>. Defaults to B<0770>.
+
+=item B<MaxConns> I<Number>
+
+Sets the maximum number of connections that can be handled in parallel. Since
+this many threads will be started immediately setting this to a very high
+value will waste valuable resources. Defaults to B<5> and will be forced to be
+at most B<16384> to prevent typos and dumb mistakes.
+
+=back
+
 =head2 Plugin C<hddtemp>
 
 =over 4
@@ -98,6 +240,20 @@ TCP-Port to connect to. Defaults to B<7634>.
 
 =back
 
+=head2 Plugin C<ntpd>
+
+=over 4
+
+=item B<Host> I<Hostname>
+
+Hostname of the host running B<ntpd>. Defaults to B<localhost>.
+
+=item B<Port> I<Port>
+
+UDP-Port to connect to. Defaults to B<123>.
+
+=back
+
 =head2 Plugin C<mysql>
 
 =over 4
@@ -130,6 +286,93 @@ option for what this plugin does.
 Host to ping periodically. This option may be repeated several times to ping
 multiple hosts.
 
+=item B<TTL> I<0-255>
+
+Sets the Time-To-Live of generated ICMP packets.
+
+=back
+
+=head2 Plugin C<sensors>
+
+=over 4
+
+=item B<ExtendedSensorNaming> I<true>|I<false>
+
+If set to I<true> this option switches on the extended sensors and RRD-files
+naming. This option exists to preserve backwards compatibility. It is
+recommended that you set this option to I<true>. The default is I<false> to
+maintain compatibility only.
+
+Sensors get names like I<chip-bus-address/type-feature> (e.g.
+I<it8712-isa-0290/voltage-in1>) and RRD files are therefore stored in a
+standalone directory inside the B<DataDir> directory and get names like
+I<lm_sensors-chip-bus-address/type-feature.rrd> (e.g.
+I<lm_sensors-it8712-isa-0290/voltage-in1.rrd>).
+
+The B<ExtendedSensorNaming> option breaks the compatibility with previous
+sensors and RRD files naming and the place where RRDs are stored. If you turn
+it on, the plugin will create new RRD files in a standalone directory inside
+the B<DataDir> directory and without previous history. You can rename ``old''
+RRD-files to preserve already collected statistics, because the file layout
+hasn't changed. If you have two chips of the same type, you need to use
+B<ExtendedSensorNaming> in order to collect information from both chips.
+
+If not set or set to I<false>, the extended naming is not active. Sensors get
+names like I<chip-feature> (e.g. I<it8712-in1>) and RRD files are stored in the
+main B<DataDir> directory and get names like I<sensors-chip-feature.rrd> (e.g.
+I<sensors-it8712-in1.rrd>).  You simply continue using the plugin the old way
+and additionally also getting data for newly added sensors in this mode.
+
+=item B<Sensor> I<chip-feature> or B<Sensor> I<chip-bus-address/type-feature>
+
+Both option modes select the name of the sensor which you want to collect.
+The naming scheme is dependent on the state of the B<ExtendedSensorNaming>
+option (see previous option). Both option modes can also deselect the
+sensor according to the B<IgnoreSelected> option (see below).
+
+For example the option "B<Sensor> I<it8712-in1>" will cause the collectd
+to gather data for the voltage sensor I<in1> of the I<it8712> chip in case
+of the B<ExtendedSensorNaming> option is set to I<false>.
+
+And likewise the option "B<Sensor> I<it8712-isa-0290/voltage-in1>" will
+cause the collectd to gather data for the voltage sensor I<in1> of the I<it8712>
+on the isa bus at the address 0290 in case of the B<ExtendedSensorNaming>
+option set to I<true>.
+
+=item B<IgnoreSelected> I<true>|I<false>
+
+If no configuration if given, the B<sensors>-plugin will collect data from
+all sensors. This may not be practical, especially for uninteresting sensors.
+Thus, you can use the B<Sensor>-option to pick the sensors you're
+interested in. Sometimes, however, it's easier/prefered to collect all
+sensors I<except> a few ones. This option enables you to
+do that: By setting B<IgnoreSelected> to I<true> the effect of
+B<Sensor> is inversed: All selected sensors are ignored and all
+other sensors are collected.
+
+back
+
+=back
+
+=head2 Plugin C<traffic>
+
+=over 4
+
+=item B<Interface> I<Interface>
+
+Select this interface. By default these interfaces will then be collected. For a more detailed description see B<IgnoreSelected> below.
+
+=item B<IgnoreSelected> I<true>|I<false>
+
+If no configuration if given, the B<traffic>-plugin will collect data from
+all interfaces. This may not be practical, especially for loopback- and
+similar interfaces. Thus, you can use the B<Interface>-option to pick the
+interfaces you're interested in. Sometimes, however, it's easier/prefered
+to collect all interfaces I<except> a few ones. This option enables you to
+do that: By setting B<IgnoreSelected> to I<true> the effect of
+B<Interface> is inversed: All selected interfaces are ignored and all
+other interfaces are collected.
+
 =back
 
 =head1 SEE ALSO