一、用途说明
对于大多数从事运维的童鞋来说,用的比较多还是sysstat,它提供了iostat、mpstat、cifsiostat、sar等这些工具,而今天要介绍的dstat是一个用来替换vmstat,iostat netstat,nfsstat和ifstat这些命令的工具, 是一个全能系统信息统计工具.它是由Python编写的, 与sysstat相比,dstat是以一个彩色的界面动态显示,这样数据比较显眼,容易观察,一目了然; 而且dstat支持即时刷新,可以使用相关参数指定显示哪些内容!下后会有说明。
下面开始进入dstat的神秘世界!!!!!!!!!!!!!!
官方站点:http://dag.wieers.com/home-made/dstat/#download
PS:RHEL系列默认安装好dstat,如果是CentOS系列可以按照下面的步骤进行简单安装!
[root@twexdb1 ~]# cat/etc/issue
Red Hat EnterpriseLinux Server release 5.3 (Tikanga)
Kernel \r on an \m
[root@twexdb1 ~]# rpm-qa |grep dstat
dstat-0.6.6-3.el5
下面在RHEL 5.3上升级到dstat-0.7.2-1:
[root@twexdb1 ~]# rpm-Uvh dstat-0.7.2-1.el5.rfx.noarch.rpm
warning: dstat-0.7.2-1.el5.rfx.noarch.rpm:Header V3 DSA signature: NOKEY, key ID 6b8d79e6
Preparing... ########################################### [100%]
1:dstat ########################################### [100%]
[root@twexdb1 ~]#which dstat
/usr/bin/dstat
[root@twexdb1 ~]#file /usr/bin/dstat
/usr/bin/dstat: apython script text executable
二、dstat安装
[root@MySQL56-s ~]#wget http://pkgs.repoforge.org/dstat/dstat-0.7.2-1.el5.rfx.noarch.rpm
[root@MySQL56-s ~]#rpm -ivh dstat-0.7.2-1.el5.rfx.noarch.rpm
warning: dstat-0.7.2-1.el5.rfx.noarch.rpm:Header V3 DSA signature: NOKEY, key ID 6b8d79e6
Preparing... ########################################### [100%]
1:dstat ###########################################[100%]
三、使用说明
1.使用语法
dstat [-afv][options..] [delay [count]]
简单执行 dstat 命令:
在不带任务参数的情况它只会collectlcpu、disk、net、paging、system这些数据, 默认是 1s 收集一次. 默认输入dstat等于输入了dstat -cdngy 1或dstat-a 1.
2.dstat 使用参数
-c, -cpu 显示CPU情况
-C 0,3,totalinclude cpu0, cpu3 and total
-d, -disk 显示磁盘情况
-D total,hdainclude hda and total
-g, -page enable pagestats
-i, -int enableinterrupt stats
-I 5,eth2 includeint5 and interrupt used by eth2
-l, -load enable loadstats
-m, -mem 显示内存情况
-n, -net 显示网络情况
-N eth1,total 可以指定网络接口
-p, -proc enableprocess stats
-s, -swap 显示swap情况
-S swap1,total 可以指定多个swap
-t, -time enable timecounter
-y, -sys enablesystem stats
-ipc 报告IPC消息队列和信号量的使用情况
-lock enable lockstats
-raw enable raw stats
-tcp enable tcp stats
-udp enable udp stats
-unix enable unixstats
-M stat1,stat2 enableexternal stats
-mods stat1,stat2
-a, -all 使用-cdngy 缺省的就是这样显示
-f, -full 使用 -C, -D, -I, -N and -S 显示
-v, -vmstat 使用-pmgdsc -D 显示
-integer show integervalues
-nocolor disablecolors (implies -noupdate)
-noheaders 只显示一次表头以后就不显示了,使用重定向写入文件时很有用
-noupdate disableintermediate updates
-output file 写入到CVS文件中
上面这些参数大多都容易理解,会点英文的同志都能看懂...........................
3. 实例
实例1: dstat sda -D3 5 #在默认显示内容的基础上只显示sda磁盘的信息
这里的 3 5 意思跟vmstat3 5 一样,意思就是每隔3秒更新一次,总共更新5次,但是这里有个小区别就是初使时要显示一次,不包括在内!
实例2:dstat-cdlmnpsy #统计显示CPU,IO,load,memory,network,process,swap,system
实例3 :date&& dstat -tclmdny 10 #10秒监视一次
实例4:dstat -cdlmnyp-N total -D total 3 5
相关各模块显示内容跟top、vmstat、iostat等这些工具的意思相同,如cpu相关的usr代表应用空间也就是应用程序所占用的百分比,注意这里也是百分比,sys表示系统内核空间占用的百分比,idl表示CPU空闲情况,wai表示IO等待数,hiq和sig则显示服务中断有关信息。
其它就不再一一说明,都相对简单!
OK,只简单介绍到这里,这工具应用起来还算比较简单,显示也很直观。工具的使用还需靠平时多去练习、观察才能熟能生巧!
参考站点:http://wiki.51osos.com/index.php?title=Dstat&printable=yes
http://dag.wieers.com/home-made/dstat