亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

Linux之性能監(jiān)測命令解讀

瀏覽:21日期:2023-09-23 20:55:12
目錄一、Mpstat命令Mpstat語法直接使用mpstat命令指定參數(shù)查看單獨(dú)查看 一個cpustress壓力測試二、iostat命令iostat命令語法cpu屬性說明磁盤屬性說明-x 詳細(xì)顯示說明只顯示磁盤設(shè)備 -d三、iotop命令使用方法 四、pidstatPidstat使用方法示例一、查看所有進(jìn)程的 CPU 使用情況( -u -p ALL)示例二: 內(nèi)存使用情況統(tǒng)計(-r)示例三:顯示各個進(jìn)程的IO使用情況(-d)示例四:顯示每個進(jìn)程的上下文切換情況(-w)示例五:顯示選擇任務(wù)的線程的統(tǒng)計信息外的額外信息 (-t)五、lsof語法lsof輸出各列信息的意義如下總結(jié)一、Mpstat命令

實(shí)時系統(tǒng)監(jiān)控工具,此命令會展現(xiàn)cpu、的一些統(tǒng)計信息,這些信息存放在/proc/stat文件中,在多cpu系統(tǒng)里,其不但能查看所有cpu的平均狀況信息,而且能夠查看特定cpu信息。

Mpstat語法mpstat ? ?[-P {|ALL}] ? ? [internal ? ?[count]]?-P:指定要監(jiān)控那個CPU,范圍是[0~n-1],ALL表示監(jiān)控所有CPU internal:相鄰兩次采樣的間隔時間 count:采樣次數(shù)直接使用mpstat命令

各列的含義:

Cpu:處理器idUsr:在internet時間段里,cpu一共花了多少比例的時間運(yùn)行在用戶態(tài)空間或者說是用戶進(jìn)程。Nice:用戶空間進(jìn)程的cpu‘的調(diào)度優(yōu)先級Sys:核心時間,CPU花了多少比例的時間在內(nèi)核空間運(yùn)行。分配內(nèi)存、IO操作、創(chuàng)建子進(jìn)程……都是內(nèi)核操作。這也表明,當(dāng)IO操作頻繁時,System參數(shù)會很高。Iowait:硬盤io等待時間,在計算機(jī)中,讀寫磁盤的操作遠(yuǎn)比cpu運(yùn)行的速度要慢,cpu負(fù)載處理數(shù)據(jù),而數(shù)據(jù)一般在磁盤上需要讀到內(nèi)存中才能處理Irq:硬中斷時間,硬中斷是由外部事件引起的具有隨機(jī)性和突發(fā)性Soft:軟中斷時間,軟中斷是執(zhí)行中斷指令產(chǎn)生的Steal:顯示虛擬機(jī)管理器在服務(wù)另一個虛擬處理器時虛擬cpu處在非資源等待下花費(fèi)時間的百分比即虛擬機(jī)強(qiáng)制cpu等待的時間的百分比Gnice:CPU運(yùn)行niced guest虛擬機(jī)所花費(fèi)的時間百分比Guest:顯示運(yùn)行虛擬處理器時花費(fèi)時間的百分比Idle:cpu出去等待磁盤io操作外的因?yàn)槿魏卧蚨臻e的時間閑置時間即cpu空閑時間百分比指定參數(shù)查看mpstat -P ALL 3 3 :查看所有cpu,每三秒查看一次,查看3次。

單獨(dú)查看 一個cpumpstat -P 0 1 2單獨(dú)指向一個cpu,需要注意的cpu序號是從0開始的

stress壓力測試

stress 是Unix類系統(tǒng)下的工作量和壓力測試工具。它可對用戶指定的CPU數(shù)量的I/O,內(nèi)存和硬盤進(jìn)行負(fù)載并報告它檢測到任何錯誤。

工具安裝:

如果采用YUM安裝方式,則需要首先安裝epel的擴(kuò)展源,然后安裝stress即可,相關(guān)命令如下:yum install -y epel-releaseyum install -y stress

常用參數(shù):

-ccpu產(chǎn)生n個進(jìn)程,每個進(jìn)程都反復(fù)不停的計算隨機(jī)數(shù)的平方根-iio產(chǎn)生n個進(jìn)程,每個進(jìn)程反復(fù)調(diào)用 將內(nèi)存上的內(nèi)容寫到硬盤上-mvm產(chǎn)生n個進(jìn)程,每個進(jìn)程不斷分配和釋放內(nèi)存-ttimout在n秒后結(jié)束進(jìn)程-dhdd產(chǎn)生n個不斷執(zhí)行 write 和unlink函數(shù)的進(jìn)程(創(chuàng)建文件、寫入內(nèi)容、刪除文件

壓力測試:

二、iostat命令

iostat主要用于輸出磁盤io和cpu的統(tǒng)計信息

iostat命令語法

iostat【選項】【時間間隔】【次數(shù)】

-c:顯示CPU使用情況-d:顯示磁盤使用情況-N:顯示磁盤陣列(LVM)信息-n:顯示NFS使用情況-k:以KB為單位顯示-m:以M為單位顯示-t:報告每秒向終端讀取和寫入的字符數(shù)和CPU的信息-V:顯示版本信息-x:顯示詳細(xì)信息-p:[磁盤]顯示磁盤和分區(qū)的情況

cpu屬性說明user:CPU處在用戶模式下的時間百分比。nice:CPU處在帶NICE值的用戶模式下的時間百分比。system:CPU處在系統(tǒng)模式下的時間百分比。iowait:CPU等待輸入輸出完成時間的百分比。steal:管理程序維護(hù)另一個虛擬處理器時,虛擬CPU的無意識等待時間百分比。idle:CPU空閑時間百分比。磁盤屬性說明device:磁盤名稱tps:每秒鐘發(fā)送到的I/O請求數(shù).Blk_read/s:每秒讀取的block數(shù).Blk_wrtn/s:每秒寫入的block數(shù).Blk_read:讀入的block總數(shù).Blk_wrtn:寫入的block總數(shù).-x 詳細(xì)顯示說明

rrqm/s:每秒進(jìn)行merge的讀操作數(shù)目。即rmerge/swrqm/s:每秒進(jìn)行merge的寫操作數(shù)目。即wmerge/sr/s:每秒完成的讀I/O設(shè)備次數(shù)。即rio/sw/s:每秒完成的寫I/O設(shè)備次數(shù)。即wio/srkB/s:每秒讀K字節(jié)數(shù)。是rsect/s的一半,因?yàn)槊可葏^(qū)大小為512字節(jié)。wkB/s:每秒寫K字節(jié)數(shù)。是wsect/s的一半。avgrq-sz:平均每次設(shè)備I/O操作的數(shù)據(jù)大小(扇區(qū))。avgqu-sz:平均I/O隊列長度。r_await:每個讀操作平均所需的時間不僅包括硬盤設(shè)備讀操作的時間,還包括了在kernel隊列中等待的時間。w_await:每個寫操作平均所需的時間不僅包括硬盤設(shè)備寫操作的時間,還包括了在kernel隊列中等待的時間。await:平均每次設(shè)備I/O操作的等待時間(毫秒)。svctm:平均每次設(shè)備I/O操作的服務(wù)時間(毫秒)。%util:一秒中有百分之多少的時間用于I/O操作,即被io消耗的cpu百分比只顯示磁盤設(shè)備 -d

三、iotop

iotop命令是一個用來監(jiān)視磁盤io使用狀況的top類工具。iotop具有與top相似的UI,其中包括PID、用戶、O、進(jìn)程等相關(guān)信息。

Linux下的IO統(tǒng)計工具如iostat,nmon等大多數(shù)是只能統(tǒng)計到per設(shè)備的讀寫情況,如果你想知道每個進(jìn)程是如何使用IO的就比較麻煩,使用iotop命令可以很方便的查看。

如果命令未安裝可以從yum倉庫進(jìn)行安裝

命令使用方法

Iotop(選項)

-o:只顯示有io操作的進(jìn)程b:批量顯示,無交互,主要用作記錄到文件。-n NUM:顯示NUM次,主要用于非交互式模式。-d SEC:間隔SEC秒顯示一次。-p PID:監(jiān)控的進(jìn)程pid。-u USER:監(jiān)控的進(jìn)程用戶。

iotop常用快捷鍵:

1.左右箭頭:改變排序方式,默認(rèn)是按lO排序。2.r:改變排序順序。3.o:只顯示有IO輸出的進(jìn)程。4.p:進(jìn)程/線程的顯示方式的切換。5.a:顯示累積使用量。6.q:退出。

命令效果:

四、pidstat

pidstat是sysstat工具的一個命令,用于監(jiān)控全部或指定進(jìn)程的cpu、內(nèi)存一、線程、設(shè)備IO等系統(tǒng)資源的占用情況。

pidstat首次運(yùn)行時顯示自系統(tǒng)啟動開始的各項統(tǒng)計信息,之后運(yùn)行pidstat將顯示自上次運(yùn)行該命令以后的統(tǒng)計信息。

用戶可以通過指定統(tǒng)計的次數(shù)和時間來獲得所需的統(tǒng)計信息。

Pidstat使用方法

Pidstat 【選項】 【時間間隔】【次數(shù)】

常用參數(shù):

-u:默認(rèn)的參數(shù),顯示各個進(jìn)程的cpu使用統(tǒng)計-r:顯示各個進(jìn)程的內(nèi)存使用統(tǒng)計-d:顯示各個進(jìn)程的IO使用情況-p:指定進(jìn)程號-w:顯示每個進(jìn)程的上下文切換情況-t:顯示選擇任務(wù)的線程的統(tǒng)計信息外的額外信息

-T { TASK | CHILD | ALL }

這個選項指定了pidstat監(jiān)控的。TASK表示報告獨(dú)立的task,CHILD關(guān)鍵字表示報告進(jìn)程下所有線程統(tǒng)計信息。ALL表示報告獨(dú)立的task和task下面的所有線程。

注意:task和子線程的全局的統(tǒng)計信息和pidstat選項無關(guān)。這些統(tǒng)計信息不會對應(yīng)到當(dāng)前的統(tǒng)計間隔,這些統(tǒng)計信息只有在子線程kill或者完成的時候才會被收集。

-V:版本號-h:在一行上顯示了所有活動,這樣其他程序可以容易解析。-I:在SMP環(huán)境,表示任務(wù)的CPU使用率/內(nèi)核數(shù)量-l:顯示命令名和所有參數(shù)示例一、查看所有進(jìn)程的 CPU 使用情況( -u -p ALL)

詳細(xì)說明

PID:進(jìn)程ID%usr:進(jìn)程在用戶空間占用cpu的百分比%system:進(jìn)程在內(nèi)核空間占用cpu的百分比%guest:進(jìn)程在虛擬機(jī)占用cpu的百分比%CPU:進(jìn)程占用cpu的百分比CPU:處理進(jìn)程的cpu編號Command:當(dāng)前進(jìn)程對應(yīng)的命令示例二: 內(nèi)存使用情況統(tǒng)計(-r)

使用-r選項,pidstat將顯示各活動進(jìn)程的內(nèi)存使用統(tǒng)計:

PID:進(jìn)程標(biāo)識符Minflt/s:任務(wù)每秒發(fā)生的次要錯誤,不需要從磁盤中加載頁Majflt/s:任務(wù)每秒發(fā)生的主要錯誤,需要從磁盤中加載頁VSZ:虛擬地址大小,虛擬內(nèi)存的使用KBRSS:常駐集合大小,非交換區(qū)五里內(nèi)存使用KBCommand:task命令名示例三:顯示各個進(jìn)程的IO使用情況(-d)

報告IO統(tǒng)計顯示以下信息:

PID:進(jìn)程idkB_rd/s:每秒從磁盤讀取的KBkB_wr/s:每秒寫入磁盤KBkB_ccwr/s:任務(wù)取消的寫入磁盤的KB。當(dāng)任務(wù)截斷臟的pagecache的時候會發(fā)生。COMMAND:task的命令名示例四:顯示每個進(jìn)程的上下文切換情況(-w)

PID:進(jìn)程idCswch/s:每秒主動任務(wù)上下文切換數(shù)量Nvcswch/s:每秒被動任務(wù)上下文切換數(shù)量Command:命令名示例五:顯示選擇任務(wù)的線程的統(tǒng)計信息外的額外信息 (-t)

TGID:主線程的表示TID:線程id%usr:進(jìn)程在用戶空間占用cpu的百分比%system:進(jìn)程在內(nèi)核空間占用cpu的百分比%guest:進(jìn)程在虛擬機(jī)占用cpu的百分比%CPU:進(jìn)程占用cpu的百分比CPU:處理進(jìn)程的cpu編號Command:當(dāng)前進(jìn)程對應(yīng)的命令五、lsof

lsof命令用于查看你進(jìn)程開打的文件,打開文件的進(jìn)程,進(jìn)程打開的端口(TCP、UDP)。找回/恢復(fù)刪除的文件。

是十分方便的系統(tǒng)監(jiān)視工具,因?yàn)閘sof命令需要訪問核心內(nèi)存和各種文件,所以需要root用戶執(zhí)行。

在linux環(huán)境下,任何事物都以文件的形式存在,通過文件不僅僅可以訪問常規(guī)數(shù)據(jù),還可以訪問網(wǎng)絡(luò)連接和硬件。

所以如傳輸控制協(xié)議 (TCP) 和用戶數(shù)據(jù)報協(xié)議 (UDP) 套接字等,系統(tǒng)在后臺都為該應(yīng)用程序分配了一個文件描述符,無論這個文件的本質(zhì)如何,該文件描述符為應(yīng)用程序與基礎(chǔ)操作系統(tǒng)之間的交互提供了通用接口。

因?yàn)閼?yīng)用程序打開文件的描述符列表提供了大量關(guān)于這個應(yīng)用程序本身的信息,因此通過lsof工具能夠查看這個列表對系統(tǒng)監(jiān)測以及排錯將是很有幫助的。

語法

lsof(選項)

選項描述-a列出打開文件存在的進(jìn)程;-c<進(jìn)程名>列出指定進(jìn)程所打開的文件;-g列出GID號進(jìn)程詳情;-d<文件號>列出占用該文件號的進(jìn)程;+d<目錄>列出目錄下被打開的文件;+D<目錄>遞歸列出目錄下被打開的文件;-n<目錄>列出使用NFS的文件;-i<條件>列出符合條件的進(jìn)程。(4、6、協(xié)議、:端口、 @ip )-p<進(jìn)程號>列出指定進(jìn)程號所打開的文件;-u列出UID號進(jìn)程詳情;-h顯示幫助信息-v顯示版本信息[root@localhost~]# lsofcommand PID USER FD type DEVICE SIZE NODE NAMElsof輸出各列信息的意義如下COMMAND:進(jìn)程的名稱PID:進(jìn)程標(biāo)識符PPID:父進(jìn)程標(biāo)識符(需要指定-R參數(shù))USER:進(jìn)程所有者PGID:進(jìn)程所屬組FD:文件描述符,應(yīng)用程序通過文件描述符識別該文件。DEVICE:指定磁盤的名稱SIZE:文件的大小NODE:索引節(jié)點(diǎn)(文件在磁盤上的標(biāo)識)NAME:打開文件的確切名稱

FD文件描述符列表

cwd:表示current work dirctory,即:應(yīng)用程序的當(dāng)前工作目錄,這是該應(yīng)用程序啟動的目錄,除非它本身對這個目錄進(jìn)行更改txt:該類型的文件是程序代碼,如應(yīng)用程序二進(jìn)制文件本身或共享庫,如上列表中顯示的 /sbin/init 程序lnn:library references (AIX)(庫引用);er:FD information error (see NAME column)(fd信息錯誤);jld:jail directory (FreeBSD)(監(jiān)控目錄);ltx:shared library text (code and data)(共享庫文本);mxx :hex memory-mapped type number xx(十六進(jìn)制內(nèi)存映射類型號xx);m86:DOS Merge mapped file(DOS合并映射文件);mem:memory-mapped file(內(nèi)存映射文件);mmap:memory-mapped device(內(nèi)存映射設(shè)備);pd:parent directory(父目錄);rtd:root directory(跟目錄);tr:kernel trace file (OpenBSD)(內(nèi)核跟蹤文件);v86 VP/ix mapped file(VP/IX映射文件);0:表示標(biāo)準(zhǔn)輸出1:表示標(biāo)準(zhǔn)輸入2:表示標(biāo)準(zhǔn)錯誤

文件類型:

DIR:表示目錄。CHR:表示字符類型。BLK:塊設(shè)備類型。UNIX: UNIX 域套接字。FIFO:先進(jìn)先出 (FIFO) 隊列。IPv4:網(wǎng)際協(xié)議 (IP) 套接字。DEVICE:指定磁盤的名稱SIZE:文件的大小NODE:索引節(jié)點(diǎn)(文件在磁盤上的標(biāo)識)NAME:打開文件的確切名稱總結(jié)

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Linux
主站蜘蛛池模板: sese欧美| 日韩黄色在线播放 | 日本黄色激情片 | 日本96在线精品视频免费观看 | 亚洲成熟 | 婷婷丁香在线 | 久久99影院网久久久久久 | 国产极品视频 | 国产免费一区2区3区4区 | 国产精品冒白浆免费视频 | 欧美一级欧美三级在线观看 | 最新内地三级在线观看 | 99久热只有精品视频免费观看17 | 俄罗斯14一18处交 | 日本免费一区二区三区a区 日本内谢69xxxx免费播放 | 婷婷激情综合 | 国产成人亚洲日本精品 | 免费欧洲毛片a级视频 | 日韩最新中文字幕 | 国产福利一区二区在线观看 | 国产麻豆91网在线看 | 国产成人精品视频在放 | 精品国偷自产在线不卡短视频 | 国产aⅴ一区二区三区 | 草逼com| 欧美一区不卡二区不卡三区 | 一级一级一级毛片免费毛片 | 91网址在线播放 | 日本三级无码中文字幕 | 国产亚洲制服 | 进来综合网| 国产老湿机福利视频在线观看 | 50-60岁老妇女一级毛片 | 国产三级在线看 | 国产成人精品系列在线观看 | 国产精品一区二区欧美视频 | 亚洲第一区视频 | 亚洲国产欧美在线人成aaa | 精品国产福利在线观看91啪 | 麻豆视传媒一区二区三区 | 日韩精品你懂的在线播放 |