天天看點

基于BackEnd+InfluxDB+Grafana實作性能名額實時可視監控

JMeter的PerfMonMetricsCollector插件支援收集伺服器的性能名額,ResponseTimesOverTime、TransactionsperSecond插件可以收集接口的性能名額。但前面這些插件使用過程中對執行機的硬體性能消耗非常大,尤其在gui模式下幾乎無法正常執行。為了收集JMeter的測試結果資料而不過多消耗執行機的性能,且能實時展示測試結果。我們可以使用jmeter的Backend Listener插件來向inflluxDB存儲性能測試資料,再通過視覺炫酷的Grafana實時讀取和展示出influxDB的性能測試資料。

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

從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+InfluxDB+Grafana實作性能名額實時可視監控

Backend Listener 界面

Backend Listener 描述

influxDB中記錄名額的字段

基于BackEnd+InfluxDB+Grafana實作性能名額實時可視監控

influxDB中記錄事件的字段

基于BackEnd+InfluxDB+Grafana實作性能名額實時可視監控

名額說明

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旨在用作涉及大量時間戳資料的任何用例(包括DevOps監控,應用程式名額,物聯網傳感器資料和實時分析)的後端存儲。

influxDB的文法是類SQL的,增删改查與mySQL相同。influxdb中的measurement對應的關系型資料庫中的table。預設端口是8086。

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

wget​​https://dl.influxdata.com/influxdb/releases/influxdb-1.7.7.x86_64.rpm​​

sudo yum localinstall influxdb-1.7.7.x86_64.rpm

sudo service influxdb start  

基于BackEnd+InfluxDB+Grafana實作性能名額實時可視監控

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

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

wget​​https://dl.grafana.com/oss/release/grafana-6.2.5-1.x86_64.rpm​​

sudo yumlocalinstall grafana-6.2.5-1.x86_64.rpm

 sudo service grafana-server start

打開浏覽器,輸入IP+端口,3000為Grafana的預設偵聽端口,系統預設使用者名和密碼為admin/admin。

基于BackEnd+InfluxDB+Grafana實作性能名額實時可視監控
基于BackEnd+InfluxDB+Grafana實作性能名額實時可視監控
基于BackEnd+InfluxDB+Grafana實作性能名額實時可視監控
基于BackEnd+InfluxDB+Grafana實作性能名額實時可視監控
基于BackEnd+InfluxDB+Grafana實作性能名額實時可視監控
上一篇: keras.optimizers
下一篇: Ruby 運算符