Linux CPU占用率常用監(jiān)控工具分享_第1頁
Linux CPU占用率常用監(jiān)控工具分享_第2頁
Linux CPU占用率常用監(jiān)控工具分享_第3頁
Linux CPU占用率常用監(jiān)控工具分享_第4頁
Linux CPU占用率常用監(jiān)控工具分享_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

LinuxCPU占用率常用監(jiān)控工具分享今天跟大家分享監(jiān)控CPU常用的工具大全,利用這些工具,足以讓你監(jiān)控CPU相關(guān)資源??催^本文,不要說你不會了!01.toptop是最常用的查看系統(tǒng)資源使用情況的工具,包括CPU、內(nèi)存等等資源。這里主要關(guān)注CPU資源。1.1/proc/loadavgloadaverage取自/proc/loadavg。9.539.128.373/88928165前三個數(shù)字是1、5、15分鐘內(nèi)進程隊列中平均進程數(shù),包括正在運行的進程+準備好等待運行的進程。第四個數(shù)字分子表示正在運行的進程數(shù),分母是進程總數(shù)。最后一個數(shù)字是最近運行的進程ID號。其中top取的是/proc/loadavg的前三個數(shù)。1.2top使用打開top,可以指定更新的周期。輸入H,打開隱藏的線程;輸入1,可以顯示單核CPU使用情況。top-H-b-d1-n200>top.txt,每個1秒統(tǒng)計一次,共200次,顯示線程細節(jié),并保存到top.txt中。top采樣來源你還依賴于/proc/stat和/proc//stat兩個,這兩個的詳細介紹參考:/proc/stat[1]和/proc//stat[2]。其中CPU信息對應(yīng)的含義如下:us:user,統(tǒng)計nice小于等于0的用戶空間進程,也即優(yōu)先級為100~120。ni:nice,統(tǒng)計nice大于0的用戶空間進程,也即優(yōu)先級為121~139。sys:system,統(tǒng)計內(nèi)核態(tài)運行時間,不包括中斷。id:idle,幾系統(tǒng)處于空閑態(tài)。wa:iowait,統(tǒng)計io等待時間。hi:hardwareinterrupt,統(tǒng)計硬件中斷時間。si:softwareinterrupt,統(tǒng)計軟中斷時間。st:steal02.perf《系統(tǒng)級性能分析工具perf的介紹與使用[3]》有關(guān)于perf使用的詳細介紹,這里重點關(guān)注CPU占用率。通過sudoperftop-scomm,可以查看當前系統(tǒng)運行進程占比。這里不像top一樣區(qū)分idle、system、user,這里的占比是各個進程在總運行時間里面占比。通過sudoperfrecord記錄采樣信息,然后通過sudoperfreport-scomm。03.sar和ksarsar是SystemActivityReport的意思,可以用于實時觀察當前系統(tǒng)活動,也可以生成歷史記錄的報告。要使用sar需要安裝sudoaptinstallsysstat,然后對sysstat進行配置。sar用于記錄統(tǒng)計信息,ksar[4]用于將記錄的信息圖形化輸出。ksar下載地址在:https://github/vlsi/ksar/releases。#將ENABLED=“false“改為ENABLED=“true“$sudogedit/etc/default/sysstat#修改sar的周期等配置$sudogedit/etc/cron.d/sysstat#重啟sar服務(wù)$sudo/etc/init.d/sysstatrestart#sarlog存放目錄$ls-l/var/log/sysstat/使用sar記錄開機到目前的統(tǒng)計信息到文件sar.txt。LC_ALL=Csar-A>sar.txtPS:這里直接使用sar-A,在ksar中無法正常顯示。如下執(zhí)行java-jarksar.jar,然后Data->Loadfromtextfile...選擇保存的sar.txt文件。得到如下的圖表。

還可以通過sar記錄一段時間的信息,指定采樣周期和采樣次數(shù)。這些命令前加上LC_ALL=C之后保存到文件中,都可以在ksar中圖形化顯示。sar1100所有cpu合一的統(tǒng)計信息sar-PALL1100包括cpu合一以及單個cpu的統(tǒng)計信息sar-B1100paging統(tǒng)計信息sar-b1100塊設(shè)備IO統(tǒng)計信息sar-d1100塊設(shè)備活動統(tǒng)計信息sar-F1100掛載的文件系統(tǒng)統(tǒng)計信息sar-rALL顯示詳細的內(nèi)存使用統(tǒng)計信息sar-S顯示swap空間使用情況統(tǒng)計信息sar-w顯示進程創(chuàng)建以及進程切換統(tǒng)計信息sar-W顯示swap換入換出統(tǒng)計信息。更詳細請參考?《HowToCreatesarGraphsWithkSarToIdentifyingLinuxBottlenecks[5]》?《CollectandreportLinuxSystemActivityInformationwithsar[6]》。04.mpstatmpstat是MultiprocessorStatistics。當沒有參數(shù)時,mpstat顯示系統(tǒng)系統(tǒng)以來所有信息平均值。常見用法如下,-PALL監(jiān)控所有CPU,細節(jié)顯示特定CPU;10表示每10秒監(jiān)控一次;20表示監(jiān)控20次。$mpstat-PALL1020結(jié)果如下:

usr表示用戶空間進程,nice表示nice值大于0的用戶空間進程。sys是內(nèi)核空間,iowait是I/O等待時間,irq是硬中斷,soft是軟中斷,idle是空閑時間,guest和gnice都是虛擬機時間。05.uptimeuptime是一個簡單獲取系統(tǒng)總共運行多長時間,以及最近1分鐘、5分鐘、15分鐘的平均負載。uptime通過/proc/uptime和/proc/loadavg獲取相關(guān)信息。up前是當前系統(tǒng)時間,up后是系統(tǒng)運行時長。loadaverage后是1分鐘、5分鐘、15分鐘平均負載。11:15:41up82days,20:34,8users,loadaverage:0.28,0.40,0.4306.vmstatvmstat主要用于監(jiān)控系統(tǒng)內(nèi)存使用情況的工具,但是也包含一些CPU相關(guān)信息。使用方法vmstat55表示運行5次,每次5秒。結(jié)果如下:procsmemoryswap--io-system--cpurbswpdfreebuffcachesisobiboincsussyidwast104725762286885590921061756009391084870010472576228184559100106175600013153233951068400104725762293085591001061616000014463449105850000472576229592559108106161600061419347410585001047257622980455910810616160000144634391058500上面的參數(shù)可以分為6大部分:進程、內(nèi)存、swap、io、中斷和進程切換、cpu。

更加詳細的解釋:參考文檔:《LinuxPerformanceMeasurementsusingvmstat[7]》07.pidstatpidstat主要用于監(jiān)控全部或指定進程占用系統(tǒng)資源的情況。7.1查看CPU使用情況pidstat首次運行時顯示自系統(tǒng)啟動開始的各項統(tǒng)計信息,之后運行pidstat將顯示自上次運行該命令以后的統(tǒng)計信息。用戶可以通過指定統(tǒng)計的次數(shù)和時間來獲得所需的統(tǒng)計信息。#顯示所有的進程統(tǒng)計信息,包括idle進程。pidstat-pALL#更加詳細的顯示了線程統(tǒng)計信息。pidstat-pALL-t#周期采樣和采樣次數(shù)pidstat[option]interval[count]除此之外還可以通過-p獲取指定進程的統(tǒng)計信息。pidstat還可以通過-r獲取內(nèi)存使用統(tǒng)計信息,通過-d獲取IO使用統(tǒng)計信息。7.2查看內(nèi)存使用情況pidstat-pALL-r結(jié)果如下:15時18分21秒UIDPIDminflt/smajflt/sVSZRSS%MEMCommand15時18分21秒010.020.0018531630280.08systemd15時18分21秒020.000.00000.00kthreadd15時18分21秒040.000.00000.00kworker/0:0H15時18分21秒060.000.00000.00mm_percpu_wq15時18分21秒070.000.00000.00ksoftirqd/015時18分21秒080.000.00000.00rcu_schedminflt/s:每秒次缺頁錯誤次數(shù)(minorpagefaults),次缺頁錯誤次數(shù)意即虛擬內(nèi)存地址映射成物理內(nèi)存地址產(chǎn)生的pagefault次數(shù)。majflt/s:每秒主缺頁錯誤次數(shù)(majorpagefaults),當虛擬內(nèi)存地址映射成物理內(nèi)存地址時,相應(yīng)的page在swap中,這樣的pagefault為majorpagefault,一般在內(nèi)存使用緊張時產(chǎn)生。VSZ:該進程使用的虛擬內(nèi)存(以kB為單位)。RSS:該進程使用的物理內(nèi)存(以kB為單位)。%MEM:該進程使用內(nèi)存的百分比。Command:拉起進程對應(yīng)的命令。7.3查看磁盤使用情況pidstat-pALL-d結(jié)果如下:15時20分40秒UIDPIDkB_rd/skB_wr/skB_ccwr/siodelayCommand15時20分40秒01-1.00-1.00-1.00243523129systemd15時20分40秒02-1.00-1.00-1.000kthreadd15時20分40秒04-1.00-1.00-1.000kworker/0:0H15時20分40秒06-1.00-1.00-1.000mm_percpu_wq15時20分40秒07-1.00-1.00-1.00714512328679ksoftirqd/015時20分40秒08-1.00-1.00-1.00417757303594rcu_schedkB_rd/s:每秒進程從磁盤讀取的數(shù)據(jù)量(以kB為單位)。kB_wr/s:每秒進程向磁盤寫的數(shù)據(jù)量(以kB為單位)。kB_ccwr/s:每秒進程被取消向磁盤寫的數(shù)據(jù)量(以kB為單位)。Command::拉起進程對應(yīng)的命令。

08.timetime命令可以被用于統(tǒng)計指定程序的CPU耗時。比如timecksumnomachine_6.0.80_1.exe得到如下結(jié)果。240194063832606752nomachine_6.0.80_1.exe#整個操作總耗時,0.263-0.094-0.011=0.158是IO等待耗時。real0m0.263s#用戶態(tài)耗時user0m0.094s#內(nèi)核態(tài)耗時sys0m0.011s240194063832606752nomachine_6.0.80_1.exe#第二次執(zhí)行就可以看出等待IO操作的時間基本上沒有了。real0m0.098suser0m0.097ssys0m0.000s09.cpustat通過sudoaptinstallcpustat安裝,cpustat-T-D-x結(jié)果如下。#顯示LoadAvg信息和平均頻率等LoadAvg0.660.540.49,FreqAvg.1.46GHz,4CPUsonline#進程切換次數(shù)、硬中斷、軟中斷等等統(tǒng)計信息。#CPU占用率、用戶空間和內(nèi)核空間占用率等。3791.1Ctxt/s,1709.9IRQ/s,1800.0softIRQ/s,0.0newtasks/s,1running,0blocked%CPU%USR%SYSPIDSCPUTimeTask25.7425.740.0011435R32.29w/usr/bin/python315.8415.840.009445S01.49w/usr/lib/xorg/Xorg10.899.900.992722S11.05wcompiz7.920.007.9232352S216.60s[kworker/2:1]0.990.000.9932397R10.01scpustat0.990.990.0011046S216.20hcompiz0.990.990.001317S08.76h/usr/NX/bin/nxnode.bin0.990.000.9910293S11.24m[kworker/1:2]64.3653.4710.89TotalLoadAvg0.660.540.49,FreqAvg.1.75GHz,4CPUsonline2834.8Ctxt/s,1190.9IRQ/s,1183.3softIRQ/s,0.0newtasks/s,4running,0blocked%CPU%USR%SYSPIDSCPUTimeTask25.7625.760.0011435R32.29w/usr/bin/python318.1818.180.009445S01.49w/usr/lib/xorg/Xorg7.587.580.002722S11.05wcompiz6.060.006.0632352S216.64s[kworker/2:1]1.520.001.5232397R10.02scpustat1.520.001.528S03.00h[rcu_sched]1.520.001.5218409S01.16mupdate-notifier62.1251.5210.61TotalDistributionofCPUutilisation(perTask):%CPUUtilisationCount(%)0.00-1.9770698.881.97-3.9400.003.94-5.9100.005.91-7.8820.287.88-9.8500.009.85-11.8200.0011.82-13.7910.1413.79-15.7600.0015.76-17.7310.1417.73-19.7010.1419.70-21.6700.0021.67-23.6400.0023.64-25.6120.2825.61-27.5700.0027.58-29.5400.0029.55-31.5100.0031.52-33.4800.0033.48-35.4500.0035.45-37.4200.0037.42-39.3910.14DistributionofCPUutilisation(perCPU):各CPU占用率,分用戶空間和內(nèi)核空間。CPU#USR%SYS%017.371.2018.982.4020.607.19325.750.0010.htophtop和top的功能類似,但是可讀性比top更好。在界面按下F5,可以看到進程里面的線程,樹形結(jié)構(gòu)表示了父子關(guān)系。11.atopatop是一個監(jiān)控系統(tǒng)資源和進程的工具。它通過CPU使用率來對列表中的進程進行降序排列,而每一個進程則包含了CPU、內(nèi)存、磁盤和網(wǎng)絡(luò)狀態(tài)等信息。它的功能與top和htop類似。12.glancesglances是一個由python編寫的,與Nmon功能類似的報告工具,它能夠報告統(tǒng)計cpu、內(nèi)存、網(wǎng)絡(luò)、磁盤和進程。除了報告統(tǒng)計,glances不支持任何其他特性或功能。當程序運行時點擊“h”可以顯示幫助頁面。13.nmonNmon是一個非常容易使用,能夠在一個屏幕上監(jiān)視CPU、內(nèi)存、網(wǎng)絡(luò)、磁盤使用狀況和進程列表的工具。除了無法管理進程和修改報告顯示,Nmon與那些只用于報告的報告工具完全一樣。另外,它可以將數(shù)據(jù)保存到電子表格文件。13.pcp-guiPerformanceCo-Pilot,簡稱PCP,是一個系統(tǒng)性能和分析框架。它從多個主機整理數(shù)據(jù)并實時的分析,幫你識別不正常的表現(xiàn)模式。它也提供API讓你設(shè)計自己的監(jiān)控和報告解決方案。安裝pcp相關(guān)工具。$sudoaptinstallpcppcp-guiFile->OpenView選擇需要打開的視圖,比如CPU、Disk、Memory等。

14.collectl和colplot14.1collectl使用collectl是一款非常優(yōu)秀并且有著豐富的命令行功能的實用程序,你可以用它來采集描述當前系統(tǒng)狀態(tài)的性能數(shù)據(jù)。不同于大多數(shù)其它的系統(tǒng)監(jiān)控工具,collectl并非僅局限于有限的系統(tǒng)度量,相反,它可以收集許多不同類型系統(tǒng)資源的相關(guān)信息,如cpu、disk、memory、network、sockets、tcp、inodes、infiniband、lustre、memory、nfs、processes、quadrics、slabs和buddyinfo等。同時collectl還可以替代常用工具,比如top、vmstat、ps、iotop等。安裝collectl:sudoapt-getinstallcollectlcollectl的使用很簡單,默認collectl顯示cpu、磁盤、網(wǎng)絡(luò)信息。

collectl還可以顯示更多的子系統(tǒng)信息,如果選項存在對應(yīng)的大寫選項,大寫選項表示更細節(jié)的設(shè)備統(tǒng)計信息。b–buddyinfo(內(nèi)存碎片)c–所有C

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論