Using vscsiStats to collect IO and Latency stats on Virtual Disks
search cancel

Using vscsiStats to collect IO and Latency stats on Virtual Disks

book

Article ID: 310655

calendar_today

Updated On: 04-10-2025

Products

VMware vSphere ESXi

Issue/Introduction

This article provides steps for finding IO and Latency stats on Virtual Disks.

Environment

VMware vSphere ESXi

Resolution

Instructions on using vscsiStats to collect IO and Latency stats on Virtual Disks.

  1. Run this command to find the world ID of the virtual machine you want to watch:
    /usr/lib/vmware/bin/vscsiStats -l


    Output example:
    Virtual Machine worldGroupID: VM_ID1, Virtual Machine Display Name: vm_name {
    Virtual SCSI Disk handleID: 8192
    }
    Virtual Machine worldGroupID: VM_ID2, Virtual Machine Display Name: vm_name {
    Virtual SCSI Disk handleID: 8193
    }
    Virtual Machine worldGroupID: VM_ID2, Virtual Machine Display Name: vm_name {
    Virtual SCSI Disk handleID: 8196
    Virtual SCSI Disk handleID: 8197
    }
    Virtual Machine worldGroupID: VM_ID3, Virtual Machine Display Name: vm_name {
    Virtual SCSI Disk handleID: 8204
    }

  2. Run this command to start the recording:
    /usr/lib/vmware/bin/vscsiStats -s -t -w worldGroupID_from_step_1

    Note: This impacts virtual machine performance.

    The output appears similar to:

    vscsiStats: Starting Vscsi stats collection for worldGroup VM_ID1, handleID 8193
    vscsiStats: Starting Vscsi cmd tracing for worldGroup VM_ID1, handleID 8193
    <vscsiStats-traceChannel>vscsi_cmd_trace_VM_ID1_8193</vscsiStats-traceChannel>
    Success.

  3. Check the IOs and latency histogram:
    /usr/lib/vmware/bin/vscsiStats -p latency -w worldGroupID_from_step_1

    The output appears similar to:

    Histogram: latency of IOs in Microseconds (us) for virtual machine worldGroupID : VM_ID1, virtual disk handleID : 8193 {
    min : 5355
    max : 10604
    mean : 7376
    count : 4
    {
    0 (<= 1)
    0 (<= 10)
    0 (<= 100)
    0 (<= 500)
    0 (<= 1000)
    0 (<= 5000)
    4 (<= 15000)
    0 (<= 30000)
    0 (<= 50000)
    0 (<= 100000)
    0 (> 100000)
    }
    }
    Histogram: latency of Read IOs in Microseconds (us) for virtual machine worldGroupID : VM_ID1, virtual disk handleID : 8193 {
    min : 0
    max : 0
    mean : 0
    count : 0
    {
    0 (<= 1)
    0 (<= 10)
    0 (<= 100)
    0 (<= 500)
    0 (<= 1000)
    0 (<= 5000)
    0 (<= 15000)
    0 (<= 30000)
    0 (<= 50000)
    0 (<= 100000)
    0 (> 100000)
    }
    }
    Histogram: latency of Write IOs in Microseconds (us) for virtual machine worldGroupID : VM_ID1, virtual disk handleID : 8193 {
    min : 5355
    max : 10604
    mean : 7376
    count : 4
    {
    0 (<= 1)
    0 (<= 10)
    0 (<= 100)
    0 (<= 500)
    0 (<= 1000)
    0 (<= 5000)
    4 (<= 15000)
    0 (<= 30000)
    0 (<= 50000)
    0 (<= 100000)
    0 (> 100000)
    }
    }


  4. Run this command to stop the stats collection:
    /usr/lib/vmware/bin/vscsiStats -x -w worldGroupID_from_step_1



Additional Information

https://blogs.vmware.com/vsphere/2014/10/vmware-virtual-san-performance-testing-part-iii.html