
一、jmeter非gui执行监控的不足
展示数据不直观

运行时间较长,可能会导致jvm内存不足,会出现oom问题
二、jmeter可视化监控原理

jmeter数据写入influxdb,再经过可视化grafana页面定时去influxdb读取数据
三、环境
1.基础环境搭建
需要再用一个虚拟机
会在这台虚拟机上安装grafana+influxdb

演示:
直接导入虚拟机模版
改一下网卡
vim etc/sysconfig/network-scripts/ifcfg-ens33

改完后重启网卡
systemctl restart network
2.安装influxdb

最大的特点按照时间对海量数据进行读写
官网:https://www.influxdata.com/get-influxdb/
第一步:下载
wget https://dl.influxdata.com/influxdb/relea
第二步:安装
yum localinstall influxdb-1.7.1.x86_64.rpm
第三步:配置
vim /etc/influxdb/influxdb.conf
重点是端口:http默认端口8086
第四步:操作
启动systemctl start influxdb
查看状态systemctl status influxdb.service
查看服务ps -ef |grep influx
是否开机启动systemctl is-enabled influxdb.service
设置开机启动systemctl enable influxdb.service


第五步: 时序数据库操作
进入数据库influx

查询有哪些数据库show databases;
可视化监控时需要自己创建一个数据库

创建数据库create database jmeter;

退出exit;
第六步:配置Backend Listener
测试脚本打开
点击测试计划–添加后端监听器

选择第二个


influxdbUrl需要进行修改
改成infludb对应的ip


application

measurement表的意思
表名为jmeter

summmaryOnly
此处建议改为false

后面保持默认就行

第七步:验证
配置完后运行 JMeter 脚本,看influxdb是否有数据

验证
进入数据库

使用该库use jmeter;
此时就有两个表events,jmeter

查询数据select * from jmeter
此时就可看到数据,表名数据已经进入到influxdb中

3.安装grafana
Grafana是一款用Go语言开发的开源数据可视化工具,可以做数据监控和数据统计
第一步:下载
下载官网
https://grafana.com/grafana/download
wget https://dl.grafana.com/oss/release/grafana-6.7.3-1.x86_64.rpm
第二步:安装
yum localinstall grafana-6.7.3-1.x86_64.rpm
出现complete就代表安装成功

第三步:文件结构
配置文件
vim /etc/grafana/grafana.ini
默认端口3000
可以用/3000进行搜索

日志文件
vim /var/log/grafana/grafana.log
第四步:操作
启动服务systemctl start grafana-server.service
查看状态systemctl status grafana-server.service
查看服务ps -ef |grep grafana
是否开机启动systemctl is-enabled grafana-server
设置开机启动systemctl enable grafana-server



第五步:访问
(ip是安装grafana的ip)
http://ip:3000/login
默认admin/admin

登录成功

第六步:配置数据源
jmeter执行脚本时把数据已经写入到influxdb中
从哪里读取数据,从influxdb中读取数据。就需要添加数据源(influxdb)。
登录成功后需配置数据源
Add data source
url
数据库


如果influxd和grafana都在同一个服务器上,此处的url的ip就填写localhost就行
如果influxd和grafana不在同一个服务器上,此处的url的ip就填写influxdb的ip
通过http去influxdb去拉取数据

这里也是8086
jmeter写数据也是通过http这个端口


创建了jmeter数据库
influxdb那里没有设置账号密码,此处就不用填写账号和密码

此处相当于配置好可以去连influxdb
数据要进行展示,就需要导入模版
第七步:导入dashboard
influxdb + jmeter
官网
https://grafana.com/grafana/dashboards/
官网有很多模版,进行搜索


搜索出来是以influxdb为数据源
展示jmeter数据


出现的效果图




选默认就行


此处的jmeter



summaryonly改成faluse,方便显示各个取样器


applaction可以理解为场景的名称

总的样本数,总共发了多少个请求

失败的

网络相关

错误率

tps
此处是混合场景就是总的

活跃线程

响应时间,汇总的95%

运行脚本


&spm=1001.2101.3001.5002&articleId=132754783&d=1&t=3&u=0e8cf3706264444686596e1d3e8b0f29)
604

被折叠的 条评论
为什么被折叠?



