dstat 監控你的 Linux 系統效能

2016-04-30 CentOS, Tools

前陣子在爬文看到一個好用的系統監視工具 dstat,實際使用過後根本超級好用,號稱可取代 vmstat , iostat .. 等效能監視工具

 

dstat 是基於 python 開發並且提供原始碼,提供各式各樣的監視訊息,並且擁有顏色顯示不同的單位,還可以 out file 之後再查看

 

在 CentOS 你可以直接 yum 安裝

$ yum install dstat

 

 

基本用法:dstat

$ dstat

----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--
usr sys idl wai hiq siq| read  writ| recv  send|  in   out | int   csw 
  0   0  99   0   0   0|7681B 3986B|   0     0 |   0     0 |  90   120 
  0   0 100   0   0   0|   0     0 | 132B  314B|   0     0 |  85   115
  • cpu:當 usr 和 sys 加起來超過 80 代表你的 CPU 很忙碌,若是 wai 數值升高,代表 CPU 一直在等待,可能你的 disk I/O 不足或是出了問題。
  • dsk:硬碟的讀寫資料量/速度
  • net:網路的收/發狀況
  • paging:這個代表 swap,通常是 0,若產生數值則代表你的記憶體可能不足,必須採用 swap 來進行交換
  • system:int 代表中斷次數,csw 代表 context switch,這項數值越高則代表整體系統 work 大量且緩慢。

 

 

顯示 Load average:dstat -l

$ dstat -l

---load-avg---
 1m   5m  15m 
   0 0.10 0.08
   0 0.10 0.08

 

顯示記憶體使用率:dstat -m

$ dstat -m

------memory-usage-----
 used  buff  cach  free
2500M 7284k 47.8M 78.4M
2500M 7284k 47.8M 78.4M

 

顯示 I/O:dstat -r

$ dstat -r

--io/total-
 read  writ
0.35  0.96

 

顯示網路統計 socket:dstat –socket

$ dstat --socket

------sockets------
tot tcp udp raw frg
217  10   3   0   0
218  11   3   0   0

 

顯示 tcp 統計:dstat -tcp

$ dstat -tcp

----system---- ----total-cpu-usage---- ---procs---
  date/time   |usr sys idl wai hiq siq|run blk new
30-04 02:28:37|  1   0  98   0   0   0|  0   0 0.1
30-04 02:28:38|  0   0 100   0   0   0|  0   0   0

 

更有效的系統分析參數

  • dstat –proc-count 統計所有工作程式數量
  • dstat –top-bio 指出目前 I/O 讀寫最大的程式
  • dstat –top-cpu 指出目前 CPU 佔用最大的程式
  • dstat –top-mem 指出目前 mem 佔用最多的程式

 

對於系統分析你也可以輸出 CSV

$ dstat --output /tmp/dstat_test.csv

 

 

所有的指令參數你都可以配合使用

 

給 Mr. 沙先生一點建議

彙整

分類

展開全部 | 收合全部

License

訂閱 Mr. 沙先生 的文章

輸入你的 email 用於訂閱