64 lines
2.6 KiB
Plaintext
64 lines
2.6 KiB
Plaintext
Demonstrations of virtiostat, the Linux eBPF/bcc version.
|
|
|
|
|
|
This program traces virtio devices to analyze the IO operations and
|
|
throughput. For example, guest side mounts a 9p fs, and we can't get
|
|
io statistics by `iostat` command any more. In this scenario, we can
|
|
only get statistics from VIRTIO layer instead of block layer.
|
|
|
|
Example
|
|
#./virtiostat -T
|
|
Tracing virtio devices statistics ... Hit Ctrl-C to end.
|
|
14:48:30
|
|
Driver Device VQ Name In SGs Out SGs In BW Out BW
|
|
virtio_net virtio0 input.0 260669 0 406743040 0
|
|
virtio_net virtio0 output.0 0 9873 0 833344
|
|
virtio_blk virtio4 req.0 28 46 448 278976
|
|
9pnet_virtio virtio6 requests 99083 99354 1883687 137537263
|
|
14:48:33
|
|
Driver Device VQ Name In SGs Out SGs In BW Out BW
|
|
virtio_net virtio0 input.0 260718 0 406819328 0
|
|
virtio_net virtio0 output.0 0 7139 0 562355
|
|
virtio_blk virtio4 req.0 11 18 176 110768
|
|
9pnet_virtio virtio6 requests 91520 91141 1737364 125320785
|
|
|
|
|
|
Show virtio block devices only:
|
|
#./virtiostat.py -d virtio_blk
|
|
Tracing virtio devices statistics ... Hit Ctrl-C to end.
|
|
--------
|
|
Driver Device VQ Name In SGs Out SGs In BW Out BW
|
|
virtio_blk virtio4 req.0 4 6 4 24640
|
|
virtio_blk virtio5 req.0 678756 339378 1390431666 5430048
|
|
|
|
|
|
Full USAGE:
|
|
|
|
#./virtiostat -h
|
|
usage: virtiostat.py [-h] [-T] [-d DRIVER] [-n DEVNAME] [-D]
|
|
[interval] [count]
|
|
|
|
Show virtio devices input/output statistics
|
|
|
|
positional arguments:
|
|
interval output interval, in seconds
|
|
count number of outputs
|
|
|
|
optional arguments:
|
|
-h, --help show this help message and exit
|
|
-T, --timestamp show timestamp on output
|
|
-d DRIVER, --driver DRIVER
|
|
filter for driver name
|
|
-n DEVNAME, --devname DEVNAME
|
|
filter for device name
|
|
-D, --debug print BPF program before starting (for debugging
|
|
purposes)
|
|
|
|
examples:
|
|
./virtiostat # print 3(default) second summaries
|
|
./virtiostat 1 10 # print 1 second summaries, 10 times
|
|
./virtiostat -T # show timestamps
|
|
./virtiostat -d virtio_blk # only show virtio block devices
|
|
./virtiostat -n virtio0 # only show virtio0 device
|
|
./virtiostat -D # show debug bpf text
|