版權聲明:本文為部落客原創文章,未經部落客允許不得轉載。 https://blog.csdn.net/catoop/article/details/50781952
JMeter是一款壓力測試工具,我們也可以用它來監控伺服器資源使用情況。
JMeter正常自帶可以通過Tomcat的/manager/status來監控服務資源使用情況。這種情況隻能監控Tomcat支援的資源使用部分。
本文主要來說一下如何通過JMeter插件來監控伺服器CPU、記憶體、磁盤、網絡等相關資源。
JMeter 插件網址:
http://jmeter-plugins.org/ Perf Mon 插件 http://jmeter-plugins.org/wiki/PerfMon/一、下載下傳
首先進入網址
http://jmeter-plugins.org/downloads/all/下載下傳資源
ServerAgent-2.2.1.zip
JMeterPlugins-Standard-1.3.1.zip
JMeterPlugins-Extras-1.3.1.zip
其中JMeterPlugins-Standard和JMeterPlugins-Extras是用戶端的,ServerAgent是服務端的。
二、配置
将 JMeterPlugins-Standard-1.3.1.zip 中 lib\ext 目錄下的 JmeterPlugins-Standard.jar 檔案都放到apache-jmeter-2.13\lib\ext目錄中。
将 JMeterPlugins-Extras-1.3.1.zip 中 lib\ext 目錄下的 JMeterPlugins-Extras.jar 檔案放到apache-jmeter-2.13\lib\ext目錄中。
将 ServerAgent-2.2.1 放到要監控的伺服器中待使用。
三、監控
1) apache-jmeter-2.12\bin\jmeter.bat 啟動JMeter
正常啟動成功後截圖如下:
如果不能啟動檢視jdk版本或者jdk是否安裝正确。
2) 檢視插件是否正常加載,如圖:
其中jp@gc 開頭的為加載插件後出現的。
3) 運作 ServerAgent-2.2.1\bin\startAgent.bat(Linux使用startAgent.sh)
(預設端口為4444,也可以參數指定 –udp-port 4445 –tcp-port 4445)
可以看到輸出内容如下:
INFO 2016-02-23 21:21:37.209 [kg.apc.p] (): Binding UDP to 4444
INFO 2016-02-23 21:21:38.208 [kg.apc.p] (): Binding TCP to 4444
INFO 2016-02-23 21:21:38.210 [kg.apc.p] (): JP@GC Agent v2.2.0 started
4) 在JMeter 中的測試計劃中,按上面的截圖,添加監聽器 “jp@gc - PerfMon Metrics Collector”
點選上面的啟動按鈕後,檢視ServerAgent日志出現:
INFO 2016-02-23 21:34:46.966 [kg.apc.p] (): Accepting new TCP connection
INFO 2016-02-23 21:34:46.969 [kg.apc.p] (): Yep, we received the 'test' command
INFO 2016-02-23 21:34:46.971 [kg.apc.p] (): Starting measures: cpu:
INFO 2016-02-23 21:34:47.123 [kg.apc.p] (): Client disconnected
運作jmeter時,成功連接配接然後立刻斷開了,并沒有擷取我們想要的資料。猜想需要一個時間控制的元器件,使其能夠擷取一段時間的資料。
解決方法:
添加線程組,設定循環次數為”永遠”;
為線程組任意添加一個Sampler(并不設定參數);
添加一個PerfMon Metrics Collector監聽器;點選運作。(上面如果已經添加過,可直接使用無需再添加)
然後在 jp@gc - PerfMon Metrics Collector 界面,啟動。
結果:成功擷取chart圖,點選stop,即結束監聽資料,下面是截圖。