X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fcollectd.conf.pod;h=2458462a3617063d337cbed2dc9a4c83fb06cee3;hb=f2a35cefd56bdf4b26cc82637a29445abe1744fb;hp=e401d42ac32e5e06a2c27d76f7cb6d4a370656c4;hpb=6ea00a8e17fccbac0cc5dee711ee2e4cb73bdaaa;p=collectd.git diff --git a/src/collectd.conf.pod b/src/collectd.conf.pod index e401d42a..2458462a 100644 --- a/src/collectd.conf.pod +++ b/src/collectd.conf.pod @@ -409,106 +409,6 @@ By default no detailed zone information is collected. =back -=head2 Plugin C - -The couchdb plugin uses B (L) and B -(L) to collect values from CouchDB -documents (stored JSON notation). - -The following example will collect several values from the built-in `_stats' -runtime statistics module (L). - - - - Instance "httpd" - - Type "http_requests" - - - - Type "http_request_methods" - - - - Type "http_response_codes" - - - - -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 (libcurl) and one or more B blocks. -The B string argument must be in a path format, of which is used to collect -a value from a JSON map object. If a B path element is that of a I<*> wildcard, -the values for all keys will be collectd. - -The following options are valid within B blocks: - -=over 4 - -=item B I - -Sets the plugin instance to I. - -=item B I - -Username to use if authorization is required to read the page. - -=item B I - -Password to use if authorization is required to read the page. - -=item B B|B - -Enable or disable peer SSL certificate verification. See -L for details. Enabled by default. - -=item B B|B - -Enable or disable peer host name verification. If enabled, the plugin checks if -the C or a C field of the SSL certificate -matches the host name provided by the B option. If this identity check -fails, the connection is aborted. Obviously, only works when connecting to a -SSL enabled server. Enabled by default. - -=item B I - -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 -and are checked by default depends on the distribution you use. - -=back - -The following options are valid within B blocks: - -=over 4 - -=item B I - -Sets the type used to dispatch the values to the daemon. Detailed information -about types and their configuration can be found in L. This -option is mandatory. - -=item B I - -Type-instance to use. Defaults to the current map key or current string array element value. - -=back - =head2 Plugin C This plugin doesn't have any options. It reads @@ -601,6 +501,10 @@ 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 and are checked by default depends on the distribution you use. +=item B B|B + +Measure response time for the request. Disabled by default. + =item BMatchE> One or more B blocks that define how to match information in the data @@ -610,6 +514,109 @@ plugin below on how matches are defined. =back +=head2 Plugin C + +The B uses B (L) and +B (L) to retrieve JSON data +via cURL. This can be used to collect values from CouchDB documents (which are +stored JSON notation), for example. + +The following example will collect several values from the built-in `_stats' +runtime statistics module of CouchDB +(L). + + + + Instance "httpd" + + Type "http_requests" + + + + Type "http_request_methods" + + + + Type "http_response_codes" + + + + +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, of which is used to collect +a value from a JSON map object. If a B path element is that of a I<*> wildcard, +the values for all keys will be collectd. + +The following options are valid within B blocks: + +=over 4 + +=item B I + +Sets the plugin instance to I. + +=item B I + +Username to use if authorization is required to read the page. + +=item B I + +Password to use if authorization is required to read the page. + +=item B B|B + +Enable or disable peer SSL certificate verification. See +L for details. Enabled by default. + +=item B B|B + +Enable or disable peer host name verification. If enabled, the plugin checks if +the C or a C field of the SSL certificate +matches the host name provided by the B option. If this identity check +fails, the connection is aborted. Obviously, only works when connecting to a +SSL enabled server. Enabled by default. + +=item B I + +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 +and are checked by default depends on the distribution you use. + +=back + +The following options are valid within B blocks: + +=over 4 + +=item B I + +Sets the type used to dispatch the values to the daemon. Detailed information +about types and their configuration can be found in L. This +option is mandatory. + +=item B I + +Type-instance to use. Defaults to the current map key or current string array element value. + +=back + =head2 Plugin C This plugin uses the B library (L) to @@ -863,13 +870,44 @@ Select partitions based on the mountpoint. Select partitions based on the filesystem type. -=item B I|I +=item B B|B Invert the selection: If set to true, all partitions B 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 configured at all, B partitions are selected. +=item B B|B + +Report using the device name rather than the mountpoint. i.e. with this I, +(the default), it will report a disk as "root", but with it I, it will be +"sda1" (or whichever). + +=item B B|B + +When enabled, the blocks reserved for root are reported separately. When +disabled (the default for backwards compatibility reasons) the reserved space +will be included in the "free" space. + +When disabled, the "df" type will be used to store "free" and "used" space. The +mount point or disk name (see option B) is used as type +instance in this case (again: backwards compatibility). + +When enabled, the type "df_complex" is used and three files are created. The +mount point or disk name is used as plugin instance and the type instance is +set to "free", "reserved" and "used" as appropriate. + +Enabling this option is recommended. + +=item B B|B + +Enables or disables reporting of free, reserved and used inodes. Defaults to +inode collection being disabled. + +Enable this option if inodes are a scarce resource for you, usually because +many small files are stored on the disk. This is a usual scenario for mail +transfer agents and web caches. + =back =head2 Plugin C @@ -1066,6 +1104,11 @@ Controls whether or not to recurse into subdirectories. Enabled by default. =back +=head2 Plugin C + +The I is written in I and therefore documented in +L. + =head2 Plugin C The I plugin received the multicast traffic sent by B, the @@ -1626,6 +1669,454 @@ or SQL threads are not running. =back +=head2 Plugin C + +The netapp plugin can collect various performance and capacity informations +from a NetApp filer using the NetApp API. + +To collect these data collectd will log in to the NetApp via HTTP(S) and HTTP +basic authentication. + +B Create a special collectd user with just +the minimum of capabilities needed. The user only needs the "login-http-admin" +capability as well as a few more depending on which data will be collected. +Required capabilities are documented below. + +=head3 Synopsis + + + + Protocol "https" + Address "10.0.0.1" + Port 443 + User "username" + Password "aef4Aebe" + Interval 30 + + + Interval 30 + GetNameCache true + GetDirCache true + GetBufferCache true + GetInodeCache true + + + + Interval 30 + GetBusy true + + + + Interval 30 + GetIO "volume0" + IgnoreSelectedIO false + GetOps "volume0" + IgnoreSelectedOps false + GetLatency "volume0" + IgnoreSelectedLatency false + + + + Interval 30 + GetCapacity "vol0" + GetCapacity "vol1" + IgnoreSelectedCapacity false + GetSnapshot "vol1" + GetSnapshot "vol3" + IgnoreSelectedSnapshot false + + + + Interval 30 + GetCPULoad true + GetInterfaces true + GetDiskOps true + GetDiskIO true + + + + +The netapp plugin accepts the following configuration options: + +=over 4 + +=item B I + +A host block defines one NetApp filer. It will appear in collectd with the name +you specify here which does not have to be its real name nor its hostname. + +=item B B|B + +The protocol collectd will use to query this host. + +Optional + +Type: string + +Default: https + +Valid options: http, https + +=item B
I
+ +The hostname or IP address of the host. + +Optional + +Type: string + +Default: The "host" block's name. + +=item B I + +The TCP port to connect to on the host. + +Optional + +Type: integer + +Default: 80 for protocol "http", 443 for protocol "https" + +=item B I + +=item B I + +The username and password to use to login to the NetApp. + +Mandatory + +Type: string + +=item B I + +B + +=back + +The following options decide what kind of data will be collected. You can +either use them as a block and fine tune various parameters inside this block, +use them as a single statement to just accept all default values, or omit it to +not collect any data. + +The following options are valid inside all blocks: + +=over 4 + +=item B I + +Collect the respective statistics every I seconds. Defaults to the +host specific setting. + +=back + +=head3 The System block + +This will collect various performance data about the whole system. + +B To get this data the collectd user needs the +"api-perf-object-get-instances" capability. + +=over 4 + +=item B I + +Collect disk statistics every I seconds. + +=item B B|B + +If you set this option to true the current CPU usage will be read. This will be +the average usage between all CPUs in your NetApp without any information about +individual CPUs. + +B These are the same values that the NetApp CLI command "sysstat" +returns in the "CPU" field. + +Optional + +Type: boolean + +Default: true + +Result: Two value lists of type "cpu", and type instances "idle" and "system". + +=item B B|B + +If you set this option to true the current traffic of the network interfaces +will be read. This will be the total traffic over all interfaces of your NetApp +without any information about individual interfaces. + +B This is the same values that the NetApp CLI command "sysstat" returns +in the "Net kB/s" field. + +B + +Optional + +Type: boolean + +Default: true + +Result: One value list of type "if_octects". + +=item B B|B + +If you set this option to true the current IO throughput will be read. This +will be the total IO of your NetApp without any information about individual +disks, volumes or aggregates. + +B This is the same values that the NetApp CLI command "sysstat" returns +in the "DiskEkB/s" field. + +Optional + +Type: boolean + +Default: true + +Result: One value list of type "disk_octets". + +=item B B|B + +If you set this option to true the current number of HTTP, NFS, CIFS, FCP, +iSCSI, etc. operations will be read. This will be the total number of +operations on your NetApp without any information about individual volumes or +aggregates. + +B These are the same values that the NetApp CLI command "sysstat" +returns in the "NFS", "CIFS", "HTTP", "FCP" and "iSCSI" fields. + +Optional + +Type: boolean + +Default: true + +Result: A variable number of value lists of type "disk_ops_complex". Each type +of operation will result in one value list with the name of the operation as +type instance. + +=back + +=head3 The WAFL block + +This will collect various performance data about the WAFL file system. At the +moment this just means cache performance. + +B To get this data the collectd user needs the +"api-perf-object-get-instances" capability. + +B The interface to get these values is classified as "Diagnostics" by +NetApp. This means that it is not guaranteed to be stable even between minor +releases. + +=over 4 + +=item B I + +Collect disk statistics every I seconds. + +=item B B|B + +Optional + +Type: boolean + +Default: true + +Result: One value list of type "cache_ratio" and type instance +"name_cache_hit". + +=item B B|B + +Optional + +Type: boolean + +Default: true + +Result: One value list of type "cache_ratio" and type instance "find_dir_hit". + +=item B B|B + +Optional + +Type: boolean + +Default: true + +Result: One value list of type "cache_ratio" and type instance +"inode_cache_hit". + +=item B B|B + +B This is the same value that the NetApp CLI command "sysstat" returns +in the "Cache hit" field. + +Optional + +Type: boolean + +Default: true + +Result: One value list of type "cache_ratio" and type instance "buf_hash_hit". + +=back + +=head3 The Disks block + +This will collect performance data about the individual disks in the NetApp. + +B To get this data the collectd user needs the +"api-perf-object-get-instances" capability. + +=over 4 + +=item B I + +Collect disk statistics every I seconds. + +=item B B|B + +If you set this option to true the busy time of all disks will be calculated +and the value of the busiest disk in the system will be written. + +B This is the same values that the NetApp CLI command "sysstat" returns +in the "Disk util" field. Probably. + +Optional + +Type: boolean + +Default: true + +Result: One value list of type "percent" and type instance "disk_busy". + +=back + +=head3 The VolumePerf block + +This will collect various performance data about the individual volumes. + +You can select which data to collect about which volume using the following +options. They follow the standard ignorelist semantic. + +B To get this data the collectd user needs the +I capability. + +=over 4 + +=item B I + +Collect volume performance data every I seconds. + +=item B I + +=item B I + +=item B I + +Select the given volume for IO, operations or latency statistics collection. +The argument is the name of the volume without the C prefix. + +Since the standard ignorelist functionality is used here, you can use a string +starting and ending with a slash to specify regular expression matching: To +match the volumes "vol0", "vol2" and "vol7", you can use this regular +expression: + + GetIO "/^vol[027]$/" + +If no regular expression is specified, an exact match is required. Both, +regular and exact matching are case sensitive. + +If no volume was specified at all for either of the three options, that data +will be collected for all available volumes. + +=item B B|B + +=item B B|B + +=item B B|B + +When set to B, the volumes selected for IO, operations or latency +statistics collection will be ignored and the data will be collected for all +other volumes. + +When set to B, data will only be collected for the specified volumes and +all other volumes will be ignored. + +If no volumes have been specified with the above B options, all volumes +will be collected regardless of the B option. + +Defaults to B + +=back + +=head3 The VolumeUsage block + +This will collect capacity data about the individual volumes. + +B To get this data the collectd user needs the I +capability. + +=over 4 + +=item B I + +Collect volume usage statistics every I seconds. + +=item B I + +The current capacity of the volume will be collected. This will result in two +to four value lists, depending on the configuration of the volume. All data +sources are of type "df_complex" with the name of the volume as +plugin_instance. + +There will be type_instances "used" and "free" for the number of used and +available bytes on the volume. If the volume has some space reserved for +snapshots, a type_instance "snap_reserved" will be available. If the volume +has SIS enabled, a type_instance "sis_saved" will be available. This is the +number of bytes saved by the SIS feature. + +B The current NetApp API has a bug that results in this value being +reported as a 32Ebit number. This plugin tries to guess the correct +number which works most of the time. If you see strange values here, bug +NetApp support to fix this. + +Repeat this option to specify multiple volumes. + +=item B B|B + +Specify whether to collect only the volumes selected by the B +option or to ignore those volumes. B defaults to +B. However, if no B option is specified at all, all +capacities will be selected anyway. + +=item B I + +Select volumes from which to collect snapshot information. + +Usually, the space used for snapshots is included in the space reported as +"used". If snapshot information is collected as well, the space used for +snapshots is subtracted from the used space. + +To make things even more interesting, it is possible to reserve space to be +used for snapshots. If the space required for snapshots is less than that +reserved space, there is "reserved free" and "reserved used" space in addition +to "free" and "used". If the space required for snapshots exceeds the reserved +space, that part allocated in the normal space is subtracted from the "used" +space again. + +Repeat this option to specify multiple volumes. + +=item B + +Specify whether to collect only the volumes selected by the B +option or to ignore those volumes. B defaults to +B. However, if no B option is specified at all, all +capacities will be selected anyway. + +=back + =head2 Plugin C The C plugin uses a netlink socket to query the Linux kernel about @@ -1826,6 +2317,11 @@ 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. +=item B I<1024-65535> + +Set the maximum size for datagrams received over the network. Packets larger +than this will be truncated. + =item B I If set to I, write packets that were received via the network plugin to @@ -2779,7 +3275,7 @@ matching values will be ignored. =head2 Plugin C -The C plugin uses the RRDTool accelerator daemon, L, +The C plugin uses the RRDtool accelerator daemon, L, to store values to RRD files in an efficient manner. The combination of the C B and the C B is very similar to the way the C plugin works (see below). The added abstraction layer @@ -2831,7 +3327,7 @@ expected. Default is B. You can use the settings B, B, B, and B to fine-tune your RRD-files. Please read L if you encounter problems -using these settings. If you don't want to dive into the depths of RRDTool, you +using these settings. If you don't want to dive into the depths of RRDtool, you can safely ignore these settings. =over 4 @@ -2928,6 +3424,14 @@ updates per second, writing all values to disk will take approximately "collection3" you'll end up with a responsive and fast system, up to date graphs and basically a "backup" of your values every hour. +=item B I + +When set, the actual timeout for each value is chosen randomly between +I-I and I+I. The +intention is to avoid high load situations that appear when many values timeout +at the same time. This is especially a problem shortly after the daemon starts, +because all values were added to the internal cache at roughly the same time. + =back =head2 Plugin C @@ -3432,6 +3936,64 @@ traffic (e.Eg. due to headers and retransmission). If you want to collect on-wire traffic you could, for example, use the logging facilities of iptables to feed data for the guest IPs into the iptables plugin. +=head2 Plugin C + +This output plugin submits values to an http server by POST them using the +PUTVAL plain-text protocol. Each destination you want to post data to needs to +have one B block, within which the destination can be configured further, +for example by specifying authentication data. + +Synopsis: + + + + User "collectd" + Password "weCh3ik0" + + + +B blocks need one string argument which is used as the URL to which data +is posted. The following options are understood within B blocks. + +=over 4 + +=item B I + +Optional user name needed for authentication. + +=item B I + +Optional password needed for authentication. + +=item B B|B + +Enable or disable peer SSL certificate verification. See +L for details. Enabled by default. + +=item B B + +Enable or disable peer host name verification. If enabled, the plugin checks if +the C or a C field of the SSL certificate +matches the host name provided by the B option. If this identity check +fails, the connection is aborted. Obviously, only works when connecting to a +SSL enabled server. Enabled by default. + +=item B I + +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 +and are checked by default depends on the distribution you use. + +=item B B|B + +Format of the output to generate. If set to B, will create output that +is understood by the I and I plugins. When set to B, will +create output in the I (JSON). + +Defaults to B. + +=back + =head1 THRESHOLD CONFIGURATION Starting with version C<4.3.0> collectd has support for B. By that @@ -4057,6 +4619,90 @@ Example: Satisfy "Any" +=item B + +Matches all values with one or more data sources of type B and where +all counter values are zero. These counters usually I increased since +they started existing (and are therefore uninteresting), or got reset recently +or overflowed and you had really, I bad luck. + +Please keep in mind that ignoring such counters can result in confusing +behavior: Counters which hardly ever increase will be zero for long periods of +time. If the counter is reset for some reason (machine or service restarted, +usually), the graph will be empty (NAN) for a long time. People may not +understand why. + +=item B + +Calculates a hash value of the host name and matches values according to that +hash value. This makes it possible to divide all hosts into groups and match +only values that are in a specific group. The intended use is in load +balancing, where you want to handle only part of all data and leave the rest +for other servers. + +The hashing function used tries to distribute the hosts evenly. First, it +calculates a 32Ebit hash value using the characters of the hostname: + + hash_value = 0; + for (i = 0; host[i] != 0; i++) + hash_value = (hash_value * 251) + host[i]; + +The constant 251 is a prime number which is supposed to make this hash value +more random. The code then checks the group for this host according to the +I and I arguments: + + if ((hash_value % Total) == Match) + matches; + else + does not match; + +Please note that when you set I to two (i.Ee. you have only two +groups), then the least significant bit of the hash value will be the XOR of +all least significant bits in the host name. One consequence is that when you +have two hosts, "server0.example.com" and "server1.example.com", where the host +name differs in one digit only and the digits differ by one, those hosts will +never end up in the same group. + +Available options: + +=over 4 + +=item B I I + +Divide the data into I groups and match all hosts in group I as +described above. The groups are numbered from zero, i.Ee. I must +be smaller than I. I must be at least one, although only values +greater than one really do make any sense. + +You can repeat this option to match multiple groups, for example: + + Match 3 7 + Match 5 7 + +The above config will divide the data into seven groups and match groups three +and five. One use would be to keep every value on two hosts so that if one +fails the missing data can later be reconstructed from the second host. + +=back + +Example: + + # Operate on the pre-cache chain, so that ignored values are not even in the + # global cache. + + + + # Divide all received hosts in seven groups and accept all hosts in + # group three. + Match 3 7 + + # If matched: Return and continue. + Target "return" + + # If not matched: Return and stop. + Target "stop" + + =back =head2 Available targets