]> xenbits.xensource.com Git - libvirt.git/commitdiff
virsh: Introduce --nowait to domstats
authorMichal Privoznik <mprivozn@redhat.com>
Thu, 7 Jun 2018 11:30:01 +0000 (13:30 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Tue, 19 Jun 2018 05:08:13 +0000 (07:08 +0200)
This new switch can be used to set
VIR_CONNECT_GET_ALL_DOMAINS_STATS_NOWAIT flag for stats
fetching API.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: John Ferlan <jferlan@redhat.com>
tools/virsh-domain-monitor.c
tools/virsh.pod

index 8cbb3db37ccffae71d857a7b2c64ec214ee120c7..886f7f16b559a50dfac0aafcc44987eab033da61 100644 (file)
@@ -1992,6 +1992,10 @@ static const vshCmdOptDef opts_domstats[] = {
      .type = VSH_OT_BOOL,
      .help = N_("add backing chain information to block stats"),
     },
+    {.name = "nowait",
+     .type = VSH_OT_BOOL,
+     .help = N_("report only stats that are accessible instantly"),
+    },
     VIRSH_COMMON_OPT_DOMAIN_OT_ARGV(N_("list of domains to get stats for"), 0),
     {.name = NULL}
 };
@@ -2087,6 +2091,9 @@ cmdDomstats(vshControl *ctl, const vshCmd *cmd)
     if (vshCommandOptBool(cmd, "backing"))
         flags |= VIR_CONNECT_GET_ALL_DOMAINS_STATS_BACKING;
 
+    if (vshCommandOptBool(cmd, "nowait"))
+        flags |= VIR_CONNECT_GET_ALL_DOMAINS_STATS_NOWAIT;
+
     if (vshCommandOptBool(cmd, "domain")) {
         if (VIR_ALLOC_N(domlist, 1) < 0)
             goto cleanup;
index 3f3314a87e858883b5ee846f09929142564741b5..7cb8c8a6e43caa9b9522e459ecf77fdfe17e041c 100644 (file)
@@ -968,11 +968,11 @@ that require a block device name (such as I<domblkinfo> or
 I<snapshot-create> for disk snapshots) will accept either target
 or unique source names printed by this command.
 
-=item B<domstats> [I<--raw>] [I<--enforce>] [I<--backing>] [I<--state>]
-[I<--cpu-total>] [I<--balloon>] [I<--vcpu>] [I<--interface>] [I<--block>]
-[I<--perf>] [[I<--list-active>] [I<--list-inactive>] [I<--list-persistent>]
-[I<--list-transient>] [I<--list-running>] [I<--list-paused>]
-[I<--list-shutoff>] [I<--list-other>]] | [I<domain> ...]
+=item B<domstats> [I<--raw>] [I<--enforce>] [I<--backing>] [I<--nowait>]
+[I<--state>] [I<--cpu-total>] [I<--balloon>] [I<--vcpu>] [I<--interface>]
+[I<--block>] [I<--perf>] [[I<--list-active>] [I<--list-inactive>]
+[I<--list-persistent>] [I<--list-transient>] [I<--list-running>]
+[I<--list-paused>] [I<--list-shutoff>] [I<--list-other>]] | [I<domain> ...]
 
 Get statistics for multiple or all domains. Without any argument this
 command prints all available statistics for all domains.
@@ -1123,6 +1123,12 @@ daemon supports the selected group of stats. Flag I<--enforce>
 forces the command to fail if the daemon doesn't support the
 selected group.
 
+When collecting stats libvirtd may wait for some time if there's
+already another job running on given domain for it to finish.
+This may cause unnecessary delay in delivering stats. Using
+I<--nowait> suppresses this behaviour. On the other hand
+some statistics might be missing for such domain.
+
 =item B<domiflist> I<domain> [I<--inactive>]
 
 Print a table showing the brief information of all virtual interfaces