Merge remote-tracking branch 'github/pr/734'
authorFlorian Forster <octo@collectd.org>
Tue, 23 Sep 2014 14:09:47 +0000 (07:09 -0700)
committerFlorian Forster <octo@collectd.org>
Tue, 23 Sep 2014 14:09:47 +0000 (07:09 -0700)
1  2 
src/collectd.conf.in
src/collectd.conf.pod

diff --combined src/collectd.conf.in
  #@BUILD_PLUGIN_IPVS_TRUE@LoadPlugin ipvs
  #@BUILD_PLUGIN_IRQ_TRUE@LoadPlugin irq
  #@BUILD_PLUGIN_JAVA_TRUE@LoadPlugin java
 -#@BUILD_PLUGIN_LIBVIRT_TRUE@LoadPlugin libvirt
  @BUILD_PLUGIN_LOAD_TRUE@@BUILD_PLUGIN_LOAD_TRUE@LoadPlugin load
  #@BUILD_PLUGIN_LPAR_TRUE@LoadPlugin lpar
  #@BUILD_PLUGIN_LVM_TRUE@LoadPlugin lvm
  #@BUILD_PLUGIN_UUID_TRUE@LoadPlugin uuid
  #@BUILD_PLUGIN_VARNISH_TRUE@LoadPlugin varnish
  #@BUILD_PLUGIN_MIC_TRUE@LoadPlugin mic
 +#@BUILD_PLUGIN_VIRT_TRUE@LoadPlugin virt
  #@BUILD_PLUGIN_VMEM_TRUE@LoadPlugin vmem
  #@BUILD_PLUGIN_VSERVER_TRUE@LoadPlugin vserver
  #@BUILD_PLUGIN_WIRELESS_TRUE@LoadPlugin wireless
  #</Plugin>
  
  #<Plugin cpu>
- #  ReportActive false
  #  ReportByCpu true
+ #  ReportByState true
  #  ValuesPercentage false
  #</Plugin>
  #
  #     </Plugin>
  #</Plugin>
  
 -#<Plugin libvirt>
 -#     Connection "xen:///"
 -#     RefreshInterval 60
 -#     Domain "name"
 -#     BlockDevice "name:device"
 -#     InterfaceDevice "name:device"
 -#     IgnoreSelected false
 -#     HostnameFormat name
 -#     InterfaceFormat name
 -#     PluginInstanceFormat name
 -#</Plugin>
 -
  #<Plugin load>
  #        ReportRelative true
  #</Plugin>
  #   </Instance>
  #</Plugin>
  
 +#<Plugin virt>
 +#     Connection "xen:///"
 +#     RefreshInterval 60
 +#     Domain "name"
 +#     BlockDevice "name:device"
 +#     InterfaceDevice "name:device"
 +#     IgnoreSelected false
 +#     HostnameFormat name
 +#     InterfaceFormat name
 +#     PluginInstanceFormat name
 +#</Plugin>
 +
  #<Plugin vmem>
  #     Verbose false
  #</Plugin>
diff --combined src/collectd.conf.pod
@@@ -860,7 -860,7 +860,7 @@@ and are checked by default depends on t
  
  This plugin reads absolute air pressure using digital barometer sensor MPL115A2
  or MPL3115 from Freescale (sensor attached to any I2C bus available in
 -the computer, for HW details see 
 +the computer, for HW details see
  I<http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MPL115A> or
  I<http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MPL3115A2>).
  The sensor type - one fo these two - is detected automatically by the plugin
@@@ -973,7 -973,7 +973,7 @@@ Temperature sensor which should be use
  When specified more sensors a minumum is found and uses each time.
  The temperature reading directly from this pressure sensor/plugin
  is typically not suitable as the pressure sensor
 -will be probably inside while we want outside temperature. 
 +will be probably inside while we want outside temperature.
  The collectd reference name is something like
  <hostname>/<plugin_name>-<plugin_instance>/<type>-<type_instance>
  (<type_instance> is usually omitted when there is just single value type).
@@@ -1207,29 -1207,53 +1207,53 @@@ F</proc/sys/net/ipv4/netfilter> instea
  
  =head2 Plugin C<cpu>
  
- The I<CPU plugin> collects CPU usage metrics.
+ The I<CPU plugin> collects CPU usage metrics. By default, CPU usage is reported
+ as Jiffies, using the C<cpu> type. Two aggregations are available:
+ =over 4
+ =item
+ Sum, per-state, over all CPUs installed in the system; and
+ =item
+ Sum, per-CPU, over all non-idle states of a CPU, creating an "active" state.
+ =back
+ The two aggregations can be combined, leading to I<collectd> only emitting a
+ single "active" metric for the entire system. As soon as one of these
+ aggregations (or both) is enabled, the I<cpu plugin> will report a percentage,
+ rather than Jiffies. In addition, you can request individual, per-state,
+ per-CPU metrics to be reported as percentage.
  
  The following configuration options are available:
  
  =over 4
  
- =item B<ReportActive> B<false>|B<true>
+ =item B<ReportByState> B<true>|B<false>
  
- Reports non-idle CPU usage as the "active" value. Defaults to false.
+ When set to B<true>, the default, reports per-state metrics, e.g. "system",
+ "user" and "idle".
+ When set to B<false>, aggregates (sums) all I<non-idle> states into one
+ "active" metric.
  
- =item B<ReportByCpu> B<false>|B<true>
+ =item B<ReportByCpu> B<true>|B<false>
  
- When true reports usage for all cores. When false, reports cpu usage
- aggregated over all cores.
Defaults to true.
+ When set to B<true>, the default, reports per-CPU (per-core) metrics.
+ When set to B<false>, instead of reporting metrics for individual CPUs, only a
global sum of CPU states is emitted.
  
  =item B<ValuesPercentage> B<false>|B<true>
  
- When true report percentage usage instead of tick values. Defaults to false.
+ This option is only considered when both, B<ReportByCpu> and B<ReportByState>
+ are set to B<true>. In this case, by default, metrics will be reported as
+ Jiffies. By setting this option to B<true>, you can request percentage values
+ in the un-aggregated (per-CPU, per-state) mode as well.
  
  =back
  
  =head2 Plugin C<cpufreq>
  
  This plugin doesn't have any options. It reads
@@@ -1786,7 -1810,7 +1810,7 @@@ There must be at least one B<ValuesFrom
  =item B<MetadataFrom> [I<column0> I<column1> ...]
  
  Names the columns whose content is used as metadata for the data sets
 -that are dispatched to the daemon. 
 +that are dispatched to the daemon.
  
  The actual data type in the columns is not that important. The plugin will
  automatically cast the values to the right type if it know how to do that. So
@@@ -2430,6 -2454,101 +2454,6 @@@ independent from the I<JavaClass> argum
  
  =back
  
 -=head2 Plugin C<libvirt>
 -
 -This plugin allows CPU, disk and network load to be collected for virtualized
 -guests on the machine. This means that these characteristics can be collected
 -for guest systems without installing any software on them - collectd only runs
 -on the hosting system. The statistics are collected through libvirt
 -(L<http://libvirt.org/>).
 -
 -Only I<Connection> is required.
 -
 -=over 4
 -
 -=item B<Connection> I<uri>
 -
 -Connect to the hypervisor given by I<uri>. For example if using Xen use:
 -
 - Connection "xen:///"
 -
 -Details which URIs allowed are given at L<http://libvirt.org/uri.html>.
 -
 -=item B<RefreshInterval> I<seconds>
 -
 -Refresh the list of domains and devices every I<seconds>. The default is 60
 -seconds. Setting this to be the same or smaller than the I<Interval> will cause
 -the list of domains and devices to be refreshed on every iteration.
 -
 -Refreshing the devices in particular is quite a costly operation, so if your
 -virtualization setup is static you might consider increasing this. If this
 -option is set to 0, refreshing is disabled completely.
 -
 -=item B<Domain> I<name>
 -
 -=item B<BlockDevice> I<name:dev>
 -
 -=item B<InterfaceDevice> I<name:dev>
 -
 -=item B<IgnoreSelected> I<true>|I<false>
 -
 -Select which domains and devices are collected.
 -
 -If I<IgnoreSelected> is not given or I<false> then only the listed domains and
 -disk/network devices are collected.
 -
 -If I<IgnoreSelected> is I<true> then the test is reversed and the listed
 -domains and disk/network devices are ignored, while the rest are collected.
 -
 -The domain name and device names may use a regular expression, if the name is
 -surrounded by I</.../> and collectd was compiled with support for regexps.
 -
 -The default is to collect statistics for all domains and all their devices.
 -
 -Example:
 -
 - BlockDevice "/:hdb/"
 - IgnoreSelected "true"
 -
 -Ignore all I<hdb> devices on any domain, but other block devices (eg. I<hda>)
 -will be collected.
 -
 -=item B<HostnameFormat> B<name|uuid|hostname|...>
 -
 -When the libvirt plugin logs data, it sets the hostname of the collected data
 -according to this setting. The default is to use the guest name as provided by
 -the hypervisor, which is equal to setting B<name>.
 -
 -B<uuid> means use the guest's UUID. This is useful if you want to track the
 -same guest across migrations.
 -
 -B<hostname> means to use the global B<Hostname> setting, which is probably not
 -useful on its own because all guests will appear to have the same name.
 -
 -You can also specify combinations of these fields. For example B<name uuid>
 -means to concatenate the guest name and UUID (with a literal colon character
 -between, thus I<"foo:1234-1234-1234-1234">).
 -
 -=item B<InterfaceFormat> B<name>|B<address>
 -
 -When the libvirt plugin logs interface data, it sets the name of the collected
 -data according to this setting. The default is to use the path as provided by
 -the hypervisor (the "dev" property of the target node), which is equal to
 -setting B<name>.
 -
 -B<address> means use the interface's mac address. This is useful since the
 -interface path might change between reboots of a guest or across migrations.
 -
 -=item B<PluginInstanceFormat> B<name|uuid>
 -
 -When the libvirt plugin logs data, it sets the plugin_instance of the collected 
 -data according to this setting. The default is to use the guest name as provided 
 -by the hypervisor, which is equal to setting B<name>.
 -
 -B<uuid> means use the guest's UUID.
 -
 -=back
 -
  =head2 Plugin C<load>
  
  The I<Load plugin> collects the system load. These numbers give a rough overview
@@@ -6409,101 -6528,6 +6433,101 @@@ Collect statistics about worker threads
  
  =back
  
 +=head2 Plugin C<virt>
 +
 +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<collectd> only runs on the
 +host system. The statistics are collected through libvirt
 +(L<http://libvirt.org/>).
 +
 +Only I<Connection> is required.
 +
 +=over 4
 +
 +=item B<Connection> I<uri>
 +
 +Connect to the hypervisor given by I<uri>. For example if using Xen use:
 +
 + Connection "xen:///"
 +
 +Details which URIs allowed are given at L<http://libvirt.org/uri.html>.
 +
 +=item B<RefreshInterval> I<seconds>
 +
 +Refresh the list of domains and devices every I<seconds>. The default is 60
 +seconds. Setting this to be the same or smaller than the I<Interval> will cause
 +the list of domains and devices to be refreshed on every iteration.
 +
 +Refreshing the devices in particular is quite a costly operation, so if your
 +virtualization setup is static you might consider increasing this. If this
 +option is set to 0, refreshing is disabled completely.
 +
 +=item B<Domain> I<name>
 +
 +=item B<BlockDevice> I<name:dev>
 +
 +=item B<InterfaceDevice> I<name:dev>
 +
 +=item B<IgnoreSelected> B<true>|B<false>
 +
 +Select which domains and devices are collected.
 +
 +If I<IgnoreSelected> is not given or B<false> then only the listed domains and
 +disk/network devices are collected.
 +
 +If I<IgnoreSelected> is B<true> then the test is reversed and the listed
 +domains and disk/network devices are ignored, while the rest are collected.
 +
 +The domain name and device names may use a regular expression, if the name is
 +surrounded by I</.../> and collectd was compiled with support for regexps.
 +
 +The default is to collect statistics for all domains and all their devices.
 +
 +Example:
 +
 + BlockDevice "/:hdb/"
 + IgnoreSelected "true"
 +
 +Ignore all I<hdb> devices on any domain, but other block devices (eg. I<hda>)
 +will be collected.
 +
 +=item B<HostnameFormat> B<name|uuid|hostname|...>
 +
 +When the libvirt plugin logs data, it sets the hostname of the collected data
 +according to this setting. The default is to use the guest name as provided by
 +the hypervisor, which is equal to setting B<name>.
 +
 +B<uuid> means use the guest's UUID. This is useful if you want to track the
 +same guest across migrations.
 +
 +B<hostname> means to use the global B<Hostname> setting, which is probably not
 +useful on its own because all guests will appear to have the same name.
 +
 +You can also specify combinations of these fields. For example B<name uuid>
 +means to concatenate the guest name and UUID (with a literal colon character
 +between, thus I<"foo:1234-1234-1234-1234">).
 +
 +=item B<InterfaceFormat> B<name>|B<address>
 +
 +When the libvirt plugin logs interface data, it sets the name of the collected
 +data according to this setting. The default is to use the path as provided by
 +the hypervisor (the "dev" property of the target node), which is equal to
 +setting B<name>.
 +
 +B<address> means use the interface's mac address. This is useful since the
 +interface path might change between reboots of a guest or across migrations.
 +
 +=item B<PluginInstanceFormat> B<name|uuid>
 +
 +When the libvirt plugin logs data, it sets the plugin_instance of the collected
 +data according to this setting. The default is to use the guest name as provided
 +by the hypervisor, which is equal to setting B<name>.
 +
 +B<uuid> means use the guest's UUID.
 +
 +=back
 +
  =head2 Plugin C<vmem>
  
  The C<vmem> plugin collects information about the usage of virtual memory.