diff --git a/src/collectd.conf.pod b/src/collectd.conf.pod
index a65d432bd2ed0e20721ee51fb09763f27ce43f03..542e45c72cae8ea64435c81a0c0f6803f0c65030 100644 (file)
--- a/src/collectd.conf.pod
+++ b/src/collectd.conf.pod
# ExchangeType "fanout"
# RoutingKey "collectd"
# Persistent false
+ # ConnectionRetryDelay 0
# Format "command"
# StoreRates false
# GraphitePrefix "collectd."
# QueueDurable false
# QueueAutoDelete true
# RoutingKey "collectd.#"
+ # ConnectionRetryDelay 0
</Subscribe>
</Plugin>
default), the I<transient> delivery mode will be used, i.e. messages may be
lost due to high load, overflowing queues or similar issues.
+=item B<ConnectionRetryDelay> I<Delay>
+
+When the connection to the AMQP broker is lost, defines the time in seconds to
+wait before attempting to reconnect. Defaults to 0, which implies collectd will
+attempt to reconnect at each read interval (in Subscribe mode) or each time
+values are ready for submission (in Publish mode).
+
=item B<Format> B<Command>|B<JSON>|B<Graphite> (Publish only)
Selects the format in which messages are sent to the broker. If set to
@@ -766,6 +775,12 @@ File that holds one or more SSL certificates. If you want to use HTTPS you will
possibly need this option. What CA certificates come bundled with C<libcurl>
and are checked by default depends on the distribution you use.
+=item B<Timeout> I<Milliseconds>
+
+The B<Timeout> option sets the overall timeout for HTTP requests to B<URL>, in
+milliseconds. By default, the configured B<Interval> is used to set the
+timeout.
+
=back
=head2 Plugin C<apcups>
@@ -854,6 +869,12 @@ File that holds one or more SSL certificates. If you want to use HTTPS you will
possibly need this option. What CA certificates come bundled with C<libcurl>
and are checked by default depends on the distribution you use.
+=item B<Timeout> I<Milliseconds>
+
+The B<Timeout> option sets the overall timeout for HTTP requests to B<URL>, in
+milliseconds. By default, the configured B<Interval> is used to set the
+timeout.
+
=back
=head2 Plugin C<barometer>
Default: Enabled.
+=item B<Timeout> I<Milliseconds>
+
+The B<Timeout> option sets the overall timeout for HTTP requests to B<URL>, in
+milliseconds. By default, the configured B<Interval> is used to set the
+timeout.
+
=item B<View> I<Name>
Collect statistics about a specific I<"view">. BIND can behave different,
=back
+=head2 Plugin C<ceph>
+
+The ceph plugin collects values from JSON data to be parsed by B<libyajl>
+(L<https://lloyd.github.io/yajl/>) retrieved from ceph daemon admin sockets.
+
+A separate B<Daemon> block must be configured for each ceph daemon to be
+monitored. The following example will read daemon statistics from four
+separate ceph daemons running on the same device (two OSDs, one MON, one MDS) :
+
+ <Plugin ceph>
+ LongRunAvgLatency false
+ ConvertSpecialMetricTypes true
+ <Daemon "osd.0">
+ SocketPath "/var/run/ceph/ceph-osd.0.asok"
+ </Daemon>
+ <Daemon "osd.1">
+ SocketPath "/var/run/ceph/ceph-osd.1.asok"
+ </Daemon>
+ <Daemon "mon.a">
+ SocketPath "/var/run/ceph/ceph-mon.ceph1.asok"
+ </Daemon>
+ <Daemon "mds.a">
+ SocketPath "/var/run/ceph/ceph-mds.ceph1.asok"
+ </Daemon>
+ </Plugin>
+
+The ceph plugin accepts the following configuration options:
+
+=over 4
+
+=item B<LongRunAvgLatency> B<true>|B<false>
+
+If enabled, latency values(sum,count pairs) are calculated as the long run
+average - average since the ceph daemon was started = (sum / count).
+When disabled, latency values are calculated as the average since the last
+collection = (sum_now - sum_last) / (count_now - count_last).
+
+Default: Disabled
+
+=item B<ConvertSpecialMetricTypes> B<true>|B<false>
+
+If enabled, special metrics (metrics that differ in type from similar counters)
+are converted to the type of those similar counters. This currently only
+applies to filestore.journal_wr_bytes which is a counter for OSD daemons. The
+ceph schema reports this metric type as a sum,count pair while similar counters
+are treated as derive types. When converted, the sum is used as the counter
+value and is treated as a derive type.
+When disabled, all metrics are treated as the types received from the ceph schema.
+
+Default: Enabled
+
+=back
+
+Each B<Daemon> block must have a string argument for the plugin instance name.
+A B<SocketPath> is also required for each B<Daemon> block:
+
+=over 4
+
+=item B<Daemon> I<DaemonName>
+
+Name to be used as the instance name for this daemon.
+
+=item B<SocketPath> I<SocketPath>
+
+Specifies the path to the UNIX admin socket of the ceph daemon.
+
+=back
+
=head2 Plugin C<cgroups>
This plugin collects the CPU user/system time for each I<cgroup> by reading the
Measure response time for the request. If this setting is enabled, B<Match>
blocks (see below) are optional. Disabled by default.
+Beware that requests will get aborted if they take too long to complete. Adjust
+B<Timeout> accordingly if you expect B<MeasureResponseTime> to report such slow
+requests.
+
=item B<MeasureResponseCode> B<true>|B<false>
Measure response code for the request. If this setting is enabled, B<Match>
B<MeasureResponseCode> options are set to B<true>, B<Match> blocks are
optional.
+=item B<Timeout> I<Milliseconds>
+
+The B<Timeout> option sets the overall timeout for HTTP requests to B<URL>, in
+milliseconds. By default, the configured B<Interval> is used to set the
+timeout. Prior to version 5.5.0, there was no timeout and requests could hang
+indefinitely. This legacy behaviour can be achieved by setting the value of
+B<Timeout> to 0.
+
+If B<Timeout> is 0 or bigger than the B<Interval>, keep in mind that each slow
+network connection will stall one read thread. Adjust the B<ReadThreads> global
+setting accordingly to prevent this from blocking other plugins.
+
=back
=head2 Plugin C<curl_json>
=item B<Post> I<Body>
+=item B<Timeout> I<Milliseconds>
+
These options behave exactly equivalent to the appropriate options of the
I<cURL> plugin. Please see there for a detailed description.
=item B<Post> I<Body>
+=item B<Timeout> I<Milliseconds>
+
These options behave exactly equivalent to the appropriate options of the
I<cURL plugin>. Please see there for a detailed description.
=head2 Plugin C<modbus>
-The B<modbus plugin> connects to a Modbus "slave" via Modbus/TCP and reads
-register values. It supports reading single registers (unsigned 16E<nbsp>bit
+The B<modbus plugin> connects to a Modbus "slave" via Modbus/TCP or Modbus/RTU and
+reads register values. It supports reading single registers (unsigned 16E<nbsp>bit
values), large integer values (unsigned 32E<nbsp>bit values) and floating point
values (two registers interpreted as IEEE floats in big endian notation).
<Data "voltage-input-1">
RegisterBase 0
RegisterType float
+ RegisterCmd ReadHolding
Type voltage
Instance "input-1"
</Data>
<Data "voltage-input-2">
RegisterBase 2
RegisterType float
+ RegisterCmd ReadHolding
Type voltage
Instance "input-2"
</Data>
+ <Data "supply-temperature-1">
+ RegisterBase 0
+ RegisterType Int16
+ RegisterCmd ReadHolding
+ Type temperature
+ Instance "temp-1"
+ </Data>
+
<Host "modbus.example.com">
Address "192.168.0.42"
Port "502"
</Slave>
</Host>
+ <Host "localhost">
+ Device "/dev/ttyUSB0"
+ Baudrate 38400
+ Interval 20
+
+ <Slave 1>
+ Instance "temperature"
+ Collect "supply-temperature-1"
+ </Slave>
+ </Host>
+
=over 4
=item E<lt>B<Data> I<Name>E<gt> blocks
@@ -2936,6 +3072,11 @@ Specifies what kind of data is returned by the device. If the type is B<Int32>,
B<Uint32> or B<Float>, two 16E<nbsp>bit registers will be read and the data is
combined into one value. Defaults to B<Uint16>.
+=item B<RegisterCmd> B<ReadHolding>|B<ReadInput>
+
+Specifies register type to be collected from device. Works only with libmodbus
+2.9.2 or higher. Defaults to B<ReadHolding>.
+
=item B<Type> I<Type>
Specifies the "type" (data set) to use when dispatching the value to
=item B<Address> I<Hostname>
-Specifies the node name (the actual network address) used to connect to the
-host. This may be an IP address or a hostname. Please note that the used
-I<libmodbus> library only supports IPv4 at the moment.
+For Modbus/TCP, specifies the node name (the actual network address) used to
+connect to the host. This may be an IP address or a hostname. Please note that
+the used I<libmodbus> library only supports IPv4 at the moment.
=item B<Port> I<Service>
-Specifies the port used to connect to the host. The port can either be given as
-a number or as a service name. Please note that the I<Service> argument must be
-a string, even if ports are given in their numerical form. Defaults to "502".
+for Modbus/TCP, specifies the port used to connect to the host. The port can
+either be given as a number or as a service name. Please note that the
+I<Service> argument must be a string, even if ports are given in their numerical
+form. Defaults to "502".
+
+=item B<Device> I<Devicenode>
+
+For Modbus/RTU, specifies the path to the serial device being used.
+
+=item B<Baudrate> I<Baudrate>
+
+For Modbus/RTU, specifies the baud rate of the serial device.
+Note, connections currently support only 8/N/1.
=item B<Interval> I<Interval>
=item E<lt>B<Slave> I<ID>E<gt>
-Over each TCP connection, multiple Modbus devices may be reached. The slave ID
+Over each connection, multiple Modbus devices may be reached. The slave ID
is used to specify which device should be addressed. For each device you want
to query, one B<Slave> block must be given.
Enable the collection of master / slave statistics in a replication setup. In
order to be able to get access to these statistics, the user needs special
-privileges. See the B<User> documentation above.
+privileges. See the B<User> documentation above. Defaults to B<false>.
=item B<SlaveNotifications> I<true|false>
If enabled, the plugin sends a notification if the replication slave I/O and /
-or SQL threads are not running.
+or SQL threads are not running. Defaults to B<false>.
=item B<ConnectTimeout> I<Seconds>
@@ -3969,6 +4120,12 @@ File that holds one or more SSL certificates. If you want to use HTTPS you will
possibly need this option. What CA certificates come bundled with C<libcurl>
and are checked by default depends on the distribution you use.
+=item B<Timeout> I<Milliseconds>
+
+The B<Timeout> option sets the overall timeout for HTTP requests to B<URL>, in
+milliseconds. By default, the configured B<Interval> is used to set the
+timeout.
+
=back
=head2 Plugin C<notify_desktop>
@@ -5498,6 +5655,14 @@ Set the "XFiles Factor". The default is 0.1. If unsure, don't set this option.
I<Factor> must be in the range C<[0.0-1.0)>, i.e. between zero (inclusive) and
one (exclusive).
+=item B<CollectStatistics> B<false>|B<true>
+
+When set to B<true>, various statistics about the I<rrdcached> daemon will be
+collected, with "rrdcached" as the I<plugin name>. Defaults to B<false>.
+
+Statistics are read via I<rrdcached>s socket using the STATS command.
+See L<rrdcached(1)> for details.
+
=back
=head2 Plugin C<rrdtool>
The matched number is a counter. Simply I<sets> the internal counter to this
value. Variants exist for C<COUNTER>, C<DERIVE>, and C<ABSOLUTE> data sources.
+=item B<GaugeAdd>
+
=item B<CounterAdd>
=item B<DeriveAdd>
matched number may be negative, which will effectively subtract from the
internal counter.
+=item B<GaugeInc>
+
=item B<CounterInc>
=item B<DeriveInc>
This output plugin submits values to an HTTP server using POST requests and
encoding metrics with JSON or using the C<PUTVAL> command described in
-L<collectd-unixsock(5)>. Each destination you want to post data to needs to
-have one B<URL> block, within which the destination can be configured further,
-for example by specifying authentication data.
+L<collectd-unixsock(5)>.
Synopsis:
<Plugin "write_http">
- <URL "http://example.com/post-collectd">
+ <Node "example">
+ URL "http://example.com/post-collectd"
User "collectd"
Password "weCh3ik0"
Format JSON
- </URL>
+ </Node>
</Plugin>
-B<URL> blocks need one string argument which is used as the URL to which data
-is posted. The following options are understood within B<URL> blocks.
+The plugin can send values to multiple HTTP servers by specifying one
+E<lt>B<Node>E<nbsp>I<Name>E<gt> block for each server. Within each B<Node>
+block, the following options are available:
=over 4
+=item B<URL> I<URL>
+
+URL to which the values are submitted to. Mandatory.
+
=item B<User> I<Username>
Optional user name needed for authentication.
=item B<Protocol> B<UDP>|B<TCP>
Specify the protocol to use when communicating with I<Riemann>. Defaults to
-B<UDP>.
+B<TCP>.
=item B<Batch> B<true>|B<false>
Notifications are not batched and sent as soon as possible.
-Defaults to false
+When enabled, it can occur that events get processed by the Riemann server
+close to or after their expiration time. Tune the B<TTLFactor> and
+B<BatchMaxSize> settings according to the amount of values collected, if this
+is an issue.
+
+Defaults to true
=item B<BatchMaxSize> I<size>
=back
+=head2 Plugin C<zookeeper>
+
+The I<zookeeper plugin> will collect statistics from a I<Zookeeper> server
+using the mntr command. It requires Zookeeper 3.4.0+ and access to the
+client port.
+
+B<Synopsis:>
+
+ <Plugin "zookeeper">
+ Host "127.0.0.1"
+ Port "2181"
+ </Plugin>
+
+=over 4
+
+=item B<Host> I<Address>
+
+Hostname or address to connect to. Defaults to C<localhost>.
+
+=item B<Port> I<Service>
+
+Service name or port number to connect to. Defaults to C<2181>.
+
+=back
+
=head1 THRESHOLD CONFIGURATION
Starting with version C<4.3.0> collectd has support for B<monitoring>. By that