X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fcollectd.conf.pod;h=49dfe1936efcc294df85a7763141d39c6124cb12;hb=5444a566682f35349b0c89643ba09f549e5b764b;hp=4d15fd232d93b91967af7205856b3468035f7f6e;hpb=7e0f5825b622b655264858faf08b13331a95cca0;p=collectd.git diff --git a/src/collectd.conf.pod b/src/collectd.conf.pod index 4d15fd23..49dfe193 100644 --- a/src/collectd.conf.pod +++ b/src/collectd.conf.pod @@ -1,3 +1,5 @@ +=encoding UTF-8 + =head1 NAME collectd.conf - Configuration for the system statistics collection daemon B @@ -68,17 +70,33 @@ directory for the daemon. =item B I -Loads the plugin I. There must be at least one such line or B -will be mostly useless. +Loads the plugin I. This is required to load plugins, unless the +B option is enabled (see below). Without any loaded plugins, +I 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: +Only the first B statement or block for a given plugin name has any +effect. This is useful when you want to split up the configuration into smaller +files and want each file to be "self contained", i.e. it contains a B +block I then appropriate B statement. The downside is that if +you have multiple conflicting B blocks, e.g. when they specify +different intervals, only one of them (the first one encountered) will take +effect and all others will be silently ignored. - - Globals true - Interval 10 - +B may either be a simple configuration I or a I +with additional options, affecting the behavior of B. A simple +statement looks like this: + + LoadPlugin "cpu" + +Options inside a B block can override default settings and +influence the way plugins are loaded, e.g.: + + + Globals true + Interval 60 + + +The following options are valid inside B blocks: =over 4 @@ -109,6 +127,19 @@ interval, that setting will take precedence. =back +=item B B|B + +When set to B (the default), each plugin needs to be loaded explicitly, +using the B statement documented above. If a +BPluginE...E> block is encountered and no configuration +handling callback for this plugin has been registered, a warning is logged and +the block is ignored. + +When set to B, explicit B statements are not required. Each +BPluginE...E> block acts as if it was immediately preceded by a +B statement. B statements are still required for +plugins that don't provide any configuration, e.g. the I. + =item B I [I] If I points to a file, includes that file. If I points to a @@ -119,15 +150,29 @@ use statements like the following: Include "/etc/collectd.d/*.conf" +Starting with version 5.3, this may also be a block in which further options +affecting the behavior of B may be specified. The following option is +currently allowed: + + + Filter "*.conf" + + +=over 4 + +=item B I + If the C function is available on your system, a shell-like wildcard I may be specified to filter which files to include. This may be used in combination with recursively including a directory to easily be able to arbitrarily mix configuration files and other documents (e.g. README files). -The following statement is similar to the example above but includes all files +The given example is similar to the first example above but includes all files matching C<*.conf> in any subdirectory of C: Include "/etc/collectd.d" "*.conf" +=back + If more than one files are included by a single B option, the files will be included in lexicographical order (as defined by the C function). Thus, you can e.Eg. use numbered prefixes to specify the @@ -190,6 +235,36 @@ Number of threads to start for dispatching value lists to write plugins. The default value is B<5>, but you may want to increase this if you have more than five plugins that may take relatively long to write to. +=item B I + +=item B I + +Metrics are read by the I and then put into a queue to be handled +by the I. If one of the I is slow (e.g. network +timeouts, I/O saturation of the disk) this queue will grow. In order to avoid +running into memory issues in such a case, you can limit the size of this +queue. + +By default, there is no limit and memory may grow indefinitely. This is most +likely not an issue for clients, i.e. instances that only handle the local +metrics. For servers it is recommended to set this to a non-zero value, though. + +You can set the limits using B and B. +Each of them takes a numerical argument which is the number of metrics in the +queue. If there are I metrics in the queue, any new metrics I be +dropped. If there are less than I metrics in the queue, all new metrics +I be enqueued. If the number of metrics currently in the queue is between +I and I, the metric is dropped with a probability that is +proportional to the number of metrics in the queue (i.e. it increases linearly +until it reaches 100%.) + +If B is set to non-zero and B is +unset, the latter will default to half of B. + +If you do not want to randomly drop values when the queue size is between +I and I, set If B and +B to same value. + =item B I Sets the hostname that identifies a host. If you omit this setting, the @@ -852,6 +927,29 @@ By default no detailed zone information is collected. =back +=head2 Plugin C + +This plugin collects the CPU user/system time for each I by reading the +F files in the first cpuacct-mountpoint (typically +F on machines using systemd). + +=over 4 + +=item B I + +Select I based on the name. Whether only matching I are +collected or if they are ignored is controlled by the B option; +see below. + +=item B B|B + +Invert the selection: If set to true, all cgroups I the ones that +match any one of the criteria are collected. By default only selected +cgroups are collected if a selection is made. If no selection is configured +at all, B cgroups are selected. + +=back + =head2 Plugin C This plugin doesn't have any options. It reads @@ -974,13 +1072,15 @@ is set to B, B blocks are optional. =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 B collects values from JSON data to be parsed by +B (L) retrieved via +either B (L) or read directly from a +unix socket. The former can be used, for example, to collect values +from CouchDB documents (which are stored JSON notation), and the +latter to collect values from a uWSGI stats socket. -The following example will collect several values from the built-in `_stats' -runtime statistics module of CouchDB +The following example will collect several values from the built-in +`_stats' runtime statistics module of CouchDB (L). @@ -1000,8 +1100,23 @@ runtime statistics module of CouchDB -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. +This example will collect data directly from a uWSGI Stats Server +socket. + + + + Instance "uwsgi" + + Type "http_requests" + + + + +In the B block, there may be one or more B blocks, each +defining a URL to be fetched via HTTP (using libcurl) or B +blocks defining a unix socket to read JSON from directly. Each of +these blocks may have one or more B blocks. + The B string argument must be in a path format, which is used to collect a value from a JSON map object. If a path element of B is the I<*>Ewildcard, the values for all keys will be collectd. @@ -1459,6 +1574,20 @@ 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. +=item B B|B + +Enables or disables reporting of free, used and used disk space in 1K-blocks. +Defaults to true. + +=item B B|B + +Enables or disables reporting of free, used and used disk space in percentage. +Defaults to false. + +This is useful for deploying collectd on the cloud, where machines with +different disk size may exist. Then it is more practical to configure thresholds +based on relative disk size. + =back =head2 Plugin C @@ -2207,7 +2336,7 @@ interpreted. For a description of match blocks, please see L<"Plugin tail">. =head2 Plugin C -The C connects to a memcached server and queries statistics +The B connects to a memcached server and queries statistics about cache utilization, memory and bandwidth used. L @@ -2239,6 +2368,166 @@ setting is given, the B and B settings are ignored. =back +=head2 Plugin C + +The B gathers CPU statistics, memory usage and temperatures from +Intel's Many Integrated Core (MIC) systems. + +B + + + ShowCPU true + ShowCPUCores true + ShowMemory true + + ShowTemperatures true + Temperature vddg + Temperature vddq + IgnoreSelectedTemperature true + + ShowPower true + Power total0 + Power total1 + IgnoreSelectedPower true + + +The following options are valid inside the Bmic> block: + +=over 4 + +=item B B|B + +If enabled (the default) a sum of the CPU usage accross all cores is reported. + +=item B B|B + +If enabled (the default) per-core CPU usage is reported. + +=item B B|B + +If enabled (the default) the physical memory usage of the MIC system is +reported. + +=item B B|B + +If enabled (the default) various temperatures of the MIC system are reported. + +=item B I + +This option controls which temperatures are being reported. Whether matching +temperatures are being ignored or I matching temperatures are reported +depends on the B setting below. By default I +temperatures are reported. + +=item B B|B + +Controls the behavior of the B setting above. If set to B +(the default) only temperatures matching a B option are reported +or, if no B option is specified, all temperatures are reported. If +set to B, matching temperatures are I and all other temperatures +are reported. + +Known temperature names are: + +=over 4 + +=item die + +Die of the CPU + +=item devmem + +Device Memory + +=item fin + +Fan In + +=item fout + +Fan Out + +=item vccp + +Voltage ccp + +=item vddg + +Voltage ddg + +=item vddq + +Voltage ddq + +=back + +=item B B|B + +If enabled (the default) various temperatures of the MIC system are reported. + +=item B I + +This option controls which power readings are being reported. Whether matching +power readings are being ignored or I matching power readings are reported +depends on the B setting below. By default I +power readings are reported. + +=item B B|B + +Controls the behavior of the B setting above. If set to B +(the default) only power readings matching a B option are reported +or, if no B option is specified, all power readings are reported. If +set to B, matching power readings are I and all other power readings +are reported. + +Known power names are: + +=over 4 + +=item total0 + +Total power utilization averaged over Time Window 0 (uWatts). + +=item total1 + +Total power utilization averaged over Time Window 0 (uWatts). + +=item inst + +Instantaneous power (uWatts). + +=item imax + +Max instantaneous power (uWatts). + +=item pcie + +PCI-E connector power (uWatts). + +=item c2x3 + +2x3 connector power (uWatts). + +=item c2x4 + +2x4 connector power (uWatts). + +=item vccp + +Core rail (uVolts). + +=item vddg + +Uncore rail (uVolts). + +=item vddq + +Memory subsystem rail (uVolts). + +=back + +=back + =head2 Plugin C The B connects to a Modbus "slave" via Modbus/TCP and reads @@ -2246,7 +2535,7 @@ register values. It supports reading single registers (unsigned 16Ebit values), large integer values (unsigned 32Ebit values) and floating point values (two registers interpreted as IEEE floats in big endian notation). -Synopsis: +B RegisterBase 0 @@ -4876,12 +5165,129 @@ and all other sensors are collected. =back +=head2 Plugin C + +The I uses I to retrieve measurements from any device +supported by the L project. + +B + + + LogLevel 3 + + Driver "fluke-dmm" + MinimumInterval 10 + Conn "/dev/ttyUSB2" + + + Driver "cem-dt-885x" + Conn "/dev/ttyUSB1" + + + +=over 4 + +=item B B<0-5> + +The I logging level to pass on to the I log, as a number +between B<0> and B<5> (inclusive). These levels correspond to C, +C, C, C, Cand C, respectively. +The default is B<2> (C). The I log messages, regardless of +their level, are always submitted to I at its INFO log level. + +=item EB IE + +A sigrok-supported device, uniquely identified by this section's options. The +I is passed to I as the I. + +=item B I + +The sigrok driver to use for this device. + +=item B I + +If the device cannot be auto-discovered, or more than one might be discovered +by the driver, I specifies the connection string to the device. +It can be of the form of a device path (e.g.EC), or, in +case of a non-serial USB-connected device, the USB IB<.>I +separated by a period (e.g.EC<0403.6001>). A USB device can also be +specified as IB<.>I
(e.g.EC<1.41>). + +=item B I + +For serial devices with non-standard port settings, this option can be used +to specify them in a form understood by I, e.g.EC<9600/8n1>. +This should not be necessary; drivers know how to communicate with devices they +support. + +=item B I + +Specifies the minimum time between measurement dispatches to I, in +seconds. Since some I supported devices can acquire measurements many +times per second, it may be necessary to throttle these. For example, the +I cannot process writes more than once per second. + +The default B is B<0>, meaning measurements received from the +device are always dispatched to I. When throttled, unused +measurements are discarded. + +=back + =head2 Plugin C 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 listens to a UDP socket, reads "events" in the statsd +protocol and dispatches rates or other aggregates of these numbers +periodically. + +The plugin implements the I, I, I and I types which +are dispatched as the I types C, C, C and +C respectively. + +The following configuration options are valid: + +=over 4 + +=item B I + +Bind to the hostname / address I. By default, the plugin will bind to the +"any" address, i.e. accept packets sent to any of the hosts addresses. + +=item B I + +UDP port to listen to. This can be either a service name or a port number. +Defaults to C<8125>. + +=item B B|B + +=item B B|B + +=item B B|B + +=item B B|B + +These options control what happens if metrics are not updated in an interval. +If set to B, the default, metrics are dispatched unchanged, i.e. the +rate of counters and size of sets will be zero, timers report C and gauges +are unchanged. If set to B, the such metrics are not dispatched and +removed from the internal cache. + +=item B I + +Calculate and dispatch the configured percentile, i.e. compute the latency, so +that I of all reported timers are smaller than or equal to the +computed latency. This is useful for cutting off the long tail latency, as it's +often done in I (SLAs). + +If not specified, no percentile is calculated / dispatched. + +=back + =head2 Plugin C The I collects information about used and available swap space. On @@ -5475,7 +5881,33 @@ Take the UUID from the given file (default I). =head2 Plugin C -The Varnish plugin collects information about Varnish, an HTTP accelerator. +The I collects information about Varnish, an HTTP accelerator. + +Synopsis: + + + + CollectCache true + CollectConnections true + CollectBackend true + CollectSHM true + CollectESI false + CollectFetch false + CollectHCB false + CollectSMA false + CollectSMS false + CollectSM false + CollectTotals false + CollectWorkers false + + + +The configuration consists of one or more EBEIE +blocks. I is the parameter passed to "varnishd -n". If left empty, it +will collectd statistics from the default "varnishd" instance (this should work +fine in most cases). + +Inside each EBE blocks, the following options are recognized: =over 4 @@ -5616,9 +6048,9 @@ iptables to feed data for the guest IPs into the iptables plugin. The C plugin writes data to I, an open-source metrics storage and graphing project. The plugin connects to I, the data layer -of I, and sends data via the "line based" protocol (per default using -portE2003). The data will be sent in blocks of at most 1428 bytes to -minimize the number of network packets. +of I, via I or I and sends data via the "line based" +protocol (per default using portE2003). The data will be sent in blocks +of at most 1428 bytes to minimize the number of network packets. Synopsis: @@ -5626,6 +6058,8 @@ Synopsis: Host "localhost" Port "2003" + Protocol "udp" + LogSendErrors true Prefix "collectd" @@ -5643,6 +6077,17 @@ Hostname or address to connect to. Defaults to C. Service name or port number to connect to. Defaults to C<2003>. +=item B I + +Protocol to use when connecting to I. Defaults to C. + +=item B B|B + +If set to B (the default), logs errors when sending data to I. +If set to B, it will not log the errors. This is especially useful when +using Protocol UDP since many times we want to use the "fire-and-forget" +approach and logging errors fills syslog with unneeded messages. + =item B I When set, I is added in front of the host name. Dots and whitespace are @@ -5813,7 +6258,7 @@ Synopsis: Protocol UDP StoreRates true AlwaysAppendDS false - Delay 10 + TTLFactor 2.0 Tag "foobar" @@ -5860,6 +6305,15 @@ If set the B, append the name of the I (DS) to the identifies a metric in I. If set to B (the default), this is only done when there is more than one DS. +=item B I + +I events have a I