Man Linux: Main Page and Category List


       dstat - versatile tool for generating system resource statistics


       dstat [-afv] [options..] [delay [count]]


       Dstat is a versatile replacement for vmstat, iostat and ifstat. Dstat
       overcomes some of the limitations and adds some extra features.

       Dstat allows you to view all of your system resources instantly, you
       can eg. compare disk usage in combination with interrupts from your IDE
       controller, or compare the network bandwidth numbers directly with the
       disk throughput (in the same interval).

       Dstat also cleverly gives you the most detailed information in columns
       and clearly indicates in what magnitude and unit the output is
       displayed. Less confusion, less mistakes, more efficient.

       Dstat is unique in letting you aggregate block device throughput for a
       certain diskset or network bandwidth for a group of interfaces, ie. you
       can see the throughput for all the block devices that make up a single
       filesystem or storage system.

       Dstat allows its data to be directly written to a CSV file to be
       imported and used by OpenOffice, Gnumeric or Excel to create graphs.

       Users of Sleuthkit might find Sleuthkit’s dstat being renamed to
       datastat to avoid a name conflict. See Debian bug #283709 for more


       -c, --cpu
              enable cpu stats (system, user, idle, wait, hardware interrupt,
              software interrupt)

       -C 0,3,total
              include cpu0, cpu3 and total

       -d, --disk
              enable disk stats (read, write)

       -D total,hda
              include hda and total

       -g, --page
              enable page stats (page in, page out)

       -i, --int
              enable interrupt stats

       -I 5,10
              include interrupt 5 and 10

       -l, --load
              enable load average stats (1 min, 5 mins, 15mins)

       -m, --mem
              enable memory stats (used, buffers, cache, free)

       -n, --net
              enable network stats (receive, send)

       -N eth1,total
              include eth1 and total

       -p, --proc
              enable process stats (runnable, uninterruptible, new)

       -r, --io
              enable I/O request stats (read, write requests)

       -s, --swap
              enable swap stats (used, free)

       -S swap1,total
              include swap1 and total

       -t, --time
              enable time/date output

       -T, --epoch
              enable time counter (seconds since epoch)

       -y, --sys
              enable system stats (interrupts, context switches)

       --aio  enable aio stats (asynchronous I/O)

       --fs   enable filesystem stats (open files, inodes)

       --ipc  enable ipc stats (message queue, semaphores, shared memory)

       --lock enable file lock stats (posix, flock, read, write)

       --raw  enable raw stats (raw sockets)

              enable socket stats (total, tcp, udp, raw, ip-fragments)

       --tcp  enable tcp stats (listen, established, syn, time_wait, close)

       --udp  enable udp stats (listen, active)

       --unix enable unix stats (datagram, stream, listen, active)

       --vm   enable vm stats (hard pagefaults, soft pagefaults, allocated,

       --stat1 --stat2
              enable (external) plugins by plugin name, see PLUGINS for

       Possible internal stats are
              aio, cpu, cpu24, disk, disk24, disk24old, epoch, fs, int, int24,
              io, ipc, load, lock, mem, net, page, page24, proc, raw, socket,
              swap, swapold, sys, tcp, time, udp, unix, vm

       --list list the internal and external plugin names

       -a, --all
              equals -cdngy (default)

       -f, --full
              expand -C, -D, -I, -N and -S discovery lists

       -v, --vmstat
              equals -pmgdsc -D total

       --bw, --blackonwhite
              change colors for white background terminal

              force float values on screen (mutual exclusive with --integer)

              force integer values on screen (mutual exclusive with --float)

              disable colors (implies --noupdate)

              disable repetitive headers

              disable intermediate updates when delay > 1

       --output file
              write CSV output to file


       While anyone can create their own dstat plugins (and contribute them)
       dstat ships with a number of plugins already that extend its
       capabilities greatly. Here is an overview of the plugins dstat ships

              battery in percentage (needs ACPI)

              battery remaining in hours, minutes (needs ACPI)

              CPU frequency in percentage (needs ACPI)

       --dbus number of dbus connections (needs python-dbus)

              per disk utilization in percentage

       --fan  fan speed (needs ACPI)

              per filesystem disk usage

       --gpfs GPFS read/write I/O (needs mmpmon)

              GPFS filesystem operations (needs mmpmon)

              Hello world example dstat plugin

              show innodb buffer stats

              show innodb I/O stats

              show innodb operations counters

              show lustre I/O throughput

              show the number of hits and misses from memcache

              show the MySQL5 command stats

              show the MySQL5 connection stats

              show the MySQL5 I/O stats

              show the MySQL5 keys stats

              show the MySQL I/O stats

              show the MySQL keys stats

              show the number of packets received and transmitted

       --nfs3 show NFS v3 client operations

              show extended NFS v3 client operations

              show NFS v3 server operations

              show extended NFS v3 server operations

       --ntp  show NTP time from an NTP server

              show postfix queue sizes (needs postfix)

              show power usage

              show total number of processes

       --rpc  show RPC client calls stats

       --rpcd show RPC server calls stats

              show sendmail queue size (needs sendmail)

              show number of ticks per second

       --test show test plugin output

              system temperature sensors

              show most expensive block I/O process

              show most expensive CPU process

              show process using the most CPU time (in ms)

              show process with the highest average timeslice (in ms)

              show most expensive I/O process

              show process with highest total latency (in ms)

              show process with the highest average latency (in ms)

              show process using the most memory

              show process that will be killed by OOM the first

       --utmp show number of utmp connections (needs python-utmp)

              show VMware ESX kernel vmhba stats

              show VMware ESX kernel interrupt stats

              show VMware ESX kernel port stats

              show ballooning status inside VMware guests

              show CPU usage per OpenVZ guest

              show OpenVZ user beancounters

       --wifi wireless link quality and signal to noise ratio


       delay is the delay in seconds between each update

       count is the number of updates to display before exiting

       The default delay is 1 and count is unspecified (unlimited)


       When invoking dstat with a delay greater than 1 and without the
       --noupdate option, it will show intermediate updates, ie. the first
       time a 1 sec average, the second update a 2 second average, etc. until
       the delay has been reached.

       So in case you specified a delay of 10, the 9 intermediate updates are
       NOT snapshots, they are averages over the time that passed since the
       last final update. The end result is that you get a 10 second average
       on a new line, just like with vmstat.


       Using dstat to relate disk-throughput with network-usage (eth0), total
       CPU-usage and system counters:

       dstat -dnyc -N eth0 -C total -f 5
       Checking dstat’s behaviour and the system impact of dstat:

       dstat -taf --debug
       Using the time plugin together with cpu, net, disk, system, load, proc
       and top_cpu plugins:

       dstat -tcndylp --top-cpu
       this is identical to

       dstat --time --cpu --net --disk --sys --load --proc --top-cpu
       Using dstat to relate cpu stats with interrupts per device:

       dstat -tcyif


       Since it is practically impossible to test dstat on every possible
       permutation of kernel, python or distribution version, I need your help
       and your feedback to fix the remaining problems. If you have
       improvements or bugreports, please send them to: [1]

       Please see the TODO file for known bugs and future plans.


       Paths that may contain external dstat_*.py plugins:

       (path of binary)/plugins/


   Performance tools
       ifstat(1), iftop(8), iostat(1), mpstat(1), netstat(1), nfsstat(1), nstat, vmstat(1), xosview(1)

   Debugging tools
       htop(1), lslk(1), lsof(8), top(1)

   Process tracing
       ltrace(1), pmap(1), ps(1), pstack(1), strace(1)

   Binary debugging
       ldd(1), file(1), nm(1), objdump(1), readelf(1)

   Memory usage tools
       free(1), memusage, memusagestat, slabtop(1)

   Accounting tools
       dump-acct, dump-utmp, sa(8)

   Hardware debugging tools
       dmidecode, ifinfo(1), lsdev(1), lshal(1), lshw(1), lsmod(8), lspci(8), lsusb(8), smartctl(8), x86info(1)

   Application debugging
       mailstats(8), qshape(1)

   Xorg related tools
       xdpyinfo(1), xrestop(1)

   Other useful info
       collectl(1), proc(5), procinfo(8)


       Written by Dag Wieers [1]

       Homepage at [2]

       This manpage was initially written by Andrew Pollock
       [3] for the Debian GNU/Linux system.





  0.7.0                           11/25/2009