1. 程式人生 > >Jmeter + Grafana + InfluxDB 效能測試監控

Jmeter + Grafana + InfluxDB 效能測試監控

閱讀目錄

序章

        前幾天在群裡看到大神們在討論Jmeter + InfluxDB + Grafana監控。說起來Jmeter原生的監控確實太醜了。當年不斷安慰自己說“醜一點沒關係,只要能用,好用,就行了!”。但是內心並不是這樣,做為一名測試人員,都有一顆精益求精的心。看到有東西可以替代那原生的監控資料,果斷親自動手部署了一套。

12

        是吧,很帥吧!資料是用InfluxDB來儲存的,展示則是用Grafana來展示的

        InfluxDB是一個年輕的時序資料庫,是用同樣很年輕的語言“GO”開發出來的。小資料量的時候還效能還不錯,但是資料量大一點,效能問題就體現出來了。不過只是收集一下我幾個小時測試的資料,還是足夠了。要是幾個月的測試資料那還是挑別的資料庫吧。

        Grafana是純粹用js編寫出來的,專門用來展示資料用的。

        基本上,就是Jmeter通過“Backend Listener”,將測試的資料上傳到我的虛擬機器上,通過InfluxDB來儲存,Grafana來展示出來。我們訪問web,稍微配置一下,就可以看到展示的資料了。

    我的InfluxDB和Grafana都是部署在一臺Linux虛擬機器下面的。

虛擬機器 --- IP 192.168.245.131

1. 安裝InfluxDB

新建InfluxDB下載源

cat << EOF | tee /etc/yum.repos.d/influxdb.repo
[influxdb]name = InfluxDB Repository - RHEL \$releaseverbaseurl = https://repos.influxdata.com/rhel/\$releasever/\$basearch/stableenabled = 1gpgcheck = 1gpgkey = https://repos.influxdata.com/influxdb.keyEOF

使用yum下載InfluxDB

yum install -y influxdb

修改InfluxDB的配置,主要配置jmeter儲存的資料庫與埠號,還有需要將UI埠開放

[[email protected]
~]# vi /etc/influxdb/influxdb.conf
# 找到graphite並且修改它的庫與埠[[graphite]]  enabled = true  database = "jmeter"  bind-address = ":2003"  protocol = "tcp"  consistency-level = "one"# 找到admin,將前面的#號去掉,開放它的UI埠

[admin]
  # Determines whether the admin service is enabled.
  enabled = true

  # The default bind address used by the admin service.
  bind-address = ":8083"

  # Whether the admin service should use HTTPS.
  # https-enabled = false

  # The SSL certificate used when HTTPS is enabled.
  # https-certificate = "/etc/ssl/influxdb.pem

啟動InfluxDB

[[email protected] ~]# /etc/init.d/influxdb restartStopping influxdb...influxdb process was stopped [ OK ]Starting influxdb...influxdb process was started [ OK ]

如果啟動成功應該會InfluxDB的web ui介面。檢視有沒有jmeter庫,沒有就新建一個。

在輸入框中,輸入如下,來新建庫:

CREATE DATABASE "jmeter"

8083

2. 安裝Grafana

使用yum下載Grafana並且安裝

yum install https://grafanarel.s3.amazonaws.com/builds/grafana-3.0.1-1.x86_64.rpm

啟動Grafana

[[email protected] ~]# /etc/init.d/grafana-server restartOKopping Grafana Server ...                                [  OK  ]Starting Grafana Server: .... OK

grafana

輸入使用者名稱,密碼登入系統。使用者名稱與密碼都是"admin"

login

新增需要展示資料的資料庫

addData

新增InfluxDB資料庫配置。輸入帳號密碼“admin / admin”,點選Test & Save 提示“Success”說明成功了

【注意】URL的埠是8086,而剛才配置的8083是UI的埠。

    - 8083埠是InfluxDB的UI介面展示的埠

    - 8086埠是Grafana用來從資料庫取資料的埠

    - 2003埠則是剛剛設定的,Jmeter往資料庫發資料的埠

dataSources

3. 配置Jmeter

1. jmeter中,新增“監聽器 -> Backend Listener”

jConfig

2. 配置“Backend Listener”,主要配置Host,如下圖

BackendListener

3. 新增一個Java請求,方便測試。(因為想偷懶,Java請求我什麼都不用寫,直接執行就能成功) sJava

4. 新增“監聽器 -> 檢視結果樹” 執行一下Jmeter,主要看Java請求是否傳送出去了

send

# 可以使用這個,這個是查詢所有表,顯示1條記錄select * from /.*/ limit 1# 也可以使用這個,這個是顯示所有表show measurements

點選回車後,就應該有資料了,會出現下圖:

inf

這個時候再回來配置Grafana,來展示這些資料

新增一個展示專案

點選“Home -> New”

new

新增一個圖表

點選旁邊的綠點“Add Panel -> Graph”

addGraph

配置圖表

配置好了,就能看到圖了。如果看不到圖,請用Jmeter多發幾次Java請求。下圖中選擇監控的選項,可以在Jmeter的官網上檢視到對應的解釋。

graphConfig

大致介紹幾種我常用的監控。

名稱 描述
jmeter.all.h.count 所有請求的TPS
jmeter.<請求名稱>.h.count 對應<請求名稱>的TPS
jmeter.all.ok.pct99 99%的請求響應時間
jmeter.<請求名稱>.ok.pct99 對應<請求名稱>99%的請求響應時間
jmeter.all.test.startedT 執行緒數

【注意】如果要監控<請求名稱>的話,Jmeter上的“Backend Listener”修改如下引數

1. 將“summanyOnly”修改成False,

2. 將“userRegexpForSamplersList”修改成True,

3. 並且要設定“samplersList”的值,“samplersList”是可以支援正則表示式的,“samplersList”的設定要與請求對應,否則找不到該請求。如圖

image

設定好了,執行一下,在Grafana裡面,就可以看到自己的請求了。

image_thumb

最後來一張帥氣的圖:

相關推薦

搭建Jmeter + Grafana + InfluxDB效能測試監控環境

背景 Jmeter原生的實時監控每半分鐘收集一次資料,只能在Linux控制檯檢視日誌輸出,介面看起來不直觀,圖表報告只能等壓測結束後才能生成。如下圖為jmeter在Linux下執行的實時日誌:     那麼如何在壓測過程中實時生成圖表監控資料呢?這裡介紹一種實現方案:搭建Jmete

【乾貨】Jmeter + Grafana + InfluxDB 效能測試監控

序章 前幾天在群裡看到大神們在討論Jmeter + InfluxDB + Grafana監控。說起來Jmeter原生的監控確實太醜了。當年不斷安慰自己說“醜一點沒關係,只要能用,好用,就行了!”。但是內心並不是這樣,做為一名測試人員,都有一顆精益求精的心。看到有東西可以替代那原生的監控資料,果斷

Jmeter + Grafana + InfluxDB 效能測試監控

閱讀目錄 序章         前幾天在群裡看到大神們在討論Jmeter + InfluxDB + Grafana監控。說起來Jmeter原生的監控確實太醜了。當年不斷安慰自己說“醜一點沒關係,只要能用,好用,就行了!”。但是內心並不是這樣,做為一名測試人員,都有一顆精益求精的心。看到有東西可以替代那原生

工程架構-非功能測試工具-效能測試_Jmeter + Grafana + InfluxDB 效能測試監控(轉)

通過InfluxDB支援HTTP提交,從而實現Jmeter監控的入庫,而對於資源監控可以通過(Curl+awk)Shell來過濾監控命令(iostat,Vmstat等)最後提交至庫的方式來完成監控,同理Zabbix也可以。由於本文長度問題,這裡只記錄了關於Jmeter入庫的部

Docker+Jmeter+InfluxDB+Grafana搭建效能測試監控平臺

搭建需求? jmeter自身的聚合測試報告視覺化效果極差,為更加形象的、動態的展示測試過程,需要一個具有時序性的可視區來展示給我們的測試者, 這時候就需要用到後端監控,下面我們來開始搭建符合這種測試需求的測試平臺 此次測試平臺基於阿里雲進行搭建,具體的環境讀者可自行選擇,例如centos或者readhat &

效能測試監控平臺:InfluxDB+Grafana+Jmeter linux環境執行jmeter並生成報告 時序資料庫InfluxDB:簡介及安裝 視覺化工具Grafana:簡介及安裝

前面的部落格介紹了InfluxDB、Telegraf、Grafana的安裝和使用方法,這篇部落格,介紹下如何利用這些開源工具搭建效能測試監控平臺。。。   前言 效能測試工具jmeter自帶的監視器對效能測試結果的實時展示,在Windows系統下的GUI模式執行,渲染和效果不是太好,在linu

效能測試監控Jmeter+Collectd+Influxdb+Grafana

 系統性能指標圖示例: 採集資料(collectd)-> 儲存資料(influxdb) -> 顯示資料(grafana) InfluxDB 是 Go 語言開發的一個開源分散式時序資料庫,非常適合儲存指標、事件、分析等資料 collectd C 語言

jmeter+influxdb+grafana性能測試監控

inter www. eth 效果 ctrl+ 最長 下載地址 源碼 this 背景:   話說Jmeter原生的監控確實太醜了,聽大佬們在討論Jmeter+InfluxDb+Grafana的監控,於是,為了有一個漂亮的測試報告,就手動開始進行部署。 安裝步驟: 1、

全網最詳細!Centos7.X 搭建Grafana+Jmeter+Influxdb 效能實時監控平臺

背景 日常工作中,經常會用到Jmeter去壓測,畢竟LR還要錢(@¥&*...),而最常用的介面壓力測試,我們都是通過聚合報告去檢視壓測結果的,然鵝聚合報告的真的是醜到家了,作為程式猿這當然不能忍!那我們要怎麼給它變得好看點捏?   如何華麗變身? 方式 優點 缺點 場景

藉助Docker搭建JMeter+Grafana+Influxdb監控平臺

我們都知道Jmeter提供了原生的結果檢視,既然有原生的檢視結果,為什麼還要多此一舉使用其他工具進行檢視呢,除了檢視內容豐富外還有最主要的原因:Jmeter提供的檢視結果外掛本身是比較消耗效能的,所以在正式壓測中應當禁用。但是我們又需要在指令碼執行時實時檢視結果,這時就需要藉助外在工具實現。除此之外,在真實壓

效能測試監控 top命令詳解

top命令可以實時動態地檢視系統的整體執行情況,是一個綜合了多方資訊監測系統性能和執行資訊的實用工具。通過top命令所提供的互動式介面,用熱鍵可以管理。 語法 top(選項) 選項 -b:以批處理模式操作; -c:顯示完整的治命令; -d:螢幕重新整理間隔時間; -I:忽

Jmeter】api效能測試總結

1.前提概念   平時常用的效能測試:api效能測試+場景效能測試;今天就說一說api效能測試   2.如何進行效能測試?   需求:對某api進行效能測試,看看最大承受的併發數,分析下圖表   分析:   錯誤思路:當我們接到這個需求的時候,很多人不管三七二十一,先把介面寫起來,然後給

當你想進行簡單效能測試監控的時候應該如何選擇監控命令?

此文已由作者趙慧莉授權網易雲社群釋出。 歡迎訪問網易雲社群,瞭解更多網易技術產品運營經驗。 一、前言 在進行效能測試前,有些引數需要本地進行除錯,不適合直接使用效能測試平臺。主要通過監控CPU、記憶體、磁碟、網路情況來判斷是否符合標準。接下來將通過CPU、記憶體、磁碟、網路情況的評估標準、常見的監控命令、常

cephfs調優 & 效能測試 & 監控 & 常用命令

前言 k8s對ceph rbd模式不支援ReadWriteMany(RWX),為了滿足k8s的靈活性需求,採用支援多點掛載的cephfs工作模式.網上少有針對cephfs調優的文章,因此在本篇,將針對cephfs進行一些引數調優及效能測試 硬體規劃 配置調優

Jmeter之app效能測試(ios,android)

效能測試的相關知識介紹 效能測試: 1、系統容量測試 即求得最大使用者數和最佳使用者數。我們需要對系統做出分析,找出系統的壓力點。 2、系統強度測試 系統在長時間的壓力下效能狀況 3、系統性能瓶頸 需要分析可能對系統造成瓶頸的邏輯業務,然後才能進行效能測試 效能測試常見分

JMeter介面&效能測試

JMeter介面測試 目前最新版本發展到5.0版本,需要Java7以上版本環境,下載解壓目錄後,進入\apache-jmeter-5.0\bin\,雙擊ApacheJMeter.jar檔案啟動JMemter。 1、建立測試任務 新增執行緒組,右擊測試計劃,在快捷選單單擊新增-》執行緒(使用者)-》執行緒

---接上---解決:jmeter淺談效能測試指標分析

3、 解決:JavaVisualVM無法遠端連線  修改catalina.sh中的hostname(修改成目標主機)。 1、目錄:[[email protected]]$ pwd /usr/local/apache-tomcat-7.0.63/bin 2、vim

效能測試監控——CPU

效能測試監控——CPU 為了全面詳細的分析系統執行狀態,發現隱藏的效能瓶頸。效能測試期間,全面監視CPU執行狀態是很有必要的。 本文側重分析效能測試期間需要監控的CPU執行狀態指標,對比相關查詢命令的優劣,並給出最終的shell指令碼。 關於各指標的詳細含義,見附件。 一、

grafana + influxdb + telegraf , 伺服器監控

1.grafana安裝 yum install https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-4.6.3-1.x86_64.rpm #啟動服務 service grafana-se

jmeter淺談效能測試指標分析

一般準則:1、TPS最大值(也要兼顧執行緒數與cpu佔用率的平衡點);2、CPU佔用率達50%的時候TPS值。 上圖測試報告分析:累計增加執行緒數,檢視響應(TPS/Sec)值,執行緒數=TPS/Sec值時為佳,還要兼顧CPU佔用率。 報告欄位含義分別如下。 Label: