在使用Jmeter做性能測試,監控系統性能的時候,無論是使用插件還是報告生成,都比較麻煩,而且樣式看起來比較醜,是以使用
Jmeter
+
Grafana
+
InfluxDB
來打造壓測可視化實時監控。
環境說明:
本次搭建都在
Linux
環境下進行,本篇文章使用到的安裝包在公衆号背景回複關鍵詞“
Jmeter實時監控
”即可一鍵擷取。
一、InfluxDB安裝及使用
1、InfluxDB概念
InfluxDB
是一款用
Go
語言編寫的開源分布式時序、事件和名額資料庫,無需外部依賴。該資料庫現在主要用于存儲涉及大量的時間戳資料,如DevOps監控資料,APP metrics, loT傳感器資料和實時分析資料。
2、InfluxDB特點
InfluxDB的特點可以歸納為以下9個方面:
- 無結構(無模式):可以是任意數量的列;
- 可以設定metric的儲存時間;
- 支援與時間有關的相關函數(如min、max、sum、count、mean、median等),友善統計;
- 支援存儲政策:可以用于資料的删改。(influxDB沒有提供資料的删除與修改方法);
- 支援連續查詢:是資料庫中自動定時啟動的一組語句,和存儲政策搭配可以降低InfluxDB的系統占用量;
- 原生的HTTP支援,内置HTTP API;
- 支援類似sql文法;
- 支援設定資料在叢集中的副本數;
- 支援定期采樣資料,寫入另外的measurement,友善分粒度存儲資料。
3、InfluxDB安裝
具體步驟如下:
①上傳influxdb.rpm包到伺服器;
②輸入指令:yum localinstall influxdb.rpm,安裝influxdb;
③啟動服務:systemctl start influxdb;
④檢視啟動狀态:systemctl status influxdb;
⑤輸入influx,即可進入互動界面。

4、InfluxDB使用
①InfluxDB中建立資料庫,使用指令:create database 資料庫名。如下,建立一個名稱為jmeter的資料庫:create database jmeter。
②檢視目前的資料庫,使用指令:show databases;
③切換資料庫,use database。
④建立使用者名及密碼,使用指令:
create user "root" with password "root" with all privileges。
⑤檢視使用者,使用指令:show users。
如果root權限顯示為true,那麼root的使用者就建立好啦。
二、Jmeter腳本配置
以下對Jmeter腳本進行配置,具體分為如下四步。
①打開jmeter,建立一個線程組,配置如下:
②添加一個HTTP Request,壓測位址為:www.baidu.com。
③添加一個Backend Listener,配置如下:
Backend Listener implementation選擇influxdb;
influxdbURL 例"http://localhost:8086/write?db=jmeter"。
④配置完後運作一下Jmeter腳本,再去influxdb的jmeter資料庫中檢視是否有資料,有資料即配置成功。
三、Grafana安裝配置
1、Grafana安裝
步驟如下:
①上傳grafana.rpm包到伺服器;
②安裝Grafana,指令:yum localinstall grafana.rpm;
③啟動服務,systemctl start grafana-server;
④檢視啟動狀态,systemctl status grafana-server;
⑤啟動後,在浏覽器輸入:http://ip:3000即可通路,效果如下:
2、Grafana登入
①Grafana登入頁面,使用者名密碼預設為admin。
②重置密碼:根據自己需要重置密碼或直接跳過。
3、Grafana資料源配置
①在主界面,依次點選Data Sources-->add data source。
選擇“Add data source"添加資料源。
②資料源選擇influxDB。
③輸入ip和端口,InfluxDB資訊。如果沒做更改的話,user和pwd都是預設的root, 為了安全起見,可以自行修改。
4、Grafana Dashboards導入InfluxDB Jmeter模闆
①InfluxDB Jmeter模闆下載下傳位址:https://grafana.com/grafana/dashboards?search=influxdb
②點選Copy ID to Clipboard。
③在Grafana首頁,點選import。
④将複制的ID粘貼。
⑤DB name選擇influxDB,點選Import。
⑥配置完成後,頁面效果如下:
⑦在頁面右上角,下拉選擇5s,即每5s更新一次。
⑧運作jmeter腳本,檢視監控資料。
至此,整個Jmeter+Grafana+InfluxDB就搭建完成了,等着老闆加雞腿吧。
感謝每一個認真閱讀我文章的人,看着粉絲一路的上漲和關注,禮尚往來總是要有的,雖然不是什麼很值錢的東西,如果你用得到的話可以直接拿走:
① 2000多本軟體測試電子書(主流和經典的書籍應該都有了)
② 軟體測試/自動化測試标準庫資料(最全中文版)
③ 項目源碼(四五十個有趣且經典的練手項目及源碼)
④ Python程式設計語言、API接口自動化測試、web自動化測試、App自動化測試(适合小白學習)
⑤ Python學習路線圖(告别不入流的學習)
在我的QQ技術交流群裡(技術交流和資源共享,廣告進來腿給你打斷)
可以自助拿走,群号953306497(備注“csdn111”)群裡的免費資料都是筆者十多年測試生涯的精華。還有同行大神一起交流技術哦。