jmeter+influxdb+grafana网上太多时基于1.0+版本或者基于docker/linux系统的安装。而实际经常使用系统为win10。遇见了很多无解的问题:
比如:jmeter的运行报错,查看jmeter的console日志,
有请求错误;
有responseCode: 404, responseBody: {"code":"not found","message":"no dbrp mapping found"},
有没有认证authentication,
有报java class 方法错误等等
所以将安装细节总结如下:
1、influxdb安装步骤
版本:官网下载2.0.9版本(zip文件,直接解压就行)
运行influxdb:
(1)使用cmd命令提示符直接启动influxd.exe文件。
(2)浏览器地址:localhost:8086,此处会有初始的账号、密码、组织、初始数据库。初始账号为admin,密码至少8位
2、grafana安装步骤
下载8.0+版本,直接默认安装路径。浏览器地址:localhost:3000,初始账号和密码都是admin
3、jmeter下载安装
官网下载,免安装版
配置步骤:
1、influxdb数据库:可以使用初始数据库,也可以使用新建的数据库。我是用的初始数据库
2、grafana的inluxdb数据库配置:在Configuration-->data source中
(1)选择influxDB,进入influxDB界面,配置如下:
ps:解决influxdb bad gate 错误
influxDB Details中的Token的位置:(ps:token是一长串字符串)
3、grafana的仪表盘(Dashboards)配置
ps:解决grafana dashboard仪表盘没有数据,或者报错
步骤:grafana--》(+)dashbords--》import---》输入仪表盘的ID号,点击load,在线加载就可以了(或者在仪表盘官网下载该仪表盘的json,然后import本地json文件,导入仪表板模板)。
我下面选择的仪表盘的ID号是13644,所以直接输入ID后加载就可以。
特别注意项
在仪表盘官网:https://grafana.com/grafana/dashboards/?search=jmeter,查找jmeter模板
特别注意项1:仪表盘跟jmeter的后置监听dabebasebackend中的监听策略有很大的关系
需要自己判断和尝试jmeter中的策略是否跟仪表盘所支持的是否能行。如果不行的话,会导致仪表盘模板报错,缺少值,这是因为jmeter的策略和仪表盘不对应导致的。
多看看该仪表盘的Setup安装步骤和其他说明来确定。
特别注意项2:需要设置仪表盘的数据源,需要配置influxdb数据库(我的是初始数据库)和measurement名称(jmeter后置监听中配置的名称,这个会在jmeter运行时,自动生成)
ps:我选择的策略是ID是13644,Meter Load Test (org.md.jmeter.influxdb2.visualizer) - influxdb v2.0 (Flux)
该策略支持jmeter的InfluxDBRawBackendListenerClient 、InfluxdbBackendListenerClient两种模式。为什么选这两种呢,是因为influxDB的账号和密码登录配置的化,会报错。所以选择通过token解决权限问题。
(3)jmeter配置注意项
ps:解决jmeter influxdb 报错
下载后置监听策略jar包,让在...\lib\ext目录下,重启jmeter就可以了。
注意项:
(1)多个监听策略的jar包会导致冲突,所以后置监听的策略jar包就只放一个就行
(2)jmeter的influxdb策略jar包跟jmeter版本有关系
此处我下载的是:jmeter-plugin-influxdb2-listener-1.5-all.jar。
下载地址:https://github.com/mderevyankoaqa/jmeter-influxdb2-listener-plugin/releases
ps:监听策略的jar包跟jmeter版本有很大的关系,比如我下载的是1.5版本,就是需要jmeter5.4+以上的版本。要不然会报错。也是踩过的坑、
(3)jmeter中选择使用token的influxdb策略,避免jmeter报错,没有找到数据库或者没有权限等
4、jmeter配置
(1)在jmeter配置,并influxdb中查看数据,且将数据导入grafana--- InfluxdbBackendListenerClient模式
(2)在jmeter配置,并influxdb中查看数据,且将数据导入grafana--- InfluxDBRawBackendListenerClient 模式
在grafana仪表盘中选择策略是ID是13644,直接配置grafana中的influxDB名称就可以了。
组织ID:在influxdb的左侧菜单栏,用户头像--》about中找
这个策略不需要复制influxdb的script
(3)其他:
jmeter的版本和influxDB之间的关系(版本、参数说明等)可以查看以下网址
https://jmeter.apache.org/usermanual/component_reference.html#Backend_Listener