上篇文章使用了指令行來進行壓測,并提到了使用指令行壓測的痛點:無法實時監控報錯以及各接口的tps情況。
為此有了jmeter+influxdb+grafana的方案。(jmeter—>influxdb存儲—>grafana展示)
grafana 是一款采用 go 語言編寫的開源跨平台工具,主要用于大規模名額資料的可視化展現,是網絡架構和應用分析中最流行的時序資料展示工具,目前已經支援絕大部分常用的時序資料庫。
influxdb是一個時序資料庫。因為
時序
的特性并且性能極高,可以處理海量的資料查詢,是以被用在監控方面。
1.安裝influxdb和grafana
在centos7下安裝influxdb,使用docker run的相關指令
docker run -d --name influxdb -p 8086:8086 influxdb:1.6.3
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 安裝grafana也還是使用docker run指令
docker run -d -p 3000:3000 --name grafana grafana/grafana:5.2.1
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 2.然後是通路grafana
在使用docker run指令建立容器的時候,指定了3000端口,現在可以在浏覽器通路grafana了
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 初始密碼是admin/admin,登入進入後可以修改一下密碼,登入進入後導入data source influxdb
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 然後指定url,因為之前docker run的時候建立的influxdb占用的端口是8086,是以這邊也是8086
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 但是influxdb裡的一些東西還沒有準備好
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 3.建立influxdb資料庫
grafana已經連接配接了influxdb了。但是現在influxdb剛剛建立好,裡面還是空的
輸入指令
docker exec -it influxdb /bin/bash
進入influxdb的互動模式
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 然後輸入
influx
進入資料庫,類似于MySQL的
mysql -u root -p
指令
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 show databases;
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 建立一個新表
creata database jmeter;
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 在grafana填入資料庫名稱jmeter
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 4.grafana使用報表模闆
官方報表模闆庫:https://grafana.com/dashboards
找到jmeter的官方模闆
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 使用這個報表的方式有兩種,一個是以json檔案的方式下載下傳下來,另一個是直接使用他的id5496
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 這邊使用id
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 然後就可以看到界面了
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 5.jmeter内操作,将資料寫入influxdb資料庫
在接口下面添加一個Backend Listener
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 這邊選第三個
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 接下來把url裡的主機位址換成自己的,端口不改,因為之前docker建立influxdb的時候端口号是8086
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況 然後開始運作壓測(這邊圖形化壓測即可,隻是為了看圖表)
6.檢視圖示展示情況
傳回grafana,重新整理dashboard
jmeter(十一)_jmeter+influxdb+grafana1.安裝influxdb和grafana2.然後是通路grafana3.建立influxdb資料庫4.grafana使用報表模闆5.jmeter内操作,将資料寫入influxdb資料庫6.檢視圖示展示情況