InfluxDB下载: https://dl.influxdata.com/influxdb/releases/influxdb-1.6.2.x86_64.rpm
InfluxDB基本概念和操作:https://www.cnblogs.com/wzbk/p/10569683.html
windows下 influxDB 操作工具 InfluxDBStudio:https://cloud.tencent.com/developer/article/1444098
备注:运行InfluxDBStudio需要先安装Microsoft .NET Framework 4.5.2,下载地址:https://www.microsoft.com/zh-CN/download/confirmation.aspx?id=42642)
Jmeter使用graphite协议写入数据到InfluxDB,因此,需要在InfluxDB配置文件启用它。
2.将环境变量设置为INFLUXDBCONFIGPATH配置文件的路径并启动
[root@jmeter ~]# influx #登录数据库
Connected to http://localhost:8086 version 1.6.2
InfluxDB shell version: 1.6.2
> show databases #查看数据库
name: databases
name
----
_internal
> CREATE DATABASE "jmeter" #创建数据库jmeter
> show databases
name: databases
name
----
_internal
jmeter
> use jmeter #切换数据库
Using database jmeter
> CREATE USER "admin" WITH PASSWORD 'Star*2019' WITH ALL PRIVILEGES #创建管理员权限用户
>
查看Jmeter数据库中表信息:show measurements
通过以上步骤,完成InfluxDB数据库安装及Jmeter数据库创建。下面就在grafana中配置InfluxDB数据源。
test.minAT-Min active threads:最小活跃线程数
test.maxAT-Max active threads:最大活跃线程数
test.meanAT-Mean active threads:活跃线程数
test.startedT-Started threads:启动线程数
test.endedT-Finished threads:结束线程数
.a.count:采样器响应数(ok.count和ko.count的总和)
.a.min:采样器最小响应时间(ok.count和ko.count的最小值)
.a.max:采样器最大响应时间(ok.count和ko.count的最大值)
.a.avg:采样器平均响应时间(ok.count和ko.count的平均值)
Backend Listener的默认百分位设置为“90;95;99”,即百分位数为90%,95%和99%。
Graphite使用点(“.”)去拆分的元素,这可能与十进制百分位值混淆。JMeter转换任何此类值,用下划线(“ - ”)替换点(“.”)。例如,“99.9 ”变为“99_9 ”
默认情况下,JMeter发送在samplerName“all”下累计的所有采样器的指标。 如果配置了 BackendListenerSamplersList,那么JMeter还会发送匹配样本名称的指标,前提是配置 summaryOnly=true
通过以上步骤就完成了,grafana从InfluxDB 获取数据的配置。
(1)使用dashboard编号为5496的模板,地址:https://grafana.com/grafana/dashboards/5496
(2)本次直接下载5496对应JSON文件,并导入grafana。
如grafana所在机器可以访问互联网,也可直接输入dashboard对应url或ID并加载即可。
五、使用Jmeter配置Backend Listener并运行测试,发送测试数据到InfluxDB 数据库。
(1)在测试计划(Testplan)下,创建线程组(Thread Group),并添加Backend Listener,配置InfluxDB IP及端口。
注意:InfluxDB对应IP地址和端口、数据库名称,要和InfluxDB对应信息一致。
8086端口:Grafana用来从InfluxDB 数据库取数据的端口。
2003端口,JMeter往InfluxDB 数据库发数据的端口
(2)新建测试请求http://10.0.8.7:8089,该请求为tomcat首页页面。
(3)线程组(Thread Group)中设置运行100个线程,运行100次,即共请求10000次。
(4)使用Jmeter Summary Report查看运行结果,可以看到总共请求10000次,并将测试请求统计结果信息成功发送至influxdb中。
grafana中dashboard中Jmeter运行前统计信息:
grafana中dashboard中Jmeter运行后统计信息,可以看到Requests 10000和Jmeter中一致。