1.3下载安装Grafana
Grafana是一款用Go语言开发的开源数据可视化工具,可以用来做数据监控和数据统计,带有告警功能。目前使用Grafana的公司有很多,比如paypal、ebay、intel等。Grafana包括以下七大特点。
1)可视化:快速和灵活的客户端图形具有多种选项。面板插件为许多不同的方式可视化指标和日志。
2)报警:可视化地为最重要的指标定义警报规则。Grafana将持续评估它们,并发送通知。
3)通知:警报更改状态时,它会发出通知。
4)动态仪表盘:使用模板变量创建动态的和可重用的仪表板,这些模板变量作为下拉菜单出现在仪表板顶部。
5)混合数据源:在同一个图中混合不同的数据源,可以根据每个查询指定数据源。这甚至适用于自定义数据源。
6)注释:注释来自不同数据源图表。将鼠标悬停在事件上可以显示完整的事件元数据和标记。
7)过滤器:过滤器允许您动态创建新的键/值过滤器,这些过滤器将自动应用于使用该数据源的所有查询。
具体下载安装步骤如下。
1)到https://grafana.com/grafana/download?platform=windows下载Grafana的Windows版本(建议下载zip 文件),如图6所示。
图6 grafana下载界面
2)下载解压到C:\grafana-7.5.7目录下,到C:\grafana-7.5.7\bin 目录下,运行grafana-server.exe。
3)访问http://localhost:3000,如图7所示,使用admin/admin登录本机Grafana。
图7 Grafana登录界面
4)如图8所示。到Configuration中点击Data Source。在接下来的页面中,选择InfluxDB数据源。
图8 选择InfluxDB数据源
5)在HTTP选项中,URL输入:http://localhost:8086,Access选择Server(default)。如图9所示。
图9 配置HTTP选项
6)如图10所示,Database输入jmeter,user/password,为用InfluxDB Studio配置第4)步,或者用命令行配置 auth后建立的用户名和密码。
10 选择jmeter数据库
7)按如图11步骤建立,注意中间填写4026。(4026为JMeter +InfluxDB +Grafana的配置JSON文件编号,Grafana显示不同的功能有不同的对应编号,每个编号对应不同的JSON配置文件,可以通过https://grafana.com/grafana/dashboards/4026来查看)。
图11 载入JMeter +InfluxDB +Grafana展示报告界面模板
8)在JMeter中右键点击线程组,在弹出菜单中选择“添加->监听器->后端监听器”。按照图12中进行设置。
图12 在JMeter中添加后端监听器
- 后端监听实现:选择org.apache.jmeter.visualizers.backend.influxdb.influxdbBackendListenerClient。
- influxdbUrl:http://127.0.0.1:8086/write?db=jmeter。
- application:电子商务。
其他都使用默认配置。
9)这样就可以在Grafana中实时显示数据了。如图13所示。
图13 Grafana中实时显示JMeter压测数据
1.4 JMeter常见性能指标
最后介绍在JMeter +InfluxDB +Grafana显示的几个JMeter常见性能指标。
- 线程数/用户相关指标。
Ø test.minAT-Min active threads:最小活跃线程数。
Ø test.maxAT-Max active threads:最大活跃线程数。
Ø test.meanAT-Mean active threads:活跃线程数。
Ø test.startedT-Started threads:启动线程数。
Ø test.endedT-Finished threads:结束线程数。
- 响应时间指标。
Ø jmeter.ok.count:采样器的成功响应数。
Ø jmeter.h.count:每秒点击数。
Ø jmeter.ok.min:采样器成功最短响应时间。
Ø jmeter.ok.max:采样器成功最长响应时间。
Ø jmeter.ok.avg:采样器成功平均响应时间。
Ø jmeter.ok.pct:采样器成功响应百分比。
Ø jmeter.ko.count:采样器失败响应数。
Ø jmeter.ko.min:采样器失败的响应最短时间。
Ø jmeter.ko.max:采样称失败最长响应时间。
Ø jmeter.ko.avg:采样器失败平均响应时间。
Ø jmeter.ko.pct:采样器失败响应百分比。
Ø jmeter.a.count:采样器响应数(ok.count和ko.count的总和)。
Ø jmeter.a.min:采样器最小响应时间(ok.count和ko.count的最小值)。
Ø jmeter.a.max:采样器最大响应时间(ok.count和ko.count的最大值)。
Ø jmeter.a.avg:采样器平均响应时间(ok.count和ko.count的平均值)。
Ø jmeter.a.pct:采样器响应百分比(根据和失败样本的总数计算)。