介绍
dstat是一个用来替换 vmstat,iostat netstat,nfsstat和ifstat这些命令的工具, 是一个全能系统信息统计工具. 与sysstat相比, dstat拥有一个彩色的界面, 在手动观察性能状况时, 数据比较显眼容易观察; 而且dstat支持即时刷新, 譬如输入dstat 3, 即每三秒收集一次, 但最新的数据都会每秒刷新显示. 和sysstat相同的是, dstat也可以收集指定的性能资源, 譬如 dstat -c 即显示CPU的使用情况.
这个软件和vmstat很像, 不过和vmstat相比好像少了io部份的显示, dstat只能显示磁盘的吞吐量而不是显示负载情况, dstat和几乎所有监控软件一样, 只能对整个系统进行监控而不能对某一个进程或某一个程序进行深入分析. 我常使用的参数是dstat -cdlmnpsy, 做个别名链接alias dstat='dstat -cdlmnpsy'
安装
源码安装
http://dag.wieers.com/rpm/packages/dstat/
wget http://rpmforge.sw.be/redhat/7.3/en/i386/rpmforge/RPMS/dstat-0.6.9-1.rh7.rf.noarch.rpm
rpm -ivh dstat-0.6.9-1.rh7.rf.noarch.rpm
Ubuntu:
apt-get install dstat
CentOS:
yum install dstat
选项说明
使用dstat -h查看选项说明
-c, -cpu 显示CPU情况
-C 0,3,total include cpu0, cpu3 and total
-d, -disk 显示磁盘情况
-D total,hda include hda and total
-g, -page enable page stats
-i, -int enable interrupt stats
-I 5,eth2 include int5 and interrupt used by eth2
-l, -load enable load stats
-m, -mem 显示内存情况
-n, -net 显示网络情况
-N eth1,total 可以指定网络接口
-p, -proc enable process stats
-s, -swap 显示swap情况
-S swap1,total 可以指定多个swap
-t, -time enable time counter
-y, -sys enable system stats
-ipc 报告IPC消息队列和信号量的使用情况
-lock enable lock stats
-raw enable raw stats
-tcp enable tcp stats
-udp enable udp stats
-unix enable unix stats
-M stat1,stat2 enable external stats
-mods stat1,stat2
-a, -all 使用-cdngy 缺省的就是这样显示
-f, -full 使用 -C, -D, -I, -N and -S 显示
-v, -vmstat 使用-pmgdsc -D 显示
-integer show integer values
-nocolor disable colors (implies -noupdate)
-noheaders 只显示一次表头以后就不显示了,使用重定向写入文件时很有用
-noupdate disable intermediate updates
-output file 写入到CVS文件中
使用示例
# dstat
安装完成后, 执行 dstat 命令, 默认情况它会收集-cpu-,-disk-,-net-,-paging-,-system-的数据, 一秒钟收集一次. 默认输入dstat等于输入了dstat -cdngy 1或dstat -a 1. 推荐使用 date && dstat -tclmdny 60 一分钟监视一次(注意调节显示的宽度, 或去掉-t选项).
我们常用的参数
-c, --cpu enable cpu stats 显示cpu的情况
-d, --disk enable disk stats 显示硬盘的情况
-l, --load enable load stats 显示系统的负载情况
-m, --mem enable memory stats 显示内存的情况
-n, --net enable network stats 显示网络的情况
-p, --proc enable process stats 显示进程的情况
-s, --swap enable swap stats 显示swap的情况
-y, --sys enable system stats 显示系统的情况
--output file write CSV output to file 写到csv文件中
默认情况下dstat是每秒钟就收集数据一次,可以修改一下让它每30秒收集一次
dstat -cdlmnpsy 30
dstat -cndymlp -N total -D total 5 25