一、用途说明

对于大多数从事运维的童鞋来说,用的比较多还是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 命令:

211927960.jpg

在不带任务参数的情况它只会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次,但是这里有个小区别就是初使时要显示一次,不包括在内!

211822688.jpg

实例2:dstat-cdlmnpsy  #统计显示CPU,IO,load,memory,network,process,swap,system

212035245.jpg

实例3 :date&& dstat -tclmdny 10  #10秒监视一次

212117939.jpg

212119578.jpg

实例4:dstat -cdlmnyp-N total -D total 3 5

212137892.jpg

相关各模块显示内容跟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