Linux終端下 dstat 監控工具
這是默認輸出顯示的信息:
CPU狀態:CPU的使用率。這項報告更有趣的部分是顯示了用戶,系統和空閑部分,這更好地分析了CPU當前的使用狀況。如果你看到"wait"一欄中,CPU的狀態是一個高使用率值,那說明系統存在一些其它問題。當CPU的狀態處在"waits"時,那是因為它正在等待I/O設備(例如內存,磁碟或者網路)的響應而且還沒有收到。
磁碟統計:磁碟的讀寫操作,這一欄顯示磁碟的讀、寫總數。
網路統計:網路設備發送和接受的數據,這一欄顯示的網路收、發數據總數。
分頁統計:系統的分頁活動。分頁指的是一種內存管理技術用於查找系統場景,一個較大的分頁表明系統正在使用大量的交換空間,或者說內存非常分散,大多數情況下你都希望看到page in(換入)和page out(換出)的值是0 0。
系統統計:這一項顯示的是中斷(int)和上下文切換(csw)。這項統計僅在有比較基線時才有意義。這一欄中較高的統計值通常表示大量的進程造成擁塞,需要對CPU進行關注。你的伺服器一般情況下都會運行運行一些程序,所以這項總是顯示一些數值。
默認情況下,dstat每秒都會刷新數據。如果想退出dstat,你可以按"CTRL-C"鍵。
需要注意的是報告的第一行,通常這裡所有的統計都不顯示數值的。
這是由於dstat會通過上一次的報告來給出一個總結,所以第一次運行時是沒有平均值和總值的相關數據。
但是dstat可以通過傳遞2個參數運行來控制報告間隔和報告數量。例如,如果你想要dstat輸出默認監控、報表輸出的時間間隔為3秒鐘,並且報表中輸出10個結果,你可以運行如下命令:
dstat 3 10
在dstat命令中有很多參數可選,你可以通過man dstat命令查看,大多數常用的參數有這些:
- -l :顯示負載統計量
- -m :顯示內存使用率(包括used,buffer,cache,free值)
- -r :顯示I/O統計
- -s :顯示交換分區使用情況
- -t :將當前時間顯示在第一行
- –fs :顯示文件系統統計數據(包括文件總數量和inodes值)
- –nocolor :不顯示顏色(有時候有用)
- –socket :顯示網路統計數據
- –tcp :顯示常用的TCP統計
- –udp :顯示監聽的UDP介面及其當前用量的一些動態數據
當然不止這些用法,dstat附帶了一些插件很大程度地擴展了它的功能。你可以通過查看/usr/share/dstat目錄來查看它們的一些使用方法,常用的有這些:
- -–disk-util :顯示某一時間磁碟的忙碌狀況
- -–freespace :顯示當前磁碟空間使用率
- -–proc-count :顯示正在運行的程序數量
- -–top-bio :指出塊I/O最大的進程
- -–top-cpu :圖形化顯示CPU佔用最大的進程
- -–top-io :顯示正常I/O最大的進程
- -–top-mem :顯示佔用最多內存的進程
舉一些例子:
查看全部內存都有誰在佔用:
dstat -g -l -m -s --top-mem
顯示一些關於CPU資源損耗的數據:
dstat -c -y -l --proc-count --top-cpu
如何輸出一個csv文件
想輸出一個csv格式的文件用於以後,可以通過下面的命令:
# dstat –output /tmp/sampleoutput.csv -cdn
via: http://linuxaria.com/howto/linux-terminal-dstat-monitoring-tools
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive