What Is Dstat: System Monitor or Medical Bandage?

Dstat is a command-line tool for Linux that monitors system resources in real time. It combines the functionality of several older utilities (vmstat, iostat, netstat, nfsstat, and ifstat) into a single, color-coded output that updates line by line. If you’re troubleshooting a slow server, benchmarking performance, or just trying to understand what your system is doing right now, dstat gives you a consolidated view instead of forcing you to juggle multiple tools.

There is also a medical product called D-Stat, a hemostatic bandage used to control bleeding after catheter procedures. Both are covered below.

What Dstat Shows You

By default, dstat prints a new row of data every second. Each row includes CPU usage, disk reads and writes, network traffic, paging activity, and system interrupts. The columns are color-coded so spikes in disk I/O or network throughput stand out visually. This one-line-per-timeslice format is one of dstat’s biggest advantages: unlike full-screen tools such as top or atop, dstat scrolls so you can see a history of what happened over the last several minutes without losing earlier data points.

The real power comes from collation. If you’re diagnosing a performance problem, you typically care about the relationship between CPU load, disk activity, and network traffic at the same moment in time. Older tools like vmstat and iostat each show only one slice of that picture, so you’d need to run them simultaneously and mentally line up timestamps. Dstat puts everything on a single line, making correlations obvious.

Plugins and Extended Metrics

Dstat supports a plugin system that extends monitoring well beyond the defaults. Available plugins can report NTP time drift, power usage, fan speed, remaining battery life, memcache hit and miss rates, process counts, per-disk utilization rates, and top processes ranked by CPU time or latency. You enable a plugin with a command-line flag, and its data appears as additional columns in the same scrolling output.

This makes dstat flexible enough for quick spot checks and for longer data collection sessions. Because each row is a clean line of text, you can redirect the output to a file or pipe it into other tools for later analysis.

Current Status: pcp-dstat

The original dstat project has reached end of life. It was written in Python 2, never updated for Python 3, and has been unsupported upstream for some time. If you try to install it on a recent Fedora or RHEL system, you’ll get its replacement instead: pcp-dstat, maintained by the Performance Co-Pilot (PCP) project.

pcp-dstat aims for 100% output compatibility with the original, so your existing workflows and scripts should still work. When you type dstat on a modern Fedora system, it’s actually a symbolic link pointing to the pcp-dstat script. Under the hood, pcp-dstat reads metrics through PCP’s Python APIs rather than querying the kernel directly, which adds two capabilities the original never had: you can monitor a remote host from your local machine using the PCP network protocol, and you can replay historical data from PCP archive files for retrospective analysis. The color-coded, compact output stays the same.

How to Get Started

On most current distributions, installing dstat pulls in pcp-dstat automatically. On Fedora or RHEL-based systems, dnf install dstat does the job. On Debian or Ubuntu, look for the pcp package, which includes the dstat wrapper. Once installed, simply running dstat with no arguments gives you the default five-column view updating every second. Add flags like --top-cpu or --disk-util to pull in plugin columns, or use -o filename.csv to write output to a CSV file for later review.

D-Stat: The Medical Hemostatic Bandage

In a completely different context, D-Stat is a hemostatic (bleeding-control) bandage used after procedures that involve puncturing an artery, most commonly cardiac catheterization and peripheral angiography. During these procedures, a catheter enters through an artery in the groin or wrist, and the puncture site can bleed significantly once the catheter is removed. The D-Stat Dry bandage is applied directly to the site to accelerate clotting.

The bandage contains thrombin, a naturally occurring enzyme that converts fibrinogen in your blood into fibrin. Fibrin strands form a mesh that traps platelets and builds a stable clot. In a multicenter trial of 376 patients, those treated with the D-Stat bandage achieved hemostasis in an average of 7.8 minutes compared to 13 minutes with standard manual compression. Time to ambulation was also shorter (about 392 minutes versus 415 minutes), and patients reported higher satisfaction scores. Major complication rates were the same between the two groups.

After placement, the D-Stat dressing typically stays on for at least 24 hours and can remain for up to 3 days. Signs that need attention include bleeding or drainage from the puncture site, swelling larger than a golf ball, increasing redness or tenderness, or a rash where the dressing was placed.