2.1 指標
關于監(jiān)控指標數(shù)據(jù)的疑惑,大多可以從PerfMon插件的Metric parameter設置界面找到答案。我們知道對于服務器如CPU、內存等每一個監(jiān)控指標類型,都有多種數(shù)據(jù)從不同維度來體現(xiàn)資源使用情況,比如對于CPU,在Linux系統(tǒng)用top命令,就可以看idle、user、system等數(shù)據(jù)。
對于PerfMon插件,可以通過Metric parameter來設置某種資源具體要收集和展示的數(shù)據(jù),只是它的入口并不是很醒目,如下圖4右上的紅色箭頭所指,需要雙擊輸入框后,點擊最后邊的按鈕打開,打開的界面如圖4中級紅色箭頭所指,雖然每種指標的具體配置項不同,但結構相同,都分為Primary Metrics、Additional Metrics等等,Primary是官方認為常用的,通常也是實際工作中更關心,更具有參考意義的指標項,Additional則是在一些特殊場景可能需要了解的指標項。
這里先簡單說一下幾種主要的資源類型的指標項,對應的圖就不貼了,太占篇幅,影響閱讀:
1、CPU:
對于各指標項,數(shù)值都是代表百分比,比如默認配置(combined)下在曲線圖中看到某個時間的數(shù)值是30,即代表此時總的cpu使用時間占比為30%。
有兩點比較有用的地方值得說明:一是在Scope區(qū)域,可以通過Per Process選項來獲取指定進程的CPU使用情況,二是在CPU Cores區(qū)域,我們可以選擇監(jiān)控指定的單個Core。
2、Memory:
各指標項中,usedperc(默認)和freeperc兩項的數(shù)值代表與總內存的百分比,其余指標項的數(shù)值都是指內存大小,選中對應想,可以看到Metric Unit區(qū)域單位配置將變?yōu)榭捎?,通常Mb會比較適合觀察。
同樣,也可以選擇監(jiān)控指定進程的數(shù)據(jù)
3、Disk I/O:
各指標項中,queue(默認)的數(shù)值代表等待I/O隊列長度,reads、writes分別代表每秒處理的讀/寫次數(shù),readbytes、writebytes顧名思義,代表每秒讀/寫的數(shù)據(jù)量,單位同樣在Metric Unit區(qū)域配置,通常Mb會比較適合觀察。
如果有掛載多個存儲設備,可以在Filesystem Filter區(qū)域指定要監(jiān)控的設備。
剩下的,就不一一說明了,參考前面幾項,我覺得理解其他資源類型的配置應該沒有問題了,至于具體指標項的含義,首先用不到的可以暫時不去了解,如果想要了解,請善用搜索。
2.2 曲線圖
1、使用策略:
如果測試場景的測試執(zhí)行時間較長,采集的監(jiān)控數(shù)據(jù)量比較大,為了在GUI模式查看曲線圖時更方便、快捷,建議將各個監(jiān)控指標項單獨使用一個PerfMon監(jiān)聽器,從而配置不同的指標項數(shù)據(jù)存儲到不同的文件中,測試執(zhí)行完畢后,載入數(shù)據(jù)和數(shù)據(jù)查看都會更快。
如果預計數(shù)據(jù)量不會太大,可以以服務器為單位來劃分PerfMon監(jiān)聽器。這樣可以方便的觀察到整個測試過程中,某臺服務器各項資源使用情況的變化趨勢
對于分布式服務、為了方便觀察各個節(jié)點的負載分布、負載變化趨勢,可以考慮將同類型的節(jié)點放置到同一個PerfMon監(jiān)聽器,以便對比觀察
2、數(shù)值:
當一個PerfMon監(jiān)聽器中展示多種指標項的數(shù)據(jù)時,為了曲線圖的可觀察性,插件會自動進行優(yōu)化,如圖5所示,我們看到在CPU項和內存項都有個x10,代表曲線圖中展示的數(shù)值是在采集到的真實數(shù)值上放大了10倍,目的是為了保證不同數(shù)據(jù)項在同一坐標系中展示時,各項都變化趨勢都能夠被觀察到。
圖5 曲線圖
曲線圖配置:
插件界面的Rows標簽頁可以調整要在曲線圖中展示的指標項
Setting標簽頁中常用的有
use relative times用于配置曲線圖x軸表示相對時間(測試開始時為0)還是實際系統(tǒng)時間。
Auto-zoom rows for best fit默認勾選,則會有上一節(jié)講數(shù)值時提到的展示數(shù)據(jù)自動放大的功能,取消勾選則全部展示采集的實際數(shù)值。
Limit number of points in row to xx points:勾選后可以設定曲線圖展示的采樣點數(shù)量,我們的測試報告會有不同的角色查看,其中一些角色可能不具備也不需要對監(jiān)控數(shù)據(jù)的細節(jié)理解能力,此時我們提供的監(jiān)控曲線圖應該是易讀的,如果按照實際的所有采樣點來渲染出曲線圖,可能會有很多偏離趨勢的噪點數(shù)據(jù),這對于不了解的人來說可能會有很多疑惑,所以當我們有了分析結論,最后報告呈現(xiàn)的時候,可以考慮通過調整采樣點,來讓曲線圖更好的展示資源使用趨勢,消除其他不必要的信息。
圖6 曲線圖配置
Force maximum Y axis value to xx,實際上我更多會選擇不勾選,不勾選的情況下,插件在描繪曲線圖的時候,會根據(jù)數(shù)值大小自動調整Y軸最大值,以達到更佳可讀性,如圖7和圖8,分別是不勾選,和勾選后設置最大值為100時的曲線圖效果,顯然圖7可以更容易的觀察到變化的細節(jié)。不過與上一項類似,可能在對外出具報告時,為了更少的解釋說明,可能需要某個指定的數(shù)值。
圖7 不自定義Y軸
圖8 自定義Y軸
2.3 自定義指標
1、EXEC
在插件界面選擇指標類型時,可以看到一個EXEC選型,該選項允許我們在后面的Metric parameter中配置一個命令語句(該語句最終應該輸出單個數(shù)值),測試執(zhí)行時,ServerAgent將執(zhí)行該命令,同時插件將接收ServerAgent捕獲的輸出數(shù)值。
語法規(guī)則:EXEC所配置的語句需要按照一定的規(guī)則來填寫,先是給出命令的執(zhí)行程序的位置,然后將具體的命令以及命令的參數(shù)作為,命令和命令參數(shù)都需要用冒號”:”來隔開。比如/bin/sh:-c:free |grep Mem |awk '{pring $7}'
/bin/sh,代表命令的執(zhí)行程序
-c,即/bin/sh的-c選型,有-c選型的情況下,將從后面的字符串按一定規(guī)則解析為命令和命令參數(shù)
可以看到有用冒號分隔了執(zhí)行程序/選型參數(shù)/命令語句
對于windows,也類似,如C\:\Windows\System32\cmd.exe:/c:echo %RANDOM%
2、TAIL
如同Linux的tail命令,讀取文件的最后一行,用在這里,需要文件每一行只包含一個單獨的數(shù)值。借助tail,我們可以通過自定義腳本監(jiān)控任意指標,只需要腳本的輸出滿足要求即可。
顯而易見,TAIL后面的參數(shù)就是配置要讀取的文件的地址,測試執(zhí)行時,ServerAgent將根據(jù)配置讀取所在服務器的指定文件。
叁.總結
|
|
來自: 昵稱70680357 > 《待分類》