X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fcollectd.conf.pod;h=cf34e9ed706841ea1bce1a837944131843e4f1ed;hb=7e7a5a6a0096f1919a80bb05371142990717c41e;hp=f88430a05d5a6d78555dc10cc36a2c3d7bc85a1d;hpb=b40f741f7f4c0f20d4ec6ad331ab242e81d9f76c;p=collectd.git diff --git a/src/collectd.conf.pod b/src/collectd.conf.pod index f88430a0..cf34e9ed 100644 --- a/src/collectd.conf.pod +++ b/src/collectd.conf.pod @@ -555,6 +555,7 @@ B # GraphiteEscapeChar "_" # GraphiteSeparateInstances false # GraphiteAlwaysAppendDS false + # GraphitePreserveSeparator false # Receive values from an AMQP broker @@ -729,6 +730,12 @@ If set to B, append the name of the I (DS) to the "metric" identifier. If set to B (the default), this is only done when there is more than one DS. +=item B B|B + +If set to B (the default) the C<.> (dot) character is replaced with +I. Otherwise, if set to B, the C<.> (dot) character +is preserved, i.e. passed through. + =back =head2 Plugin C @@ -1114,6 +1121,13 @@ When set to B, the battery plugin will report three values: B and "remaining capacity") and B (difference between "design capacity" and "last full capacity"). +=item B B|B + +When set to B, the battery plugin will only read statistics +related to battery performance as exposed by StateFS at +/run/state. StateFS is used in Mer-based Sailfish OS, for +example. + =back =head2 Plugin C @@ -2003,6 +2017,7 @@ than those of other plugins. It usually looks something like this: + #Plugin "warehouse" Driver "mysql" Interval 120 DriverOption "host" "localhost" @@ -2184,6 +2199,11 @@ the daemon. Other than that, that name is not used. =over 4 +=item B I + +Use I as the plugin name when submitting query results from +this B. Defaults to 'dbi'. + =item B I Sets the interval (in seconds) in which the values will be collected from this @@ -2379,6 +2399,195 @@ Enabled by default, collects unknown (and thus presented as numeric only) query =back +=head2 Plugin C + +The I collects events from DPDK such as link status of +network ports and Keep Alive status of DPDK logical cores. +In order to get Keep Alive events following requirements must be met: +- DPDK >= 16.07 +- support for Keep Alive implemented in DPDK application. More details can +be found here: http://dpdk.org/doc/guides/sample_app_ug/keep_alive.html + +B + + + + Coremask "0x1" + MemoryChannels "4" + FilePrefix "rte" + + + SendEventsOnUpdate true + EnabledPortMask 0xffff + PortName "interface1" + PortName "interface2" + SendNotification false + + + SendEventsOnUpdate true + LCoreMask "0xf" + KeepAliveShmName "/dpdk_keepalive_shm_name" + SendNotification false + + + +B + + +=head3 The EAL block + +=over 4 + +=item B I + +=item B I + +Number of memory channels per processor socket. + +=item B I + +The prefix text used for hugepage filenames. The filename will be set to +/var/run/._config where prefix is what is passed in by the user. + +=back + +=head3 The Event block + +The B block defines configuration for specific event. It accepts a +single argument which specifies the name of the event. + +=head4 Link Status event + +=over 4 + +=item B I + +If set to true link status value will be dispatched only when it is +different from previously read value. This is an optional argument - default +value is true. + +=item B I + +A hexidecimal bit mask of the DPDK ports which should be enabled. A mask +of 0x0 means that all ports will be disabled. A bitmask of all F's means +that all ports will be enabled. This is an optional argument - by default +all ports are enabled. + +=item B I + +A string containing an optional name for the enabled DPDK ports. Each PortName +option should contain only one port name; specify as many PortName options as +desired. Default naming convention will be used if PortName is blank. If there +are less PortName options than there are enabled ports, the default naming +convention will be used for the additional ports. + +=item B I + +If set to true, link status notifications are sent, instead of link status +being collected as a statistic. This is an optional argument - default +value is false. + +=back + +=head4 Keep Alive event + +=over 4 + +=item B I + +If set to true keep alive value will be dispatched only when it is +different from previously read value. This is an optional argument - default +value is true. + +=item B I + +An hexadecimal bit mask of the logical cores to monitor keep alive state. + +=item B I + +Shared memory name identifier that is used by secondary process to monitor +the keep alive cores state. + +=item B I + +If set to true, keep alive notifications are sent, instead of keep alive +information being collected as a statistic. This is an optional +argument - default value is false. + +=back + +=head2 Plugin C + +The I collects information about DPDK interfaces using the +extended NIC stats API in DPDK. + +B + + + + Coremask "0x4" + MemoryChannels "4" + FilePrefix "rte" + SocketMemory "1024" + + SharedMemObj "dpdk_collectd_stats_0" + EnabledPortMask 0xffff + PortName "interface1" + PortName "interface2" + + +B + +=head3 The EAL block + +=over 4 + +=item B I + +A string containing an hexadecimal bit mask of the cores to run on. Note that +core numbering can change between platforms and should be determined beforehand. + +=item B I + +A string containing a number of memory channels per processor socket. + +=item B I + +The prefix text used for hugepage filenames. The filename will be set to +/var/run/._config where prefix is what is passed in by the user. + +=item B I + +A string containing amount of Memory to allocate from hugepages on specific +sockets in MB. This is an optional value. + +=back + +=over 3 + +=item B I + +A string containing the name of the shared memory object that should be used to +share stats from the DPDK secondary process to the collectd dpdkstat plugin. +Defaults to dpdk_collectd_stats if no other value is configured. + +=item B I + +A hexidecimal bit mask of the DPDK ports which should be enabled. A mask +of 0x0 means that all ports will be disabled. A bitmask of all Fs means +that all ports will be enabled. This is an optional argument - default +is all ports enabled. + +=item B I + +A string containing an optional name for the enabled DPDK ports. Each PortName +option should contain only one port name; specify as many PortName options as +desired. Default naming convention will be used if PortName is blank. If there +are less PortName options than there are enabled ports, the default naming +convention will be used for the additional ports. + +=back + =head2 Plugin C =over 4 @@ -2829,6 +3038,105 @@ TCP-Port to connect to. Defaults to B<7634>. =back +=head2 Plugin C + +To collect B information, collectd reads directories +"/sys/devices/system/node/*/hugepages" and +"/sys/kernel/mm/hugepages". +Reading of these directories can be disabled by the following +options (default is enabled). + +=over 4 + +=item B B|B + +If enabled, information will be collected from the hugepage +counters in "/sys/devices/system/node/*/hugepages". +This is used to check the per-node hugepage statistics on +a NUMA system. + +=item B B|B + +If enabled, information will be collected from the hugepage +counters in "/sys/kernel/mm/hugepages". +This can be used on both NUMA and non-NUMA systems to check +the overall hugepage statistics. + +=item B B|B + +Whether to report hugepages metrics in number of pages. +Defaults to B. + +=item B B|B + +Whether to report hugepages metrics in bytes. +Defaults to B. + +=item B B|B + +Whether to report hugepages metrics as percentage. +Defaults to B. + +=back + +=head2 Plugin C + +The I plugin collects information provided by monitoring features of +Intel Resource Director Technology (Intel(R) RDT) like Cache Monitoring +Technology (CMT), Memory Bandwidth Monitoring (MBM). These features provide +information about utilization of shared resources. CMT monitors last level cache +occupancy (LLC). MBM supports two types of events reporting local and remote +memory bandwidth. Local memory bandwidth (MBL) reports the bandwidth of +accessing memory associated with the local socket. Remote memory bandwidth (MBR) +reports the bandwidth of accessing the remote socket. Also this technology +allows to monitor instructions per clock (IPC). +Monitor events are hardware dependant. Monitoring capabilities are detected on +plugin initialization and only supported events are monitored. + +B I plugin is using model-specific registers (MSRs), which +require an additional capability to be enabled if collectd is run as a service. +Please refer to I file for more details. + +B + + + Cores "0-2" "3,4,6" "8-10,15" + + +B + +=over 4 + +=item B I + +The interval within which to retrieve statistics on monitored events in seconds. +For milliseconds divide the time by 1000 for example if the desired interval +is 50ms, set interval to 0.05. Due to limited capacity of counters it is not +recommended to set interval higher than 1 sec. + +=item B I + +All events are reported on a per core basis. Monitoring of the events can be +configured for group of cores (aggregated statistics). This field defines groups +of cores on which to monitor supported events. The field is represented as list +of strings with core group values. Each string represents a list of cores in a +group. Allowed formats are: + 0,1,2,3 + 0-10,20-18 + 1,3,5-8,10,0x10-12 + +If an empty string is provided as value for this field default cores +configuration is applied - a separate group is created for each core. + +=back + +B By default global interval is used to retrieve statistics on monitored +events. To configure a plugin specific interval use B option of the +intel_rdt block. For milliseconds divide the time by 1000 for +example if the desired interval is 50ms, set interval to 0.05. +Due to limited capacity of counters it is not recommended to set interval higher +than 1 sec. + =head2 Plugin C =over 4 @@ -2842,7 +3150,7 @@ See F for details. =item B I|I -If no configuration if given, the B-plugin will collect data from +If no configuration is given, the B-plugin will collect data from all interfaces. This may not be practical, especially for loopback- and similar interfaces. Thus, you can use the B-option to pick the interfaces you're interested in. Sometimes, however, it's easier/preferred @@ -3168,6 +3476,28 @@ TCP-Port to connect to. Defaults to B<411>. =back +=head2 Plugin C + +The C uses mcelog to retrieve machine check exceptions. + +By default the plugin connects to B<"/var/run/mcelog-client"> to check if the +mcelog server is running. When the server is running, the plugin will tail the +specified logfile to retrieve machine check exception information and send a +notification with the details from the logfile. The plugin will use the mcelog +client protocol to retrieve memory related machine check exceptions. + +=over 4 + +=item B I +Connect to the mcelog client socket using the UNIX domain socket at I. +Defaults to B<"/var/run/mcelog-client">. + +=item B I + +The mcelog file to parse. Defaults to B<"/var/log/mcelog">. + +=back + =head2 Plugin C The C collects information from Linux Software-RAID devices (md). @@ -3250,11 +3580,12 @@ interpreted. For a description of match blocks, please see L<"Plugin tail">. The B connects to a memcached server and queries statistics about cache utilization, memory and bandwidth used. -L +L - Host "memcache.example.com" + #Host "memcache.example.com" + Address "127.0.0.1" Port 11211 @@ -3267,16 +3598,25 @@ following options are allowed: =item B I -Hostname to connect to. Defaults to B<127.0.0.1>. +Sets the B field of dispatched values. Defaults to the global hostname +setting. +For backwards compatibility, values are also dispatched with the global +hostname when B is set to B<127.0.0.1> or B and B
is +not set. + +=item B
I
+ +Hostname or IP to connect to. For backwards compatibility, defaults to the +value of B or B<127.0.0.1> if B is unset. =item B I -TCP-Port to connect to. Defaults to B<11211>. +TCP port to connect to. Defaults to B<11211>. =item B I Connect to I using the UNIX domain socket at I. If this -setting is given, the B and B settings are ignored. +setting is given, the B
and B settings are ignored. =back @@ -4928,6 +5268,35 @@ making it through. Add a UPS to collect data from. The format is identical to the one accepted by L. +=item B B|B + +Stops connections from falling back to unsecured if an SSL connection +cannot be established. Defaults to false if undeclared. + +=item B I|I + +If set to true, requires a CAPath be provided. Will use the CAPath to find +certificates to use as Trusted Certificates to validate a upsd server certificate. +If validation of the upsd server certificate fails, the connection will not be +established. If ForceSSL is undeclared or set to false, setting VerifyPeer to true +will override and set ForceSSL to true. + +=item B I/path/to/certs/folder + +If VerifyPeer is set to true, this is required. Otherwise this is ignored. +The folder pointed at must contain certificate(s) named according to their hash. +Ex: XXXXXXXX.Y where X is the hash value of a cert and Y is 0. If name collisions +occur because two different certs have the same hash value, Y can be incremented +in order to avoid conflict. To create a symbolic link to a certificate the following +command can be used from within the directory where the cert resides: + +C + +Alternatively, the package openssl-perl provides a command C that will +generate links like the one described above for ALL certs in a given folder. +Example usage: +C + =back =head2 Plugin C @@ -5226,6 +5595,7 @@ plugin's documentation above for details. + #Plugin "warehouse" ConnectID "db01" Username "oracle" Password "secret" @@ -5248,6 +5618,11 @@ values submitted to the daemon. Other than that, that name is not used. =over 4 +=item B I + +Use I as the plugin name when submitting query results from +this B. Defaults to 'oracle'. + =item B I Defines the "database alias" or "service name" to connect to. Usually, these @@ -5275,6 +5650,123 @@ refer to them from. =back +=head2 Plugin C + +The I plugin monitors the link status of I (OVS) +connected interfaces, dispatches the values to collectd and sends the +notification whenever the link state change occurs. This plugin uses OVS +database to get a link state change notification. + +B + + + Port 6640 + Address "127.0.0.1" + Socket "/var/run/openvswitch/db.sock" + Interfaces "br0" "veth0" + SendNotification true + DispatchValues false + + +The plugin provides the following configuration options: + +=over 4 + +=item B
I + +The address of the OVS DB server JSON-RPC interface used by the plugin. To +enable the interface, OVS DB daemon should be running with C<--remote=ptcp:> +option. See L for more details. The option may be either +network hostname, IPv4 numbers-and-dots notation or IPv6 hexadecimal string +format. Defaults to B<'localhost'>. + +=item B I + +TCP-port to connect to. Either a service name or a port number may be given. +Defaults to B<6640>. + +=item B I + +The UNIX domain socket path of OVS DB server JSON-RPC interface used by the +plugin. To enable the interface, the OVS DB daemon should be running with +C<--remote=punix:> option. See L for more details. If this +option is set, B
and B options are ignored. + +=item B [I ...] + +List of interface names to be monitored by this plugin. If this option is not +specified or is empty then all OVS connected interfaces on all bridges are +monitored. + +Default: empty (all interfaces on all bridges are monitored) + +=item B I + +If set to true, OVS link notifications (interface status and OVS DB connection +terminate) are sent to collectd. Default value is true. + +=item B I + +Dispatch the OVS DB interface link status value with configured plugin interval. +Defaults to false. Please note, if B and B +options are false, no OVS information will be provided by the plugin. + +=back + +B By default, the global interval setting is used within which to +retrieve the OVS link status. To configure a plugin-specific interval, please +use B option of the OVS B block settings. For milliseconds +simple divide the time by 1000 for example if the desired interval is 50ms, set +interval to 0.05. + +=head2 Plugin C + +The I plugin collects statistics of OVS connected interfaces. +This plugin uses OVSDB management protocol (RFC7047) monitor mechanism to get +statistics from OVSDB + +B + + + Port 6640 + Address "127.0.0.1" + Socket "/var/run/openvswitch/db.sock" + Bridges "br0" "br_ext" + + +The plugin provides the following configuration options: + +=over 4 + +=item B
I + +The address of the OVS DB server JSON-RPC interface used by the plugin. To +enable the interface, OVS DB daemon should be running with C<--remote=ptcp:> +option. See L for more details. The option may be either +network hostname, IPv4 numbers-and-dots notation or IPv6 hexadecimal string +format. Defaults to B<'localhost'>. + +=item B I + +TCP-port to connect to. Either a service name or a port number may be given. +Defaults to B<6640>. + +=item B I + +The UNIX domain socket path of OVS DB server JSON-RPC interface used by the +plugin. To enable the interface, the OVS DB daemon should be running with +C<--remote=punix:> option. See L for more details. If this +option is set, B
and B options are ignored. + +=item B [I ...] + +List of OVS bridge names to be monitored by this plugin. If this option is +omitted or is empty then all OVS bridges will be monitored. + +Default: empty (monitor all bridges) + +=back + =head2 Plugin C This plugin embeds a Perl-interpreter into collectd and provides an interface @@ -5484,6 +5976,7 @@ L. + Plugin "kingdom" Host "hostname" Port "5432" User "username" @@ -5723,7 +6216,7 @@ values are made available through those parameters: =item B<$1> -The timestamp of the queried value as a floating point number. +The timestamp of the queried value as an RFC 3339-formatted local time. =item B<$2> @@ -5805,6 +6298,11 @@ activating this option. The draw-back is, that data covering the specified amount of time will be lost, for example, if a single statement within the transaction fails or if the database server crashes. +=item B I + +Use I as the plugin name when submitting query results from +this B. Defaults to 'postgresql'. + =item B I Specify the plugin instance name that should be used instead of the database @@ -6063,9 +6561,15 @@ C/var/run/collectd-powerdns>. =item B I Select more detailed statistics of processes matching this name. The statistics -collected for these selected processes are size of the resident segment size -(RSS), user- and system-time used, number of processes and number of threads, -io data (where available) and minor and major pagefaults. +collected for these selected processes are: + - size of the resident segment size (RSS) + - user- and system-time used + - number of processes + - number of threads + - number of open files (under Linux) + - io data (where available) + - context switches (under Linux) + - minor and major pagefaults. Some platforms have a limit on the length of process names. I must stay below this limit. @@ -6687,6 +7191,115 @@ 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 plugin is an AgentX subagent that receives and handles queries +from SNMP master agent and returns the data collected by read plugins. +The I plugin handles requests only for OIDs specified in +configuration file. To handle SNMP queries the plugin gets data from collectd +and translates requested values from collectd's internal format to SNMP format. +This plugin is a generic plugin and cannot work without configuration. +For more details on AgentX subagent see + + +B + + + + Plugin "memory" + Type "memory" + TypeInstance "free" + OIDs "1.3.6.1.4.1.2021.4.6.0" + + + IndexOID "IF-MIB::ifIndex" + SizeOID "IF-MIB::ifNumber" + + Instance true + Plugin "interface" + OIDs "IF-MIB::ifDescr" + + + Plugin "interface" + Type "if_octets" + TypeInstance "" + OIDs "IF-MIB::ifInOctets" "IF-MIB::ifOutOctets" + +
+
+ +There are two types of blocks that can be contained in the +CPluginE snmp_agentE> block: B and B: + +=head3 The B block + +The B block defines a list OIDs that are to be handled. This block can +define scalar or table OIDs. If B block is defined inside of B
+block it reperesents table OIDs. +The following options can be set: + +=over 4 + +=item B I + +When B is set to B, the value for requested OID is copied from +plugin instance field of corresponding collectd value. If B block defines +scalar data type B has no effect and can be omitted. + +=item B I + +Read plugin name whose collected data will be mapped to specified OIDs. + +=item B I + +Collectd's type that is to be used for specified OID, e.Eg. "if_octets" +for example. The types are read from the B (see L). + +=item B I + +Collectd's type-instance that is to be used for specified OID. + +=item B I [I ...] + +Configures the OIDs to be handled by I plugin. Values for these OIDs +are taken from collectd data type specified by B, B, +B fields of this B block. Number of the OIDs configured +should correspond to number of values in specified B. +For example two OIDs "IF-MIB::ifInOctets" "IF-MIB::ifOutOctets" can be mapped to +"rx" and "tx" values of "if_octets" type. + +=item B I + +The values taken from collectd are multiplied by I. The field is optional +and the default is B<1.0>. + +=item B I + +I is added to values from collectd after they have been multiplied by +B value. The field is optional and the default value is B<0.0>. + +=back + +=head3 The B
block + +The B
block defines a collection of B blocks that belong to one +snmp table. In addition to multiple B blocks the following options can be +set: + +=over 4 + +=item B I + +OID that is handled by the plugin and is mapped to numerical index value that is +generated by the plugin for each table record. + +=item B I + +OID that is handled by the plugin. Returned value is the number of records in +the table. The field is optional. + +=back + =head2 Plugin C The I listens to a UDP socket, reads "events" in the statsd @@ -6939,6 +7552,15 @@ user using (extended) regular expressions, as described in L. Type "counter" Instance "local_user" + + Regex "l=([0-9]*\\.[0-9]*)" + + Percentile 99 + Bucket 0 100 + + Type "latency" + Instance "foo" + @@ -7001,6 +7623,13 @@ Use the greatest number only. Use the last number found. +=item B + +Use the last number found. The number is not reset at the end of an interval. +It is continously reported until another number is matched. This is intended +for cases in which only state changes are reported, for example a thermometer +that only reports the temperature when it changes. + =item B =item B @@ -7030,14 +7659,74 @@ 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. +=item B + +Type to do calculations based on the distribution of values, primarily +calculating percentiles. This is primarily geared towards latency, but can be +used for other metrics as well. The range of values tracked with this setting +must be in the range (0–2^34) and can be fractional. Please note that neither +zero nor 2^34 are inclusive bounds, i.e. zero I be handled by a +distribution. + +This option must be used together with the B and/or B +options. + +B + + + Percentile 99 + Bucket 0 100 + + +=over 4 + +=item B I + +Calculate and dispatch the configured percentile, i.e. compute the value, so +that I of all matched values are smaller than or equal to the computed +latency. + +Metrics are reported with the I B (the value of the above option) +and the I C<[EInstanceE-]EPercentE>. + +This option may be repeated to calculate more than one percentile. + +=item B I I + +Export the number of values (a C) falling within the given range. Both, +I and I may be a fractional number, such as B<0.5>. +Each B option specifies an interval C<(I, +I]>, i.e. the range I the lower bound and I +the upper bound. I and I may be zero, meaning no +lower/upper bound. + +To export the entire (0–inf) range without overlap, use the upper bound of the +previous range as the lower bound of the following range. In other words, use +the following schema: + + Bucket 0 1 + Bucket 1 2 + Bucket 2 5 + Bucket 5 10 + Bucket 10 20 + Bucket 20 50 + Bucket 50 0 + +Metrics are reported with the I C and the I +CTypeE[-EInstanceE]-Elower_boundE_Eupper_boundE>. + +This option may be repeated to calculate more than one rate. + +=back + =back -As you'd expect the B types interpret the submatch as a floating point -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. +The B and B types interpret the submatch as a floating +point 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 @@ -7294,7 +7983,7 @@ couple metrics: number of records, and database size on disk. =item B I -The hostname or ip which identifies the server. +The hostname or IP which identifies the server. Default: B<127.0.0.1> =item B I @@ -7308,61 +7997,60 @@ Default: B<1978> =head2 Plugin C The I reads CPU frequency and C-state residency on modern -Intel processors by using the new Model Specific Registers. +Intel processors by using I. =over 4 =item B I -Bitmask of the list of core C states supported by the processor. +Bit mask of the list of core C-states supported by the processor. This option should only be used if the automated detection fails. -Default value extracted from the cpu model and family. +Default value extracted from the CPU model and family. Currently supported C-states (by this plugin): 3, 6, 7 -Example: (1<<3)+(1<<6)+(1<<7) = 392 for all states +B + + All states (3, 6 and 7): + (1<<3) + (1<<6) + (1<<7) = 392 =item B I -Bitmask of the list of pacages C states supported by the processor. -This option should only be used if the automated detection fails. -Default value extracted from the cpu model and family. +Bit mask of the list of packages C-states supported by the processor. This +option should only be used if the automated detection fails. Default value +extracted from the CPU model and family. Currently supported C-states (by this plugin): 2, 3, 6, 7, 8, 9, 10 -Example: (1<<2)+(1<<3)+(1<<6)+(1<<7) = 396 for states 2, 3, 6 and 7 +B -=item B I|I - -Boolean enabling the collection of the I/O System-Management Interrupt -counter'. This option should only be used if the automated detection -fails or if you want to disable this feature. + States 2, 3, 6 and 7: + (1<<2) + (1<<3) + (1<<6) + (1<<7) = 396 -=item B I|I +=item B I|I -Boolean enabling the collection of the temperature of each core. -This option should only be used if the automated detectionfails or -if you want to disable this feature. +Boolean enabling the collection of the I/O System-Management Interrupt counter. +This option should only be used if the automated detection fails or if you want +to disable this feature. =item B I|I -Boolean enabling the collection of the temperature of each package. -This option should only be used if the automated detectionfails or -if you want to disable this feature. +Boolean enabling the collection of the temperature of each core. This option +should only be used if the automated detection fails or if you want to disable +this feature. =item B I -Thermal Control Circuit Activation Temperature of the installed -CPU. This temperature is used when collecting the temperature of -cores or packages. This option should only be used if the automated -detection fails. Default value extracted from B +I of the installed CPU. This +temperature is used when collecting the temperature of cores or packages. This +option should only be used if the automated detection fails. Default value +extracted from B. =item B I -Bitmask of the list of elements to be thermally monitored. This option -should only be used if the automated detection fails or if you want to -disable some collections. The different bits of this bitmask accepted -by this plugin are: +Bit mask of the list of elements to be thermally monitored. This option should +only be used if the automated detection fails or if you want to disable some +collections. The different bits of this bit mask accepted by this plugin are: =over 4 @@ -7376,6 +8064,14 @@ by this plugin are: =back +=item B I|I + +Boolean enabling the use of logical core numbering for per core statistics. +When enabled, CnE> is used as plugin instance, where I is a +sequential number assigned by the kernel. Otherwise, CnE> is used +where I is the n-th core of the socket, causing name conflicts when there is +more than one socket. + =back =head2 Plugin C @@ -7600,11 +8296,11 @@ Collect statistics about worker threads. False by default. =head2 Plugin C -This plugin allows CPU, disk and network load to be collected for virtualized -guests on the machine. This means that these metrics can be collected for guest -systems without installing any software on them - I only runs on the -host system. The statistics are collected through libvirt -(L). +This plugin allows CPU, disk, network load and other metrics to be collected for +virtualized guests on the machine. The statistics are collected through libvirt +API (L). Majority of metrics can be gathered without +installing any additional software on guests, especially I, which runs +only on the host system. Only I is required. @@ -7657,6 +8353,49 @@ Example: Ignore all I devices on any domain, but other block devices (eg. I) will be collected. +=item B B|B + +If I is set to B, the default, then the device name +seen by the guest will be used for reporting metrics. +This corresponds to the CtargetE> node in the XML definition of the +domain. + +If I is set to B, then metrics will be reported +using the path of the source, e.g. an image file. +This corresponds to the CsourceE> node in the XML definition of the +domain. + +B + +If the domain XML have the following device defined: + + + + + + +
+ + +Setting C will cause the I to be set +to C. +Setting C will cause the I to be set +to C. + +=item B B|B + +The B controls whether the full path or the +L of the source is being used as the I when +B is set to B. Defaults to B. + +B + +Assume the device path (source tag) is C. +Setting C will cause the I to +be set to C. +Setting C will cause the I to be +set to C. + =item B B When the virt plugin logs data, it sets the hostname of the collected data @@ -7699,6 +8438,61 @@ You can also specify combinations of the B and B fields. For example B means to concatenate the guest name and UUID (with a literal colon character between, thus I<"foo:1234-1234-1234-1234">). +=item B B + +How many read instances you want to use for this plugin. The default is one, +and the sensible setting is a multiple of the B value. +If you are not sure, just use the default setting. + +=item B B + +Report additional extra statistics. The default is no extra statistics, preserving +the previous behaviour of the plugin. If unsure, leave the default. If enabled, +allows the plugin to reported more detailed statistics about the behaviour of +Virtual Machines. The argument is a space-separated list of selectors. + +Currently supported selectors are: + +=over 4 + +=item B: report CPU utilization per domain in percentage. + +=item B: report extra statistics like number of flush operations and total +service time for read, write and flush operations. Requires libvirt API version +I<0.9.5> or later. + +=item B: report disk errors if any occured. Requires libvirt API version +I<0.9.10> or later. + +=item B: report domain state and reason in human-readable format as +a notification. If libvirt API version I<0.9.2> or later is available, domain +reason will be included in notification. + +=item B: report file system information as a notification. Requires +libvirt API version I<1.2.11> or later. Can be collected only if I +is installed and configured inside VM. Make sure that installed I +version supports retrieving file system information. + +=item B: report statistics about progress of a background +job on a domain. Only one type of job statistics can be collected at the same time. +Requires libvirt API version I<1.2.9> or later. + +=item B: report statistics about a recently completed job on +a domain. Only one type of job statistics can be collected at the same time. +Requires libvirt API version I<1.2.9> or later. + +=item B: report the physical user/system cpu time consumed by the hypervisor, per-vm. +Requires libvirt API version I<0.9.11> or later. + +=item B: report performance monitoring events. To collect performance +metrics they must be enabled for domain and supported by the platform. Requires +libvirt API version I<1.3.3> or later. +B: I metrics can't be collected if I plugin is enabled. + +=item B: report pinning of domain VCPUs to host physical CPUs. + +=back + =back =head2 Plugin C @@ -7823,6 +8617,38 @@ If set to B, append the name of the I (DS) to the "metric" identifier. If set to B (the default), this is only done when there is more than one DS. +=item B B|B + +If set to B (the default) the C<.> (dot) character is replaced with +I. Otherwise, if set to B, the C<.> (dot) character +is preserved, i.e. passed through. + +=item B B|B + +If set to B, detect and remove duplicate components in Graphite metric +names. For example, the metric name C will +be shortened to C. + +=back + +=head2 Plugin C + +The C plugin writes metrics as INFO log messages. + +This plugin supports two output formats: I and I. + +Synopsis: + + + Format Graphite + + +=over 4 + +=item B I + +The output format to use. Can be one of C or C. + =back =head2 Plugin C @@ -7837,6 +8663,8 @@ packets. Synopsis: + ResolveInterval 60 + ResolveJitter 60 Host "tsd-1.my.domain" Port "4242" @@ -7845,7 +8673,36 @@ Synopsis: The configuration consists of one or more EBEIE -blocks. Inside the B blocks, the following options are recognized: +blocks and global directives. + +Global directives are: + +=over 4 + +=item B I + +=item B I + +When I connects to a TSDB node, it will request the hostname from +DNS. This can become a problem if the TSDB node is unavailable or badly +configured because collectd will request DNS in order to reconnect for every +metric, which can flood your DNS. So you can cache the last value for +I seconds. +Defaults to the I of the I, e.g. 10Eseconds. + +You can also define a jitter, a random interval to wait in addition to +I. This prevents all your collectd servers to resolve the +hostname at the same time when the connection fails. +Defaults to the I of the I, e.g. 10Eseconds. + +B If the DNS resolution has already been successful when the socket +closes, the plugin will try to reconnect immediately with the cached +information. DNS is queried only when the socket is closed for a longer than +I + I seconds. + +=back + +Inside the B blocks, the following options are recognized: =over 4 @@ -7931,6 +8788,41 @@ want to use authentication all three fields must be set. =back +=head2 Plugin C + +The I implements a tiny webserver that can be scraped +using I. + +B + +=over 4 + +=item B I + +Port the embedded webserver should listen on. Defaults to B<9103>. + +=item B I + +Time in seconds after which I considers a metric "stale" if it +hasn't seen any update for it. This value must match the setting in Prometheus. +It defaults to B<300> seconds (5 minutes), same as Prometheus. + +B + +I has a global setting, C, which controls after +which time a metric without updates is considered "stale". This setting +effectively puts an upper limit on the interval in which metrics are reported. + +When the I encounters a metric with an interval +exceeding this limit, it will inform you, the user, and provide the metric to +I B a timestamp. That causes I to consider the +metric "fresh" each time it is scraped, with the time of the scrape being +considered the time of the update. The result is that there appear more +datapoints in I than were actually created, but at least the metric +doesn't disappear periodically. + +=back + =head2 Plugin C This output plugin submits values to an HTTP server using POST requests and @@ -8027,6 +8919,23 @@ create output in the I (JSON). When set to KAIROSDB Defaults to B. +=item B I I + +Only available for the KAIROSDB output format. + +Consider the two given strings to be the key and value of an additional tag for +each metric being sent out. + +You can add multiple B. + +=item B I + +Only available for the KAIROSDB output format. + +Sets the Cassandra ttl for the data points. + +Please refer to L + =item B B|B Controls whether I are POSTed to this location. Defaults to B. @@ -8164,6 +9073,18 @@ path component, for example C. If set to B (the default), the plugin and plugin instance (and likewise the type and type instance) are put into one component, for example C. +=item B B|B + +If set to B, append the name of the I (DS) to the "metric" +identifier. If set to B (the default), this is only done when there is +more than one DS. + +=item B B|B + +If set to B (the default) the C<.> (dot) character is replaced with +I. Otherwise, if set to B, the C<.> (dot) character +is preserved, i.e. passed through. + =item B B|B If set to B (the default), convert counter values to rates. If set to @@ -9098,6 +10019,8 @@ Available options: =item B I +=item B I I + Match values where the given regular expressions match the various fields of the identifier of a value. If multiple regular expressions are given, B regexen must match for a value to match. @@ -9386,6 +10309,10 @@ Available options: =item B I I +=item B I I I + +=item B I I + Match the appropriate field with the given regular expression I. If the regular expression matches, that part that matches is replaced with I. If multiple places of the input buffer match a given regular @@ -9424,9 +10351,37 @@ Available options: =item B I I -Set the appropriate field to the given string. The strings for plugin instance -and type instance may be empty, the strings for host and plugin may not be -empty. It's currently not possible to set the type of a value this way. +Set the appropriate field to the given string. The strings for plugin instance, +type instance, and meta data may be empty, the strings for host and plugin may +not be empty. It's currently not possible to set the type of a value this way. + +The following placeholders will be replaced by an appropriate value: + +=over 4 + +=item B<%{host}> + +=item B<%{plugin}> + +=item B<%{plugin_instance}> + +=item B<%{type}> + +=item B<%{type_instance}> + +These placeholders are replaced by the identifier field of the same name. + +=item B<%{meta:>IB<}> + +These placeholders are replaced by the meta data value with the given name. + +=back + +Please note that these placeholders are B! + +=item B I + +Delete the named meta data field. =back