【jmeter】基於InfluxDB&Grafana的JMeter實時性能測試數據的監控和展現

本文主要講述如何利用JMeter監聽器Backend Listener,配合使用InfluxDB+Grafana展現實時性能測試數據

 

關於JMeter實時測試數據

JMeter從2.11版本開始,命令行模式下執行測試的時候會有summary的實時結果輸出:html

在進行長時間的測試後,這個信息會愈來愈多,並且這些數據在測試完成以後進行讀取和分析也很不直觀,若是能有一個實時的圖形結果來展現這些測試數據(不用等到測試完成後在JMeter裏面建立圖形查看),對執行測試的測試人員來講,這樣的實時圖形(對整個測試過程的性能數據監控)定會提供強大的幫助和數據支持。前端

JMeter 2.13版本恰好提供了這樣的功能,只須要在腳本中加入監聽器【Backend Listener】便可。apache

 

Backend Listener

該監聽器可將測試過程當中實時結果數據寫到時序DB(InfluxDB,graphite等),本文以InfluxDB爲例來保存數據,該監聽器配置以下:

具體的參數配置和說明可見JMeter官網瀏覽器

 

InfluxDB&Grafana

InfluxDB:存儲實時數據的DB,安裝和配置都很easy,具體能夠參考 InfluxDB documentation.
Grafana:DB中存儲的實時數據能夠在瀏覽器(經過Grafana或Influga)查看,本文中以Grafana爲例來講明如何進行圖表實時展現,關於Grafana的安裝和配置,可參考 Grafana Docs
 

如何實現

1.前提條件

  • JMeter版本2.13或以上
  • InfluxDB和Grafana已安裝,而且相應服務已啓動(本文所使用系統爲CentOS 6.5)

2.InfluxDB配置

  • 進入InfluxDB管理頁面:http://<ip of InfluxDB>:8083
  • 新建DB:CREATE DATABASE jmeter
  • 修改配置文件:/etc/influxdb/influxdb.conf
  • 重啓InfluxDB服務:service influxdb restart

3.JMeter數據寫入InfluxDB

  • 腳本里添加監聽器:Backend Listener
  • 配置graphiteHost,graphitePort:<ip of InfluxDB>,2003
  • 執行測試
  • 此時查看InfluxDB數據:

4.Grafana展現InfluxDB數據

  • 新增Data Source,DB指向步驟2中新建的DB:jmeter
  • 新增點擊」Test Connection「確保鏈接到InfluxDB已經ok。
  • 至此,JMeter數據寫入InfluxDB,經過Grafana前端展現的整個過程已配置成功,接下來,就能夠在Grafana上施展拳腳,自定義本身想要的圖形展現了(具體的圖形配置和如何展現,能夠參考Grafana的官方文檔
 

總結

使用Backend Listener這個插件,能夠不用等待整個測試執行完成以後纔來查看測試結果和數據,在整個測試過程當中,數據能夠實時輸出並以動態圖表的形式在前端展現,極大方便了性能測試人員對實時性能測試數據的監控,加上Grafana強大的圖表展現,每一個測試人員均可以搭建出本身喜歡的圖形化頁面,並實時與其餘人員共享,完成對整個性能測試過程當中的實時數據監控。
 
附:Grafana很是漂亮的實時監控圖表展現
相關文章
相關標籤/搜索