OnWorks favicon

dstat - Online in the Cloud

Run dstat in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command dstat that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



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 information.


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

-C 0,3,total
include cpu0, cpu3 and total (when using -c/--cpu)

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

-D total,hda
include total and hda (when using -d/--disk)

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

-i, --int
enable interrupt stats

-I 5,10
include interrupt 5 and 10 (when using -i/--int)

-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 (when using -n/--net)

-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 (when using -s/--swap)

-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, free)

enable (external) plugins by plugin name, see PLUGINS for options

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

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

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

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

disable colors (implies --noupdate)

disable repetitive headers

disable intermediate updates when delay > 1

--output file
write CSV output to file

show profiling statistics when exiting dstat


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 with:

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 transactions per second (tps) stats

per disk utilization in percentage

show dstat cputime consumption and latency

show dstat advanced cpu usage

show dstat context switches

show dstat advanced memory usage

--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

show qmail queue sizes (needs qmail)

--rpc show RPC client calls stats

--rpcd show RPC server calls stats

show sendmail queue size (needs sendmail)

show number of ticks per second

show squid usage statistics

--test show test plugin output

system temperature sensors

show most expensive block I/O process

show most expensive block I/O process (incl. pid and other stats)

show process waiting for child the most

show most expensive CPU process

show most expensive CPU process (incl. pid and other stats)

show process using the most CPU time (in ms)

show process with the highest average timeslice (in ms)

show most frequent interrupt

show most expensive I/O process

show most expensive I/O process (incl. pid and other stats)

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 I/O 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

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

Use dstat online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

Linux commands