背景

目前我们的jmeter压测都是在linux分布式上进行,压测数据只能等压测结束才能看到,也不美观,而且看不到历史数据,因此我们有了以下几个需求

  • 实时数据
  • 漂亮图表
  • 历史数据
  • 方案

    influxdb + grafana

    influxdb

    下载安装

    1. wget https://dl.influxdata.com/influxdb/releases/influxdb-1.7.8.x86_64.rpm
    2. sudo yum localinstall influxdb-1.7.8.x86_64.rpm
    注:为了更好的稳定性和兼容性,选择了1.8以下的稳定版本

    配置

    InfluxDB配置文件位置 /etc/influxdb/influxdb.conf
    1. vi /etc/influxdb/influxdb.conf
    具体配置如下 ```shell [[graphite]] enabled = true bind-address = “:2003” database = “jmeter” retention-policy = “” protocol = “tcp” batch-size = 5000 batch-pending = 10 batch-timeout = “1s” consistency-level = “one” separator = “.” udp-read-buffer = 0
  1. <a name="BwkoP"></a>
  2. #### 启动
  3. 采用 不挂起 启动方式,退出终端不会影响程序运行<br />
  4. ```shell
  5. nohup influxd -config /etc/influxdb/influxdb.conf &

InfluxDB操作

  1. [root@pengyang ~]# influx #登录数据库
  2. Connected to http://localhost:8086 version 1.7.8
  3. InfluxDB shell version: 1.7.8
  4. > show databases #查看所有数据库
  5. name: databases
  6. name
  7. ----
  8. _internal
  9. > CREATE DATABASE "jmeter" #创建数据库
  10. > use jmeter #切换数据库
  11. Using database jmeter
  12. > CREATE USER "admin" WITH PASSWORD 'admin' WITH ALL PRIVILEGES # 创建管理员权限的用户

Jmeter配置

image.png
端口说明:
8086端口,Grafana用来从数据库取数据的端口
2003端口,JMeter往数据库发数据的端口

配置好之后 运行jmeter脚本
查看Jmeter数据库下所有的表

  1. > show measurements
  2. name: measurements
  3. name
  4. ----
  5. delta
  6. jmeter.all.a.avg
  7. jmeter.all.a.count
  8. jmeter.all.a.max
  9. jmeter.all.a.min
  10. jmeter.all.a.pct90
  11. jmeter.all.a.pct95
  12. jmeter.all.a.pct99
  13. jmeter.all.h.count
  14. jmeter.all.ko.count
  15. jmeter.all.ok.avg
  16. jmeter.all.ok.count
  17. jmeter.all.ok.max
  18. jmeter.all.ok.min
  19. jmeter.all.ok.pct90
  20. jmeter.all.ok.pct95
  21. jmeter.all.ok.pct99
  22. jmeter.test.endedT
  23. jmeter.test.maxAT
  24. jmeter.test.meanAT
  25. jmeter.test.minAT
  26. jmeter.test.startedT
  27. total

至此,Jmeter数据已经成功发送到influxdb

Grafana

下载安装

直接用的公司已经安装好的,具体安装教程参考百度,比较简单,注意和influxdb的版本号兼容问题

配置

新增 Data Source 配置
image.png
image.png

Dashboard 配置
用了现成的模板导入
官网模版库:https://grafana.com/dashboards
image.png
找到评分最高的 ,下载模板json文件
image.png
导入模板
image.png
image.png
image.png
选择好数据源,并导入,然后再仪表盘列表就看到新增的这个
image.png
最终效果展示
image.png