Dstat 系统资源统计工具教程
Dstat 是一款多功能的系统资源统计工具,它将 vmstat、iostat、netstat、ifstat 等多个工具的功能整合到一个命令中,并以彩色高亮的方式实时显示。Dstat 支持丰富的插件系统,可以监控几乎任何系统指标。在搬瓦工 VPS 上使用 Dstat 可以同时观察 CPU、内存、磁盘和网络的状态变化,快速发现性能异常。
一、安装
# Ubuntu / Debian(新版本中 dstat 已更名为 pcp-dstat)
apt update
apt install dstat -y
# 或者在新版系统上
apt install pcp-dstat -y
# CentOS / RHEL
yum install dstat -y
# 验证安装
dstat --version
二、基本用法
# 默认输出(CPU、磁盘、网络、分页、系统)
dstat
# 指定刷新间隔(每 2 秒)和次数
dstat 2 10
# 显示时间戳
dstat -t
# 带颜色输出(默认开启)
dstat --color
三、选择性监控
3.1 常用选项
# 只监控 CPU
dstat -c
# 只监控磁盘
dstat -d
# 只监控网络
dstat -n
# 只监控内存
dstat -m
# 只监控系统(中断和上下文切换)
dstat -y
# 组合监控
dstat -cdnm 2
# 显示所有指标
dstat -a
3.2 详细选项
# 详细 CPU 统计(包含每个核心)
dstat -C total,0,1 2
# 详细磁盘统计(指定设备)
dstat -D vda,total 2
# 详细网络统计(指定接口)
dstat -N eth0,total 2
# 查看 Swap 使用
dstat -s
# 查看进程统计
dstat -p
# 查看负载平均值
dstat -l
四、插件系统
Dstat 的强大之处在于其丰富的插件:
# 查看所有可用插件
dstat --list
# Top CPU 消耗进程
dstat --top-cpu
# Top 内存消耗进程
dstat --top-mem
# Top I/O 进程
dstat --top-io
# Top 延迟进程
dstat --top-latency
# 组合使用插件
dstat -cdnm --top-cpu --top-mem 2
# 电池状态(笔记本用)
dstat --battery
# NFS 统计
dstat --nfs3
# IPC 统计
dstat --ipc
五、数据导出
# 导出到 CSV 文件
dstat -cdnm --output /tmp/dstat_report.csv 2 60
# 带时间戳导出
dstat -t -cdnm --output /tmp/dstat_$(date +%Y%m%d).csv 5
# 后台持续采集
nohup dstat -t -cdnm --output /var/log/dstat_daily.csv 60 &>/dev/null &
六、实际应用场景
6.1 性能基准测试
# 在压力测试期间监控系统资源
# 终端 1:运行 dstat
dstat -t -cdnm --top-cpu --top-io 1
# 终端 2:运行压力测试
ab -n 10000 -c 100 http://localhost/
6.2 问题排查仪表板
# 综合监控仪表板
dstat -t -c -m -d -n --top-cpu --top-mem --top-io -l 2
# 网络问题排查
dstat -t -n -N eth0 --tcp --udp 1
# 磁盘问题排查
dstat -t -d -D vda --disk-util --top-io 1
6.3 容量规划数据采集
#!/bin/bash
# 每小时采集一次系统状态,保留 24 小时
OUTPUT="/var/log/dstat/hourly_$(date +%Y%m%d_%H).csv"
mkdir -p /var/log/dstat
dstat -t -cdnm --output "$OUTPUT" 60 60
# 添加到 crontab
# 0 * * * * /root/scripts/dstat_hourly.sh
七、Dstat 与其他工具对比
- vs vmstat:Dstat 输出更直观(彩色高亮),支持插件扩展,可以同时显示更多指标。
- vs iostat:Dstat 可以同时显示磁盘和其他指标,iostat 提供更详细的设备级统计。
- vs sar:Dstat 适合实时观察,SAR 适合历史数据分析。
- vs glances:Dstat 是命令行流式输出,Glances 是全屏交互界面。
八、Dstat 替代品:dool
在某些新版 Linux 发行版中,dstat 已被 dool(dstat 的 Python 3 重写版)替代:
# 安装 dool(如果 dstat 不可用)
pip3 install dool
# 或从包管理器安装
apt install dool -y
# dool 与 dstat 用法完全兼容
dool -cdnm 2
总结
Dstat 是系统实时监控的全能工具,一条命令即可纵览 CPU、内存、磁盘和网络的状态。它的彩色输出和插件系统使得性能分析变得直观高效。在搬瓦工 VPS 上进行性能调优或故障排查时,建议首先运行 dstat 获得全局视图,再用 Iostat、Vmstat 等专项工具深入分析。选购搬瓦工 VPS 请参考全部方案,使用优惠码 NODESEEK2026 可享受 6.77% 循环折扣。