基於Jmeter BackEnd+InfluxDB+Grafana實現性能指標實時可視監控


引言

JMeter的PerfMonMetricsCollector插件支持收集服務器的性能指標,ResponseTimesOverTime、TransactionsperSecond插件可以收集接口的性能指標。但前面這些插件使用過程中對執行機的硬件性能消耗非常大,尤其在gui模式下幾乎無法正常執行。

為了收集JMeter的測試結果數據而不過多消耗執行機的性能,且能實時展示測試結果。我們可以使用jmeter的Backend Listener插件來向inflluxDB存儲性能測試數據,再通過視覺炫酷的Grafana實時讀取和展示出influxDB的性能測試數據。

環境准備及部署

本次部署環境的系統為CentOS 6.9,

Jmeter Backend Listener

從JMeter2.13開始,Jmeter提供了一個AbstractBackEndListenerClient類,通過使用Backend Listener可以調用這個類向后端發送實時結果。

參考資料:http://jmeter.apache.org/usermanual/realtime-results.html

http://jmeter.apache.org/usermanual/component_reference.html#Backend_Listener

http://jmeter.apache.org/api/org/apache/jmeter/visualizers/backend/AbstractBackendListenerClient.html

 
Backend Listener 界面
 
Backend Listener 描述

 


Backend Listener中傳遞的指標

 

 
influxDB中記錄指標的字段

 

 
influxDB中記錄事件的字段
 
指標說明

Telegraf

Telegraf 是 InfluxData 下的子項目,是由 Go 語言編寫的 metrics 收集、處理、聚合的代理。其設計目標是較小的內存使用,通過插件來構建各種服務和第三方組件的 metrics 收集。Telegraf 具有插件或集成功能,可以直接從其運行的系統中獲取各種指標,從第三方API中提取指標,甚至通過 statsd 和 Kafka 消費者服務監聽指標。它還具有輸出插件,可將指標發送到各種其他數據存儲,服務,和消息隊列,包括InfluxDB,Graphite,OpenTSDB,Datadog,Librato,Kafka,MQTT,NSQ等等。

參考資料:https://www.influxdata.com/time-series-platform/telegraf/

https://github.com/influxdata/telegraf

https://docs.influxdata.com/telegraf/v1.7/concepts/data_formats_input/

https://kiswo.com/article/1022

influxDB

InfluxDB 是一個時間序列數據庫,用於處理海量寫入與負載查詢。InfluxDB旨在用作涉及大量時間戳數據的任何用例(包括DevOps監控,應用程序指標,物聯網傳感器數據和實時分析)的后端存儲。

influxDB的語法是類SQL的,增刪改查與mySQL相同。influxdb中的measurement對應的關系型數據庫中的table。默認端口是8086。

參考資料:https://docs.influxdata.com/influxdb/v1.7/introduction/installation/https://docs.influxdata.com/influxdb/v1.7/

influxdb下載安裝 

wgethttps://dl.influxdata.com/influxdb/releases/influxdb-1.7.7.x86_64.rpm

sudo yum localinstall influxdb-1.7.7.x86_64.rpm

啟動influxdb服務 

sudo service influxdb start  

 
 

常規inlfuxdb操作

 
 

Grafana

Grafana是一個跨平台的開源的度量分析和可視化工具,可以通過查詢數據源后可視化展示。常用數據源有Graphite,InfluxDB,OpenTSDB,Prometheus,Elasticsearch,CloudWatch和KairosDB等。

參考資料:https://grafana.com/docs/https://grafana.com/grafana/download

Grafana下載安裝  

wgethttps://dl.grafana.com/oss/release/grafana-6.2.5-1.x86_64.rpm

sudo yumlocalinstall grafana-6.2.5-1.x86_64.rpm

啟動Grafana服務 

 sudo service grafana-server start

打開瀏覽器,輸入IP+端口,3000為Grafana的默認偵聽端口,系統默認用戶名和密碼為admin/admin。

Grafana添加數據源 

 
 
 
 

 

 
 

 

 

 
 

 

 
 

Grafana添加看板 

 
 
 
 

 

 
 

Grafana查詢influxDB數據 

 

 
 

 

成果展示

 

 


作者:悠哉的小C
鏈接:https://www.jianshu.com/p/57acffa607a9
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM