Setting C<BlockDeviceFormatBasename true> will cause the I<type instance> to be
set to C<image1.qcow2>.
-=item B<HostnameFormat> B<name|uuid|hostname|...>
+=item B<HostnameFormat> B<name|uuid|hostname|metadata...>
When the virt 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
useful on its own because all guests will appear to have the same name. This is
useful in conjunction with B<PluginInstanceFormat> though.
+B<metadata> means use information from guest's metadata. Use
+B<HostnameMetadataNS> and B<HostnameMetadataXPath> to localize this information.
+
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">).
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|none>
+=item B<PluginInstanceFormat> B<name|uuid|metadata|none>
When the virt plugin logs data, it sets the plugin_instance of the collected
data according to this setting. The default is to not set the plugin_instance.
B<name> means use the guest's name as provided by the hypervisor.
B<uuid> means use the guest's UUID.
+B<metadata> means use information from guest's metadata.
You can also specify combinations of the B<name> and B<uuid> 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<HostnameMetadataNS> B<string>
+
+When B<metadata> is used in B<HostnameFormat> or B<PluginInstanceFormat>, this
+selects in which metadata namespace we will pick the hostname. The default is
+I<http://openstack.org/xmlns/libvirt/nova/1.0>.
+
+=item B<HostnameMetadataXPath> B<string>
+
+When B<metadata> is used in B<HostnameFormat> or B<PluginInstanceFormat>, this
+describes where the hostname is located in the libvirt metadata. The default is
+I</instance/name/text()>.
+
+=item B<Instances> B<integer>
+
+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<ReadThreads> value.
+If you are not sure, just use the default setting.
+
=item B<ExtraStats> B<string>
Report additional extra statistics. The default is no extra statistics, preserving
=back
=item B<PersistentNotification> B<true>|B<false>
+
Override default configuration to only send notifications when there is a change
in the lifecycle state of a domain. When set to true notifications will be sent
for every read cycle. Default is false. Does not affect the stats being
dispatched.
+ =item B<Instances> B<integer>
+
+ 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<ReadThreads> value.
+
+ This option is only useful then domains are specially tagged.
+ If you are not sure, just use the default setting.
+
+ The reader instance will only query the domains with attached a matching tag.
+ Tags should have the form of 'virt-X' where X is reader instance number,
+ starting from 0.
+
+ The special-purpose reader instance #0, guaranteed to be always present,
+ will query all the domains with missing or unrecognized tag, so no domain will
+ ever left out.
+
+ Domain tagging is done with custom attribute in the libvirt domain metadata
+ section. Value is taken by XPath I</domain/metadata/ovirtmap/tag/text()>
+ expression in I<http://ovirt.org/ovirtmap/tag/1.0> namespace.
+ (XPath and namespace values are not configurable yet).
+
+ Tagging could be used by management application to evenly spread the
+ load among the reader threads, or to pin on the same threads all
+ the libvirt domains which use the same shared storage, to minimize
+ the disruption in presence of storage outages.
+
=back
=head2 Plugin C<vmem>