Bug 597690
Summary: | Not showing disk and network stats | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | [Community] Virtualization Tools | Reporter: | Neil Aggarwal <neil> | ||||||
Component: | virt-top | Assignee: | Richard W.M. Jones <rjones> | ||||||
Status: | NEW --- | QA Contact: | |||||||
Severity: | medium | Docs Contact: | |||||||
Priority: | low | ||||||||
Version: | unspecified | CC: | clalance, jentrena, sluskyb, wolfram, w.schlich | ||||||
Target Milestone: | --- | ||||||||
Target Release: | --- | ||||||||
Hardware: | x86_64 | ||||||||
OS: | Linux | ||||||||
Whiteboard: | |||||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||||
Doc Text: | Story Points: | --- | |||||||
Clone Of: | Environment: | ||||||||
Last Closed: | Type: | --- | |||||||
Regression: | --- | Mount Type: | --- | ||||||
Documentation: | --- | CRM: | |||||||
Verified Versions: | Category: | --- | |||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||
Embargoed: | |||||||||
Attachments: |
|
Description
Neil Aggarwal
2010-05-30 04:56:06 UTC
(In reply to comment #0) > I tried to generate a debug log by running this command: > virt-top --debug virt-top.log > > When I do that, virt-top runs normally. > After exiting virt-top, the debug file is empty. It is created > by the program so it is doing something. That's good, because it means nothing is writing errors to stderr which are being lost. However for this I'd also like to see libvirt debugging, so can you do: export LIBVIRT_DEBUG=1 virt-top --debug virt-top.log and append the log file here. Created attachment 418641 [details]
Log with libvirt debugging
Same here, RDRQ WRRQ RXBY TXBY empty with 1.0.4 (not empty with 0.3.3.1). Same problem here. [root@r210xen ~]# virsh dumpxml rhel55pv <domain type='xen' id='3'> <name>rhel55pv</name> <uuid>2a616433-9be9-6a0b-8bb4-af780570b41f</uuid> <memory>524288</memory> <currentMemory>524288</currentMemory> <vcpu>1</vcpu> <bootloader>/usr/bin/pygrub</bootloader> <os> <type>linux</type> <kernel>/var/lib/xen/boot_kernel.E1DT0X</kernel> <initrd>/var/lib/xen/boot_ramdisk.kFPrQz</initrd> <cmdline>ro root=/dev/VolGroup00/LogVol00</cmdline> </os> <clock offset='utc'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> <disk type='block' device='disk'> <driver name='phy'/> <source dev='/dev/VolGroup01/rhel55pv'/> <target dev='xvda' bus='xen'/> </disk> <interface type='bridge'> <mac address='00:16:36:65:e2:2f'/> <source bridge='xenbr0'/> <script path='vif-bridge'/> <target dev='vif3.0'/> </interface> <console type='pty' tty='/dev/pts/1'> <source path='/dev/pts/1'/> <target port='0'/> </console> <input type='mouse' bus='xen'/> <graphics type='vnc' port='5900' autoport='yes' keymap='en-gb'/> </devices> </domain> [root@r210xen ~]# virsh domifstat rhel55pv vif3.0 vif3.0 rx_bytes 21124047 vif3.0 rx_packets 45256 vif3.0 rx_errs 0 vif3.0 rx_drop 3703 vif3.0 tx_bytes 482084 vif3.0 tx_packets 1884 vif3.0 tx_errs 0 vif3.0 tx_drop 0 [root@r210xen ~]# virsh domblkstat rhel55pv xvda xvda rd_req 13822 xvda rd_bytes 229754368 xvda wr_req 7523 xvda wr_bytes 64865280 xvda errs 0 virt-top --debug creates an empty debug file. I've setup a reproducer, please contact me if you need to access it. Julio, do the stats change over time, eg. if you run the domifstat command, wait a minute, then run it again? Yes, they do: [root@r210xen ~]# virsh domifstat rhel55pv vif3.0 vif3.0 rx_bytes 25297484 vif3.0 rx_packets 49236 vif3.0 rx_errs 0 vif3.0 rx_drop 3703 vif3.0 tx_bytes 557224 vif3.0 tx_packets 3055 vif3.0 tx_errs 0 vif3.0 tx_drop 0 [root@r210xen ~]# virsh domblkstat rhel55pv xvda xvda rd_req 19453 xvda rd_bytes 259163648 xvda wr_req 42542 xvda wr_bytes 227656704 xvda errs 0 OK I have a theory about why this is happening now. If you have EPEL 5, you could try this test ... # yum install ocaml ocaml-findlib-devel ocaml-libvirt-devel Copy the following into a file, change the guest and device if necessary, and make sure the file is chmod +x (executable): ----------------------- #!/usr/bin/ocamlrun /usr/bin/ocaml #use "topfind";; #require "libvirt";; let guest = "rhel55pv" let device = "xvda" open Printf let conn = Libvirt.Connect.connect_readonly () module D = Libvirt.Domain let dom = D.lookup_by_name conn guest let { D.rd_req = rd_req; rd_bytes = rd_bytes; wr_req = wr_req; wr_bytes = wr_bytes } = D.block_stats dom device let () = printf "rd_req = %Ld rd_bytes = %Ld\n" rd_req rd_bytes; printf "wr_req = %Ld wr_bytes = %Ld\n" wr_req wr_bytes ----------------------- sudo /tmp/test.ml For me, on Fedora, this prints stats, eg: rd_req = 120013 rd_bytes = 4103219200 wr_req = 37548 wr_bytes = 5163249664 but on RHEL 5 this prints an error: Exception: Libvirt.Not_supported "virDomainBlockStats". The good news is that if you can reproduce the same error, then it's very easy to fix -- just need a simple recompile against the updated libvirt. Richard, I can reproduce the same error: [root@r210xen ~]# /tmp/test.ml Exception: Libvirt.Not_supported "virDomainBlockStats". Richard, this BZ seems to be a duplicate of bz#487533. *** Bug 487533 has been marked as a duplicate of this bug. *** I agree. BTW someone with some spare time can just go ahead and fix this by rebuilding ocaml-libvirt and virt-top packages. I can confirm that this works, except that ocaml-libvirt-0.4.1.1 uses bits of libvirt that are deprecated in recent releases, and so can't be compiled with -Wall -Werror. Adding -Wno-deprecated-declarations fixes this. Created attachment 455851 [details]
Patch to compile ocaml-libvirt with -Wno-deprecated-declarations
|