強大的性能監測工具dstat


強大的性能監測工具dstat

本節分為以下幾個部分:

dstat介紹:

dstat命令是一個用來替換vmstat、iostat、netstat、nfsstat和ifstat這些命令的工具,是一個全能系統信息統計工具。\
安裝:yum install -y dstat

dstat使用說明:
直接使用dstat,默認使用的是-cdngy參數,分別顯示cpu、disk、net、page、system信息

 

分組 分組含義及子項字段含義
CPU狀態 CPU的使用率。顯示了用戶占比,系統占比、空閑占比、等待占比、硬中斷和軟中斷情況。
磁盤統計 磁盤的讀寫,分別顯示磁盤的讀、寫總數。
網絡統計 網絡設備發送和接受的數據,分別顯示的網絡收、發數據總數。
分頁統計 系統的分頁活動。分別顯示換入(in)和換出(out)。
系統統計 統計中斷(int)和上下文切換(csw)。
常見選項:

-c:顯示CPU系統占用,用戶占用,空閑,等待,中斷,軟件中斷等信息。
-C:當有多個CPU時候,此參數可按需分別顯示cpu狀態,例:-C 0,1 是顯示cpu0和cpu1的信息。
-d:顯示磁盤讀寫數據大小。
-D hda,total:include hda and total。
-n:顯示網絡狀態。
-N eth1,total:有多塊網卡時,指定要顯示的網卡。
-l:顯示系統負載情況。
-m:顯示內存使用情況。
-g:顯示頁面使用情況。
-p:顯示進程狀態。
-s:顯示交換分區使用情況。
-S:類似D/N。
-r:I/O請求情況。
-y:系統狀態。
--ipc:顯示ipc消息隊列,信號等信息。
--socket:用來顯示tcp udp端口狀態。
-a:此為默認選項,等同於-cdngy。
-v:等同於 -pmgdsc -D total。
--output 文件:此選項也比較有用,可以把狀態信息以csv的格式重定向到指定的文件中,以便日后查看。例:dstat --output /root/dstat.csv & 此時讓程序默默的在后台運行並把結果輸出到/root/dstat.csv文件中。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
命令選項
Options Details
-c, - -cpu 開啟cpu統計
-C 該選項跟cpu的編號(0~cpu核數-1,多個用都好隔開)如:0,3,total表示分別包含cpu0、cpu3和total
-d, - -disk 開啟disk統計
-D 改選跟具體的設備名(多個用逗號隔開)如:total,hda,hdb表示分別統計total、hda、hdb設備塊
-g, - -page 開啟分頁統計
-i, - -int 開啟中斷統計
-I 5,10 沒弄懂呢~巴拉巴拉
-l, - -load 開啟負載均衡統計,分別是1m,5m,15m
-m, - -mem 開啟內存統計,包括used,buffers,cache,free
-n, - -net 開啟net統計,包括接受和發送
-N 該選項可以跟網絡設備名多個用逗號隔開,如eth1,total
-p, - -proc 開啟進程統計,包括runnable, uninterruptible, new
-r, - -io io開啟請求統計,包括read requests, write requests
-s, - -swap 開啟swap統計,包括used, free
-S 該選項可以跟具體的交換區,多個用逗號隔開如swap1,total
-t, - -time 啟用時間和日期輸出
-T, - -epoch 啟用時間計數,從epoch到現在的秒數
-y, - -sys 開啟系統統計,包括中斷和上下文切換
-aio
開啟同步IO統計 (asynchronous I/O)
-fs
開啟文件系統統計,包括 (open files, inodes)
-ipc
開啟ipc統計,包括 (message queue, semaphores, shared memory)
-lock
開啟文件所統計,包括 (posix, flock, read, write)
-raw
開啟raw統計 (raw sockets)
-socket
開啟sockets統計,包括 (total, tcp, udp, raw, ip-fragments)
-tcp
開啟tcp統計,包括(listen, established, syn, time_wait, close)
-udp
開啟udp統計 (listen, active)
-unix
開啟unix統計(datagram, stream, listen, active)
-vm
開啟vm統計 (hard pagefaults, soft pagefaults, allocated, free)
-stat
通過插件名稱開啟插件擴展,詳見命令插件 :可能的內置插件為aio, cpu, cpu24, disk, disk24, disk24old, epoch, fs, int, int24, io, ipc, load, lock, mem, net, page, page24, proc, raw, socket, swap, swapold, sys, tcp, time,udp, unix, vm
-list
列舉內置插件擴展的名稱
-a, - -all 是默認值相當於 -cdngy (default)
-f, - -full 相當於 -C, -D, -I, -N and -S
-v, - -vmstat 相當於 -pmgdsc -D total
-bw, - -blackonwhite
在白色背景終端上改變顯示顏色
-float
在屏幕上的輸出強制顯示為浮點值(即帶小數)(相反的選項設置為 - -integer)
-integer
在屏幕上的輸出強制顯示為整數值,此為默認值(相反的選項設置為- -float)
-nocolor
禁用顏色(意味着選項 - -noupdate)
-noheaders
禁止重復輸出header,默認會打印一屏幕輸出一次header
-noupdate
當delay>1時禁止在過程中更新(即在時間間隔內不允許更新)
-output file
輸出結果到cvs文件中
命令參數
參數名稱 參數描述
delay 兩次輸出之間的時間間隔,默認是1s
count 報告輸出的次數,默認是沒有限制,一直輸出知道ctrl+c
命令插件
雖然anyone可以自由的為dstat編寫插件,但dstat附帶大量的插件已經大大擴展其功能,下面是dstat附帶插件的一個概述:

插件名稱 插件描述
-battery
電池電池百分比(需要ACPI)
-battery-remain
電池剩余小時、分鍾(需要ACPI)
-cpufreq
CPU頻率百分比(需要ACPI)
-dbus
dbus連接的數量(需要python-dbus)
-disk-util
顯示某一時間磁盤的忙碌狀況
-fan
風扇轉速(需要ACPI)
-freespace
每個文件系統的磁盤使用情況
-gpfs
gpfs讀/寫 I / O(需要mmpmon)
-gpfs-ops
GPFS文件系統操作(需要mmpmon)
-helloworld
dstat插件Hello world示例
-innodb-buffer
顯示innodb緩沖區統計
-innodb-io
顯示innodb I / O統計數據
-innodb-ops
顯示innodb操作計數器
-lustre
顯示lustreI / O吞吐量
-memcache-hits
顯示memcache 的命中和未命中的數量
-mysql5-cmds
顯示MySQL5命令統計
-mysql5-conn
顯示MySQL5連接統計
-mysql5-io
MySQL5 I / O統計數據
-mysql5-keys
顯示MySQL5關鍵字統計
-mysql-io
顯示MySQL I / O統計數據
-mysql-keys
顯示MySQL關鍵字統計
-net-packets
顯示接收和發送的數據包的數量
-nfs3
顯示NFS v3客戶端操作
-nfs3-ops
顯示擴展NFS v3客戶端操作
-nfsd3
顯示NFS v3服務器操作
-nfsd3-ops
顯示擴展NFS v3服務器操作
-ntp
顯示NTP服務器的ntp時間
-postfix
顯示后綴隊列大小(需要后綴)
-power
顯示電源使用量
-proc-count
顯示處理器的總數
-rpc
顯示rpc客戶端調用統計
-rpcd
顯示RPC服務器調用統計
-sendmail
顯示sendmail隊列大小(需要sendmail)
-snooze
顯示每秒運算次數
-test
顯示插件輸出
-thermal
熱系統的溫度傳感器
-top-bio
顯示消耗塊I/O最大的進程
-top-cpu
顯示消耗CPU最大的進程
-top-cputime
顯示使用CPU時間最大的進程(單位ms)
-top-cputime-avg
顯示使用CPU時間平均最大的進程(單位ms)
-top-io
顯示消耗I/O最大進程
-top-latency
顯示總延遲最大的進程(單位ms)
-top-latency-avg
顯示平均延時最大的進程(單位ms)
-top-mem
顯示使用內存最大的進程
-top-oom
顯示第一個被OOM結束的進程
-utmp
顯示utmp連接的數量(需要python-utmp)
-vmk-hba
顯示VMware ESX內核vmhba統計數
-vmk-int
顯示VMware ESX內核中斷數據
-vmk-nic
顯示VMware ESX內核端口統計
-vz-io
顯示每個OpenVZ請求CPU使用率
-vz-ubc
顯示OpenVZ用戶統計
-wifi
無線連接質量和信號噪聲比
常用插件
插件名稱 插件描述
-disk-util
顯示某一時間磁盤的忙碌狀況
-freespace
顯示當前磁盤空間使用率
-proc-count
顯示正在運行的程序數量
-top-bio
顯示塊I/O最大的進程
-top-cpu
顯示CPU占用最大的進程
-top-io
顯示正常I/O最大的進程
-top-mem
顯示占用最多內存的進程
案例:
監察cpu情況 -c


監察磁盤 -d

dstat
--disk-tps #每秒每個磁盤事務(tps)統計
--disk-util #磁盤利用率百分比
-d 分別顯示磁盤的讀、寫總數。
1
2
3
4
推薦鏈接:

linux命令—dstat:https://blog.csdn.net/yue530tomtom/article/details/75443305\
dstat命令:http://man.linuxde.net/dstat

dstat源碼:https://github.com/dagwieers/dstat/blob/master/dstat#L602
————————————————
版權聲明:本文為CSDN博主「Ian_安安」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/sinat_34789167/article/details/80986709


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM