jmeter influxdb grafana性能监控配置(二)
上篇介绍了第1种配置方式:https://www.jianshu.com/writer#/notebooks/51048505/notes/101149635
本篇讲一下第二种监听方式配置
jmeter监听配置之第二种方式:
1)jmeter
Backend Listener implementation选择
org.apache.jmeter.visualizers.backend.influxdb.InfluxdbBackendListenerClient
每个配置项的含义如下:
influxdbUrl :安装influxdb的路径;主要格式:[http://主机地址:8086/write?db=数据库名
application :应用名称;在 events 表中对应的字段是 application
measurement :表名;数据存储到哪个表,默认是jmeter,不用改即可
summaryOnly :当你线程组有多个请求又想知道每个请求的结果数据时,最好填false,因为true只会返回所有请求的集合数据报告,不会输出每条请求的数据报告
samplersRegex :取样器列表;想收集哪些请求就填哪些,最好用正则去匹配
percentiles :百分比;即类似聚合报告里90% Line,95% Line,99% Line的数据;倘若想要99.9时,需要写成【99_9】,用下划线代替点
testTitle :测试名称;在 events 表中对应的字段是 text ,JMeter在测试的开始和结束时自动生成注释,该注释的值以'started'和'ended'结尾
eventTags :Grafana允许为每个注释显示标签;在 events 表中对应的字段是 tags

2)influxdb
以上监听会在influxdb生成2张表,分别是:events 和 jmeter
events表:用于存储事件的
jmeter表:存储测试结果数据,Grafana也是从这个表获取数据再展示
在讲配置项含义解释时,application和testTitle对应数据表中对应的字段,我们查询events表数据,如下所示:
3)Grafana
使用ID为5496的模板
我们到Grafana官网下载即可,操作如下所示


从图中可以看出,有个 Apache JMeter Dashboard using Core,我们查看详情有使用介绍,这种面板,数据收集的方式是InfluxdbBackendListenerClient 。
引用模板的方式有两种,一种是按模板id导入,另一种是下载模板json并导入,效果都是一样的,只是方式不同而已。我们先按模板id导入,操作如下:


选择自己对应的数据库名和表名
下边重点说一下Grafana的配置:
1.首先导入模板是选择数据库

2.导入后正常情况如下图:

3.如果没有什么报错,然后跑一下jmeter,再刷新一下页面就应该有数据了,如果还没有需要到influxdb看下有没有数据
4.如果influxdb有数据,那就说明Grafana配置有问题,点击设置按钮,修改一下相关配置

5.这里主要看一下Variable相关设置,这里重点看一下data_source,measurement_name确保没有配错一般就可以

如果是正确的,这里是可以看到数据库名的

application也是有数据的

如果没有数据,可以用Query的查询语句到influxdb去查询一下,有没有数据,如果可以查到那可能是数据库或表名配置有问题
