Linux如何安裝使用pidstat命令
Linux系統(tǒng)監(jiān)控的命令其實(shí)有很多,pidstat命令就是其中的一種,使用pidstat命令可以對(duì)Linux系統(tǒng)進(jìn)程數(shù)據(jù)進(jìn)行監(jiān)控,但要先對(duì)pidstat進(jìn)行安裝才能使用,下面學(xué)習(xí)啦小編就給大家介紹下Linux安裝使用pidstat的方法,感興趣的朋友不妨來(lái)了解下。
pidstat命令用來(lái)監(jiān)控被Linux內(nèi)核管理的獨(dú)立任務(wù)(進(jìn)程)。它輸出每個(gè)受內(nèi)核管理的任務(wù)的相關(guān)信息。pidstat命令也可以用來(lái)監(jiān)控特定進(jìn)程的子進(jìn)程。間隔參數(shù)用于指定每次報(bào)告間的時(shí)間間隔。它的值為0(或者沒(méi)有參數(shù))說(shuō)明進(jìn)程的統(tǒng)計(jì)數(shù)據(jù)的時(shí)間是從系統(tǒng)啟動(dòng)開(kāi)始計(jì)算的。
如何安裝pidstat
pidstat 是sysstat軟件套件的一部分,sysstat包含很多監(jiān)控linux系統(tǒng)狀態(tài)的工具,它能夠從大多數(shù)linux發(fā)行版的軟件源中獲得。
在Debian/Ubuntu系統(tǒng)中可以使用下面的命令來(lái)安裝
# apt-get install sysstat
CentOS/Fedora/RHEL版本的linux中則使用下面的命令:
# yum install sysstat
使用pidstat
使用pidstat不加任何參數(shù)等價(jià)于加上-p參數(shù),但是只有正在活動(dòng)的任務(wù)會(huì)被顯示出來(lái)。
# pidstat
在結(jié)果中你能看到如下內(nèi)容:
PID - 被監(jiān)控的任務(wù)的進(jìn)程號(hào)
%usr - 當(dāng)在用戶層執(zhí)行(應(yīng)用程序)時(shí)這個(gè)任務(wù)的cpu使用率,和 nice 優(yōu)先級(jí)無(wú)關(guān)。注意這個(gè)字段計(jì)算的cpu時(shí)間不包括在虛擬處理器中花去的時(shí)間。
%system - 這個(gè)任務(wù)在系統(tǒng)層使用時(shí)的cpu使用率。
%guest - 任務(wù)花費(fèi)在虛擬機(jī)上的cpu使用率(運(yùn)行在虛擬處理器)。
%CPU - 任務(wù)總的cpu使用率。在SMP環(huán)境(多處理器)中,如果在命令行中輸入-I參數(shù)的話,cpu使用率會(huì)除以你的cpu數(shù)量。
CPU - 正在運(yùn)行這個(gè)任務(wù)的處理器編號(hào)。
Command - 這個(gè)任務(wù)的命令名稱。
I/O 統(tǒng)計(jì)數(shù)據(jù)
通過(guò)使用-d參數(shù)來(lái)得到I/O的統(tǒng)計(jì)數(shù)據(jù)。比如:
# pidstat -d -p 8472
IO 輸出會(huì)顯示一些內(nèi)的條目:
kB_rd/s - 任務(wù)從硬盤上的讀取速度(kb)
kB_wr/s - 任務(wù)向硬盤中的寫入速度(kb)
kB_ccwr/s - 任務(wù)寫入磁盤被取消的速率(kb)
頁(yè)面失敗和內(nèi)存使用
使用-r標(biāo)記你能夠得到內(nèi)存使用情況的數(shù)據(jù)。
重要的條目:
minflt/s - 從內(nèi)存中加載數(shù)據(jù)時(shí)每秒出現(xiàn)的小的錯(cuò)誤的數(shù)目,這些不要求從磁盤載入內(nèi)存頁(yè)面。
majflt/s - 從內(nèi)存中加載數(shù)據(jù)時(shí)每秒出現(xiàn)的較大錯(cuò)誤的數(shù)目,這些要求從磁盤載入內(nèi)存頁(yè)面。
VSZ - 虛擬容量:整個(gè)進(jìn)程的虛擬內(nèi)存使用(kb)
RSS - 長(zhǎng)期內(nèi)存使用:任務(wù)的不可交換物理內(nèi)存的使用量(kb)
舉例
1. 你可以通過(guò)使用下面的命令來(lái)監(jiān)測(cè)內(nèi)存使用
# pidstat -r 2 5
這會(huì)給你5份關(guān)于page faults的統(tǒng)計(jì)數(shù)據(jù)結(jié)果,間隔2秒。這將會(huì)更容易的定位出現(xiàn)問(wèn)題的進(jìn)程。
2. 顯示所有mysql服務(wù)器的子進(jìn)程
# pidstat -T CHILD -C mysql
3. 將所有的統(tǒng)計(jì)數(shù)據(jù)結(jié)合到一個(gè)便于閱讀的單一報(bào)告中:
# pidstat -urd -h
上面就是Linux安裝使用pidstat的方法介紹了,通過(guò)本文的介紹,相信你對(duì)系統(tǒng)監(jiān)控命令pidstat的用法有了一定的了解,