Jmeter+influxdb+grafana 性能测试结果监控

我们做性能测试的时候使用Jmeter自身的监听器统计压测结果虽然可以统计到各个维度的信息,比如TPS,RT,Err等,但是这个Jmeter本身的监控没有办法做存储,也没有办法去找历史数据,所以如果想要持久化储存数据,我们就需要采用监控平台+ influxdb时序数据库进行性能测试结果的监控。

Jmeter+Influxdb+grafana工具之间的关系

Jmeter性能测试工具,可以收集到服务器的性能测试指标:统计 TPS、响应时间、线程数、错误率等信息;Jmeter通过一个【后端监听器】可以将统计出的结果实时异步发送到 InfluxDB 中

influxdb:时序数据库, 按照时间序列,记录数据,并可以永久性保存数据

grafana:监控大屏, 一个web端的展示平台, 通过更换模板展示不同的效果,可以直接拉取influxdb数据显示出来在页面图标里,直观并美观。

图片

工具安装和部署

1、grafana

介绍:是一款用go编写的开源应用,用于大规模指标数据的可视化展示,是网络架构和应用分析中最流行的时序数据展示工具。

支持的数据库:graphite、influxdb、prometheus等 ,都是时序数据库。

组成:

DashBoard:仪表盘 ,包括图形和界面,可以做聚合数据展示,了解整体的数据情况;

Row:行,展示的数据结构是按照行来读取的

Panel:面板,支持定制化面板。

metrics:监控资源,数据变化的情况

logs:日志,拿到日志信息处理和展示

traces:跟踪链路的串联

图片

安装:

官方网站:grafana.com网站

第一步:先把老师给的安装包放在服务器上,这台服务器建议不要是被测试服务器,影响性能;

第二步:在线安装 yum install -y grafana-xxx.rpm 【或者这个命令:rpm -ivh grafana-*.rpm】

第三步:启动grafana服务:systemctl start grafana-server

第四步:查看一下grafana的服务:systemctl status grafana-server

第五步:web页面访问grafana服务:端口 默认3000,账号和密码默认是admin admin

http://机器ip:3000 admin admin

2、influxdb:

介绍:influxDB是一个时序数据库,使用Go语言编写,无需外部依赖,适合构建大部分分布式监控系统。

特色:

基于时间序列,因为每条数据都跟时间关联,所以能很好的支持时间相关函数

可度量:每条数据都是个数字,在每一个点都可以比对这些数据,是很明确定值,方便度量;

强大的类sql语法:类似于sql,语法有差异,做表查询 字段查询等可以通过类sql;但是我们很少需要去查询influxdb的数据,大部分数据在写入前已经确定好了,数据结构也比较简单,基本会在grafana里查看就可以。

安装influxdb :

建议使用 独立机器, 不要在被测服务器上。可以grafana和influxdb放在同一个机器里。

安装influxdb1.x数据库

第一步:先把下载好的安装包-rpm包传到服务器上

第二步:在Linux服务器上在线安装:yum install -y influxdb-1.7.0.x86_64.rpm

第三步:启动数据库:influxd 或者 service influxdb start ,端口是8086

第四步:查看服务启动情况:systemctl status influxdb

连接进入influxdb数据:

在终端输入 influx 进入了 influxdb,进入了命令行窗口,influxdb语法跟sql的语法基本上差不多:

create database :建库

show databases:查库

drop databases:删库

use dbname:选择库

show measurements:查表

create table :建表

drop measurement:删表

Jmeter与influxdb集成

安装好了工具之后,可以在Jmeter里实现跟influxdb的集成了。

1、Jmeter里添加后端监听器,选择 influxdb,以及做好数据库的信息配置,如下图所示:

图片

2、然后就可以再Jmeter里通过图形界面 或者CLI运行脚本:就会把数据写入到influxdb数据库里;

3、运行脚本后,在数据库里就会创建出来一张表:并select查看里的数据可以看到存进去的数据:数据跟jtl文件记录的数据基本上一样。

图片

influxdb+grafana集成

influxdb里已经有数据了,我们现在需要把数据放在监控大屏grafana上进行展示。主要就是分为两步:添加数据源【influxdb数据库】+ 添加面板【grafana的模板】

第一步:浏览器访问这个grafana,http://服务区的IP:3000并登录进去;

第二步:默认没有数据源,添加数据源:setting–>data source–>add data source—>搜索influxdb,并选择influxdb:

图片

第三步:配置influxdb的ip和端口,并选择jmeter数据库:

图片

图片

第四步:manager【+】 > import–> 输入5496 load >选择db名字为刚刚添加的数据源【influxDB】–> import 即可:

图片

图片

第五步:运行Jmeter的脚本,就可以再Dashboard上看到实时刷新的数据了:

图片

注意的问题:

1、jmeter写数据到 influxdb数据库中, Jmeter到influxdb 8086端口要通 【Jmeter通过后端监听器写入数据到influxdb数据库】

2、grafana到 influxdb的网络+ grafana到influxd 8086端口要通 【grafana需要去influxdb的数据库里拿数据显示】

3、grafana的机器要能访问 **grafana.com网站。

 

感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值