X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fcollectd.conf.pod;h=bee566cd1a991fa9c7f1fc51ec6834c4185a14db;hb=b4c8f3f762d666742c774ab3b45815e5a416e5da;hp=4541870b4ad530e28de01000b8713876cc2d9f91;hpb=d6ef3dad2f3dc9d7c35a9bbb563e52c3f0c1ec7c;p=collectd.git diff --git a/src/collectd.conf.pod b/src/collectd.conf.pod index 4541870b..bee566cd 100644 --- a/src/collectd.conf.pod +++ b/src/collectd.conf.pod @@ -25,22 +25,32 @@ controls which plugins to load. These plugins ultimately define collectd's behavior. The syntax of this config file is similar to the config file of the famous -B. Each line contains either a key-value-pair or a -section-start or -end. Empty lines and everything after the hash-symbol `#' is -ignored. Values are either string, enclosed in double-quotes, -(floating-point-)numbers or a boolean expression, i.Ee. either B or -B. String containing of only alphanumeric characters and underscores do -not need to be quoted. Lines may be wrapped by using `\' as the last character -before the newline. This allows long lines to be split into multiple lines. -Quoted strings may be wrapped as well. However, those are treated special in -that whitespace at the beginning of the following lines will be ignored, which -allows for nicely indenting the wrapped lines. - -The configuration is read and processed in order, i.Ee. from top to -bottom. So the plugins are loaded in the order listed in this config file. It -is a good idea to load any logging plugins first in order to catch messages -from plugins during configuration. Also, the C option B occur -B the CPlugin ...E> block. +I webserver. Each line contains either an option (a key and a list of +one or more values) or a section-start or -end. Empty lines and everything +after a non-quoted hash-symbol (C<#>) is ignored. I are unquoted +strings, consisting only of alphanumeric characters and the underscore (C<_>) +character. Keys are handled case insensitive by I itself and all +plugins included with it. I can either be an I, a +I (enclosed in double-quotes) a I or a I +expression. I consist of only alphanumeric characters and +underscores (C<_>) and do not need to be quoted. I are +enclosed in double quotes (C<">). You can use the backslash character (C<\>) +to include double quotes as part of the string. I can be specified in +decimal and floating point format (using a dot C<.> as decimal separator), +hexadecimal when using the C<0x> prefix and octal with a leading zero (C<0>). +I values are either B or B. + +Lines may be wrapped by using C<\> as the last character before the newline. +This allows long lines to be split into multiple lines. Quoted strings may be +wrapped as well. However, those are treated special in that whitespace at the +beginning of the following lines will be ignored, which allows for nicely +indenting the wrapped lines. + +The configuration is read and processed in order, i.e. from top to bottom. So +the plugins are loaded in the order listed in this config file. It is a good +idea to load any logging plugins first in order to catch messages from plugins +during configuration. Also, the C option B occur B +the appropriate CPlugin ...E> block. =head1 GLOBAL OPTIONS @@ -57,6 +67,37 @@ directory for the daemon. Loads the plugin I. There must be at least one such line or B will be mostly useless. +Starting with collectd 4.9, this may also be a block in which further options +affecting the behavior of B may be specified. The following +options are allowed inside a B block: + + + Globals true + + +=over 4 + +=item B B + +If enabled, collectd will export all global symbols of the plugin (and of all +libraries loaded as dependencies of the plugin) and, thus, makes those symbols +available for resolving unresolved symbols in subsequently loaded plugins if +that is supported by your system. + +This is useful (or possibly even required), e.g., when loading a plugin that +embeds some scripting language into the daemon (e.g. the I and +I). Scripting languages usually provide means to load +extensions written in C. Those extensions require symbols provided by the +interpreter, which is loaded as a dependency of the respective collectd plugin. +See the documentation of those plugins (e.g., L or +L) for details. + +By default, this is disabled. As a special exception, if the plugin name is +either C or C, the default is changed to enabled in order to keep +the average user from ever having to deal with this low level linking stuff. + +=back + =item B I If I points to a file, includes that file. If I points to a @@ -102,6 +143,10 @@ Configures the interval in which to query the read plugins. Obviously smaller values lead to a higher system load produced by collectd, while higher values lead to more coarse statistics. +B You should set this once and then never touch it again. If you do, +I or know some serious RRDtool +magic! (Assuming you're using the I or I plugin.) + =item B I Consider a value list "missing" when no update has been read or received for @@ -110,7 +155,7 @@ missing when no update has been received for twice the update interval. Since this setting uses iterations, the maximum allowed time without update depends on the I information contained in each value list. This is used in the I configuration to dispatch notifications about missing values, -see L<"THRESHOLD CONFIGURATION"> below. +see L for details. =item B I @@ -154,6 +199,143 @@ A list of all plugins and a short summary for each plugin can be found in the F file shipped with the sourcecode and hopefully binary packets as well. +=head2 Plugin C + +The I can be used to communicate with other instances of +I or third party applications using an AMQP message broker. Values +are sent to or received from the broker, which handles routing, queueing and +possibly filtering or messages. + + + # Send values to an AMQP broker + + Host "localhost" + Port "5672" + VHost "/" + User "guest" + Password "guest" + Exchange "amq.fanout" + # ExchangeType "fanout" + # RoutingKey "collectd" + # Persistent false + # Format "command" + # StoreRates false + + + # Receive values from an AMQP broker + + Host "localhost" + Port "5672" + VHost "/" + User "guest" + Password "guest" + Exchange "amq.fanout" + # ExchangeType "fanout" + # Queue "queue_name" + # RoutingKey "collectd.#" + + + +The plugin's configuration consists of a number of I and I +blocks, which configure sending and receiving of values respectively. The two +blocks are very similar, so unless otherwise noted, an option can be used in +either block. The name given in the blocks starting tag is only used for +reporting messages, but may be used to support I of certain +I blocks in the future. + +=over 4 + +=item B I + +Hostname or IP-address of the AMQP broker. Defaults to the default behavior of +the underlying communications library, I, which is "localhost". + +=item B I + +Service name or port number on which the AMQP broker accepts connections. This +argument must be a string, even if the numeric form is used. Defaults to +"5672". + +=item B I + +Name of the I on the AMQP broker to use. Defaults to "/". + +=item B I + +=item B I + +Credentials used to authenticate to the AMQP broker. By default "guest"/"guest" +is used. + +=item B I + +In I blocks, this option specifies the I to send values to. +By default, "amq.fanout" will be used. + +In I blocks this option is optional. If given, a I between +the given exchange and the I is created, using the I if +configured. See the B and B options below. + +=item B I + +If given, the plugin will try to create the configured I with this +I after connecting. When in a I block, the I will then +be bound to this exchange. + +=item B I (Subscribe only) + +Configures the I name to subscribe to. If no queue name was configures +explicitly, a unique queue name will be created by the broker. + +=item B I + +In I blocks, this configures the routing key to set on all outgoing +messages. If not given, the routing key will be computed from the I +of the value. The host, plugin, type and the two instances are concatenated +together using dots as the separator and all containing dots replaced with +slashes. For example "collectd.host/example/com.cpu.0.cpu.user". This makes it +possible to receive only specific values using a "topic" exchange. + +In I blocks, configures the I used when creating a +I between an I and the I. The usual wildcards can be +used to filter messages when using a "topic" exchange. If you're only +interested in CPU statistics, you could use the routing key "collectd.*.cpu.#" +for example. + +=item B B|B (Publish only) + +Selects the I to use. If set to B, the I +mode will be used, i.e. delivery is guaranteed. If set to B (the +default), the I delivery mode will be used, i.e. messages may be +lost due to high load, overflowing queues or similar issues. + +=item B B|B (Publish only) + +Selects the format in which messages are sent to the broker. If set to +B (the default), values are sent as C commands which are +identical to the syntax used by the I and I. In this +case, the C header field will be set to C. + +If set to B, the values are encoded in the I, +an easy and straight forward exchange format. The C header field +will be set to C. + +A subscribing client I use the C header field to +determine how to decode the values. Currently, the I itself can +only decode the B format. + +=item B B|B (Publish only) + +Determines whether or not C, C and C data sources +are converted to a I (i.e. a C value). If set to B (the +default), no conversion is performed. Otherwise the conversion is performed +using the internal value cache. + +Please note that currently this option is only used if the B option has +been set to B. + +=back + =head2 Plugin C To configure the C-plugin you first need to configure the Apache @@ -172,7 +354,25 @@ Since its C module is very similar to Apache's, B is also supported. It introduces a new field, called C, to count the number of currently connected clients. This field is also supported. -The following options are accepted by the C-plugin: +The configuration of the I plugin consists of one or more +CInstanceE/E> blocks. Each block requires one string argument +as the instance name. For example: + + + + URL "http://www1.example.com/mod_status?auto" + + + URL "http://www2.example.com/mod_status?auto" + + + +The instance name will be used as the I. To emulate the old +(versionE4) behavior, you can use an empty string (""). In order for the +plugin to work correctly, each instance name must be unique. This is not +enforced by the plugin and it is your responsibility to ensure it. + +The following options are accepted within each I block: =over 4 @@ -180,7 +380,7 @@ The following options are accepted by the C-plugin: Sets the URL of the C output. This needs to be the output generated by C and it needs to be the machine readable output -generated by appending the C argument. +generated by appending the C argument. This option is I. =item B I @@ -549,22 +749,6 @@ runtime statistics module of CouchDB -Another CouchDB example: -The following example will collect the status values from each database: - - - Instance "dbs" - - Type "gauge" - - - Type "counter" - - - Type "bytes" - - - In the B block, there may be one or more B blocks, each defining a URL to be fetched via HTTP (using libcurl) and one or more B blocks. The B string argument must be in a path format, which is used to collect a @@ -649,7 +833,7 @@ The B uses B (L) and B In the B block, there may be one or more B blocks, each defining a -URL to be fetched via HTTP (using libcurl). Within each B block there are +URL to be fetched using libcurl. Within each B block there are options which specify the connection parameters, for example authentication information, and one or more B blocks. @@ -1568,8 +1752,8 @@ debugging support. Sets the file to write log messages to. The special strings B and B can be used to write to the standard output and standard error -channels, respectively. This, of course, only makes much sense when collectd is -running in foreground- or non-daemon-mode. +channels, respectively. This, of course, only makes much sense when I +is running in foreground- or non-daemon-mode. =item B B|B @@ -1586,6 +1770,33 @@ B: There is no need to notify the daemon after moving or removing the log file (e.Eg. when rotating the logs). The plugin reopens the file for each line it writes. +=head2 Plugin C + +The I reads CPU statistics of I, a +virtualization technique for IBM POWER processors. It takes into account CPU +time stolen from or donated to a partition, in addition to the usual user, +system, I/O statistics. + +The following configuration options are available: + +=over 4 + +=item B B|B + +When enabled, statistics about the processor pool are read, too. The partition +needs to have pool authority in order to be able to acquire this information. +Defaults to false. + +=item B B|B + +If enabled, the serial of the physical machine the partition is currently +running on is reported as I and the logical hostname of the machine +is reported in the I. Otherwise, the logical hostname will be +used (just like other plugins) and the I will be empty. +Defaults to false. + +=back + =head2 Plugin C The C uses mbmon to retrieve temperature, voltage, etc. @@ -1862,8 +2073,10 @@ Hostname of the database server. Defaults to B. =item B I Username to use when connecting to the database. The user does not have to be -granted any privileges (which is synonym to granting the C privilege). -Any existing MySQL user will do. +granted any privileges (which is synonym to granting the C privilege), +unless you want to collectd replication statistics (see B and +B below). In this case, the user needs the C +(or C) privileges. Else, any existing MySQL user will do. =item B I @@ -1895,7 +2108,9 @@ C function for details. =item B I -Enable the collection of master / slave statistics in a replication setup. +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 documentation above. =item B I @@ -2449,10 +2664,18 @@ The default IPv6 multicast group is C. The default IPv4 multicast group is C<239.192.74.66>. The default I port is B<25826>. Both, B and B can be used as single option or as block. When -used as block, given options are valid for this socket only. For example: +used as block, given options are valid for this socket only. The following +example will export the metrics twice: Once to an "internal" server (without +encryption and signing) and one to an external server (with cryptographic +signature): + # Export to an internal server + # (demonstrates usage without additional options) Server "collectd.internal.tld" + + # Export to an external server + # (demonstrates usage with signature options) SecurityLevel "sign" Username "myhostname" @@ -2581,7 +2804,18 @@ operating systems. =item B I<1024-65535> Set the maximum size for datagrams received over the network. Packets larger -than this will be truncated. +than this will be truncated. Defaults to 1452Ebytes, which is the maximum +payload size that can be transmitted in one Ethernet frame using IPv6E/ +UDP. + +On the server side, this limit should be set to the largest value used on +I client. Likewise, the value on the client must not be larger than the +value on the server, or data will be lost. + +B Versions prior to I4.8> used a fixed sized +buffer of 1024Ebytes. Versions I<4.8>, I<4.9> and I<4.10> used a default +value of 1024Ebytes to avoid problems when sending data to an older +server. =item B I @@ -2653,7 +2887,8 @@ and are checked by default depends on the distribution you use. This plugin sends a desktop notification to a notification daemon, as defined in the Desktop Notification Specification. To actually display the notifications, B is required and B has to be -able to access the X server. +able to access the X server (i.Ee., the C and C +environment variables have to be set correctly) and the D-Bus message bus. The Desktop Notification Specification can be found at L. @@ -3225,11 +3460,6 @@ allowed as long as a single non-empty command has been specified only. The returned lines will be handled separately one after another. -=item B I - -This is a deprecated synonym for B. It will be removed in version 5 -of collectd. - =item B I|I|I|I Specify the parameters which should be passed to the SQL query. The parameters @@ -3305,21 +3535,6 @@ This option is required inside a B block and may be specified multiple times. If multiple B options are specified, the columns are read in the given order. -=item B I [I] - -This is a deprecated alternative to a B block. It will be removed in -version 5 of collectd. It is equivalent to the following B block: - - - Type I - InstancePrefix I - ValuesFrom I - - -The order of the B options defines which columns of the query result -should be used. The first option specifies the data found in the first column, -the second option that of the second column, and so on. - =item B I =item B I @@ -3334,13 +3549,6 @@ The I has to be specified as the concatenation of the major, minor and patch-level versions, each represented as two-decimal-digit numbers. For example, version 8.2.3 will become 80203. -=item B I - -=item B I - -These are deprecated synonyms for B and B -respectively. They will be removed in version 5 of collectd. - =back The following predefined queries are available (the definitions can be found @@ -3753,43 +3961,46 @@ Defaults to B. =head2 Plugin C -The C plugin connect to a list of redis servers and gather -information about the server state. The C plugin support multiserver -configuration, each server configuration block is called node and identify -one redis instance (host and port). Here is a configuration example code: +The I connects to one or more Redis servers and gathers +information about each server's state. For each server there is a I block +which configures the connection parameters for this node. - + Host "localhost" Port "6379" Timeout 2000 +The information shown in the synopsis above is the I +which is used by the plugin if no configuration is present. + =over 4 =item B I -The B block identify a new redis node, that is a new redis instance -running in an specified host and port, the name for node is a canonical -identifier which is used as plugin instance, it's limited to 64 characters -length. +The B block identifies a new Redis node, that is a new Redis instance +running in an specified host and port. The name for node is a canonical +identifier which is used as I. It is limited to +64Echaracters in length. =item B I -The B option is the hostname or IP address (setting as string) where -redis instance is running on. +The B option is the hostname or IP-address where the Redis instance is +running on. =item B I -The B option is the TCP port where redis instance in IP address or -hostname setted in B option is running. +The B option is the TCP port on which the Redis instance accepts +connections. Either a service name of a port number may be given. Please note +that numerical port numbers must be given as a string, too. =item B I -The B option set the socket timeout for node response. Since the -redis read function is blocking, you may keep this value as low as possible. -Keep in mind that the sum of all Timeout values for all Nodes might be lower +The B option set the socket timeout for node response. Since the Redis +read function is blocking, you should keep this value as low as possible. Keep +in mind that the sum of all B values for all B should be lower than B defined globally. =back @@ -3957,7 +4168,7 @@ because all values were added to the internal cache at roughly the same time. =head2 Plugin C -The C uses B to retrieve sensor-values. This means +The I uses B to retrieve sensor-values. This means that all the needed modules have to be loaded and lm_sensors has to be configured (most likely by editing F. Read L for details. @@ -3992,6 +4203,25 @@ Since the configuration of the C is a little more complicated than other plugins, its documentation has been moved to an own manpage, L. Please see there for details. +=head2 Plugin C + +The I collects information about used and available swap space. On +I, the following options are available: + +=over 4 + +=item B B|B + +Configures how to report physical swap devices. If set to B is used (the +default), the summary over all swap devices is reported only, i.e. the globally +used and available space over all devices. If B is configured, the used +and available space of each device will be reported separately. + +This option is only available if the I can use the L +mechanism under I. + +=back + =head2 Plugin C =over 4 @@ -4190,25 +4420,37 @@ Use the last number found. =item B -The matched number is a counter. Simply sets the internal counter to this -value. +=item B + +=item B + +The matched number is a counter. Simply I the internal counter to this +value. Variants exist for C, C, and C data sources. =item B -Add the matched value to the internal counter. +=item B + +Add the matched value to the internal counter. In case of B, the +matched number may be negative, which will effectively subtract from the +internal counter. =item B -Increase the internal counter by one. This B is the only one that does -not use the matched subexpression, but simply counts the number of matched +=item B + +Increase the internal counter by one. These B are the only ones that do +not use the matched subexpression, but simply count the number of matched lines. Thus, you may use a regular expression without submatch in this case. =back As you'd expect the B types interpret the submatch as a floating point -number, using L. The B and B interpret the -submatch as an integer using L. B does not use the -submatch at all and it may be omitted in this case. +number, using L. The B and B types interpret +the submatch as an unsigned integer using L. The B types +interpret the submatch as a signed integer using L. B +and B do not use the submatch at all and it may be omitted in this +case. =item B I @@ -4329,7 +4571,7 @@ port in numeric form. =item B I|I -By default, the C plugin tries to read the statistics from the Linux +By default, the I tries to read the statistics from the Linux C interface. If that is not available, the plugin falls back to the C interface. By setting this option to I, you can force the plugin to use the latter. This option defaults to I. @@ -4349,9 +4591,18 @@ selection is configured at all, B devices are selected. =back +=head2 Plugin C + +The I checks values collected or received by I +against a configurable I and issues I if values are +out of bounds. + +Documentation for this plugin is available in the L +manual page. + =head2 Plugin C -The C connects to a TokyoTyrant server and collects a +The I connects to a TokyoTyrant server and collects a couple metrics: number of records, and database size on disk. =over 4 @@ -4388,6 +4639,13 @@ 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. Defaults to B<0770>. +=item B B|B + +If set to B, delete the socket file before calling L, if a file +with the given name already exists. If I crashes a socket file may be +left over, preventing the daemon from opening a new socket when restarted. +Since this is potentially dangerous, this defaults to B. + =back =head2 Plugin C @@ -4653,13 +4911,6 @@ information. WarningMin 100000000 - - - DataSource "midterm" - FailureMax 4 - Hits 3 - Hysteresis 3 - @@ -4732,26 +4983,33 @@ percentage value, relative to the other data sources. This is helpful for example for the "df" type, where you may want to issue a warning when less than 5E% of the total space is available. Defaults to B. -=item B I +=item B I + +Delay creating the notification until the threshold has been passed I +times. When a notification has been generated, or when a subsequent value is +inside the threshold, the counter is reset. If, for example, a value is +collected once every 10Eseconds and B is set to 3, a notification +will be dispatched at most once every 30Eseconds. + +This is useful when short bursts are not a problem. If, for example, 100% CPU +usage for up to a minute is normal (and data is collected every +10Eseconds), you could set B to B<6> to account for this. -Sets the number of occurrences which the threshold must be arised before to -dispatch any notification or, in other words, the number of Bs -than the threshold must be match before dispatch any notification. +=item B I -=item B I +When set to non-zero, a hysteresis value is applied when checking minimum and +maximum bounds. This is useful for values that increase slowly and fluctuate a +bit while doing so. When these values come close to the threshold, they may +"flap", i.e. switch between failure / warning case and okay case repeatedly. -Sets the hysteresis value for threshold. The hysteresis is a method to -prevent flapping between states, until a new received value for -a previously matched threshold down below the threshold condition -(B, B or everthing else) minus the hysteresis value, -the failure (respectively warning) state will be keep. +If, for example, the threshold is configures as -=item B B|B + WarningMax 100.0 + Hysteresis 1.0 -If set to B (the default), the threshold must be treated as -interesting and, when a number of B values will lost, then -a missing notification will be dispatched. On the other hand, if set to -B, the missing notification will never dispatched for this threshold. +then a I notification is created when the value exceeds I<101> and the +corresponding I notification is only created once the value falls below +I<99>, thus avoiding the "flapping". =back