Don't hard-code Storage API errors, in case building with older libvirt.
[virt-top.git] / TODO.virt-top
1 This is a list of bugs & tasks for virt-top.
2 ----------------------------------------------------------------------
3
4 *** 0 Use public CVS and bug tracker to replace this file (!)
5
6 *** 1 Segfault [FIXED 0.3.2.6]
7
8 I have seen this segfault once:
9 https://www.redhat.com/archives/libvir-list/2007-August/msg00214.html
10
11 It appeared to happen when several domains were shut down at the same
12 time, but has since been unreproducible.  Suspect crazy reference
13 counting in libvirt to be part of the problem.
14
15 [As suspected, turned out to be the crazy reference counting in
16 libvirt].
17
18 *** 2 Virt-top fails silently when started as non-root [FIXED 0.3.2.5]
19
20 *** 3 Irix/Solaris mode
21
22 'I' (toggles between 100% = all CPUs / 100% = single CPU).
23 In top this is called "Irix/Solaris mode" :-)
24
25 *** 4 [jmh] Build out the stats collected by the --csv <filename.csv> option.
26     [DONE 0.3.2.9]
27
28 Suggested being able to give a selection of VMs to monitor from the
29 command line.  Also, being able to monitor just particular subsystems
30 (-sc for CPU, -sm for memory, etc. as in collectl).
31
32 *** 5 [jmh & jneedham] Monitor resources used by dom0 on behalf of the guests.
33
34 So that if dom0 is throttled right down, is that affecting throughput
35 of guests?  I honestly don't know if it's possible to do this, but
36 I'll raise the issue upstream to see if they have any suggestions.
37
38 *** 6 Per-guest / per-interface network statistics. [PARTIALLY DONE 0.3.2.6]
39
40 Have a separate screen which breaks out the domain name / device name
41 and gives complete interface stats.
42
43 RXBY TXBY RXRQ TXRQ DOMAIN   INTERFACE
44   5M    0   48    0 debian   vif2.0
45   2M    0   20    0 oracle   vif3.1
46   1M   5K    8    2 oracle   vif3.0 
47
48 *** 7 Per-guest / per-device block statistics. [PARTIALLY DONE 0.3.2.6]
49
50 Have a separate screen which breaks out the domain name / device name
51 and gives complete block stats.
52
53 RDBY WRBY RDRQ WRRQ DOMAIN   DEVICE
54   5M    0   48    0 debian   hdb
55   2M    0   20    0 debian   hda
56   1M   5K    8    2 oracle   hda
57
58 *** 8 [jneedham asked for] %WAIT
59
60 I'm assuming this would mean in the context of the hypervisor, how
61 long are runnable domains waiting in the runqueue for access to a free
62 pCPU.  I will ask upstream whether this stat is available through Xen,
63 and if so put in place the infrastructure to monitor it.
64
65 *** 9 [jmh asked for] Configuration file or environment variable [DONE 0.3.2.8]
66
67 Thinking about maybe this is something we could controly via a
68 .virt-top-init file or an environment variable ?  The same could also
69 be true for other options such as the selection of subsystems and/or
70 ordering/sorting ?
71
72 *** 10 [jmh] End time for data collection [DONE 0.3.3.0]
73
74 In --script mode allow an end time to be specified (when the program
75 quits).  Be nice to allow the end time to also be specified relative
76 to the current time.
77
78 *** 11 [jmh] Roll over CSV log file
79     [PUNTED, but documented a way to do it using ordinary shell
80      scripting in the manual page]
81
82 In --csv mode, allow the CSV file to be rolled over and compressed
83 periodically (eg. every so often, specific time of day, etc.)
84
85 *** 12 [cywse] How much memory is a guest actually using
86
87 Can we look inside the guest to find out how much memory the guest
88 is actually using?  Scenario is: One guest is maxed out and swapping
89 while other guests aren't using much of their allocated memory.