一、用途說明
對於大多數從事運維的童鞋來說,用的比較多還是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