Recording ESX or ESXi VMkernel state with vsi_traverse
search cancel

Recording ESX or ESXi VMkernel state with vsi_traverse


Article ID: 307906


Updated On:


VMware vSphere ESXi


This article provides steps to capture vsicache files at regular intervals.

Investigation of some classes of problems require review of statistics captured over time. Some statistics, such as network interface errors or dropped packets, can be captured from the VMkernel. These are included with a full ESX log bundle, but more than one sample may be required for trending.



VMware ESX Server 3.5.x
VMware vSphere ESXi 5.0
VMware ESXi 3.5.x Installable
VMware ESXi 4.1.x Installable
VMware vSphere ESXi 5.5
VMware ESX 4.0.x
VMware ESXi 4.0.x Embedded
VMware ESXi 4.0.x Installable
VMware vSphere ESXi 5.1
VMware ESXi 3.5.x Embedded
VMware ESX 4.1.x
VMware ESXi 4.1.x Embedded


The program /usr/lib/vmware/bin/vsi_traverse exports VMkernel state information to a cache file. This information may be requested by VMware Support.
To run the program /usr/lib/vmware/bin/vsi_traverse:
  1. Log in to the ESX/ESXi host at the console or via SSH.
  2. Ensure there is sufficient space available on disk. A vsicache file is approximately 60MB. For more information, see Investigating disk space on an ESX or ESXi host (1003564).
  3. Switch to an output directory. For example, run the command:
    cd /tmp/

  4. Run vsi_traverse the requested number of times. Here is an example of 20 iterations on 60 second intervals:

    for i in $(seq 1 20); do /usr/lib/vmware/bin/vsi_traverse; sleep 60; done

    Note: Files created by vsi_traverse are named vsicache-YYYYMMDD.n, with increasing starting at 0.

The set of vsicache files can be reviewed for trending of changes over time by VMware Support.

Additional Information

Investigating disk space on an ESX or ESXi host