1. 程式人生 > >JMeter使用記錄3 -- 效能監控外掛jmeter-plugins

JMeter使用記錄3 -- 效能監控外掛jmeter-plugins

JMeter生成的result圖表實在是不容易看,一直用著一款外掛,可以生成許多更直觀的圖,甚至可以結合server-agent檢視系統的執行資源使用情況。

JMeter測試資料圖表生成

外掛安裝

1. 下載最新jmeter外掛jmeter-plugins-standard downloads page

2. 把zip資料夾解壓到Jmeter的安裝目錄

3. 修改jmeter安裝路徑中:bin/jmeter.properties檔案的以下行:

jmeter.save.saveservice.thread_counts=true 
4. 啟動JMeter就可以看到多了很多[email protected]
開頭的選項

獲取jtl檔案

在Thread Groups裡面新建View Results Tree,把results寫到jtl檔案,點選configure可以選擇要分析的資料

從jtl檔案中生成效能報表

JMeter-plugins可以從jtl裡面提取資料生成各種型別的圖表,在我們的系統中最關注的就是系統延遲和TPS,可以通過CMDRunner來生成對應的圖表。

java -jar apache-jmeter-2.8/lib/ext/CMDRunner.jar --tool Reporter --input-jtl ./testresult.jtl --plugin-type LatenciesOverTime --generate-png report-latency.png
java -jar apache-jmeter-2.8/lib/ext/CMDRunner.jar --tool Reporter --input-jtl ~/testresult.jtl --plugin-type TransactionsPerSecond --generate-png report-transactionPerSec.png

伺服器資源使用監控

上面說的是在JMeter測試端測試伺服器的吞吐,實際測試過程中我們也需要觀察伺服器的資源使用情況,這個可以通過ServerAgent來實現。ServerAgent在每個伺服器上啟動一個程序監聽伺服器資料,並且提供4444埠給外部讀取監聽資料,JMeter Plugin提供了讀取ServerAgent資料的外掛。Agent安裝啟動在http://jmeter-plugins.org/downloads/all/下載Serveragent,解壓後執行startAgent.bat(windows), startAgent.sh(linux), 系統監聽4444埠。
C:\Users\elulian\Documents\cloudlu\Software\apache-jmeter-2.11\ServerAgent-2.2.1>.\startAgent.bat
INFO    2014-07-30 15:43:25.478 [kg.apc.p] (): Binding UDP to 4444
INFO    2014-07-30 15:43:26.478 [kg.apc.p] (): Binding TCP to 4444
INFO    2014-07-30 15:43:26.478 [kg.apc.p] (): 
[email protected]
Agent v2.2.0 started
JMeter收集資料










JMeter根據結果生成統計圖
同樣通過JMeter-plugins可以從jtl裡面提取資料生成對應的圖表
java -jar $jmeter_path/lib/ext/CMDRunner.jar --tool Reporter --input-jtl cpu.jtl --plugin-type PerfMon --generate-png report-cpu.png >& /dev/null
java -jar $jmeter_path/lib/ext/CMDRunner.jar --tool Reporter --input-jtl memory.jtl --plugin-type PerfMon --generate-png report-memory.png >& /dev/null
java -jar $jmeter_path/lib/ext/CMDRunner.jar --tool Reporter --input-jtl diskIO.jtl --plugin-type PerfMon --generate-png report-diskIO.png >& /dev/null

PS:

1. 以前伺服器監控各自為政,現在有很多非常優秀的軟體,提供統一介面監控系統使用情況,監控整個大的區域網系統情況,例如:nagios。

2. 生成圖的操作可以通過jmeter來實現,有一款jmeter外掛可以執行ssh command http://code.google.com/p/jmeter-ssh-sampler/