Jmeter+Influxdb+Grafana平台监控性能测试过程(三种方式)

news2025/1/12 4:07:24

一、Jmeter自带插件监控

下载地址:Install :: JMeter-Plugins.org

安装:下载后文件为jmeter-plugins-manager-1.3.jar,将其放入jmeter安装目录下的lib/ext目录,然后重启jmeter,即可。

启动Jmeter,测试计划-->选择监听器jp@gc - Transactions per Second 、jp@gc - Response Times Over Time,测试接口性能

jp@gc - Transactions per Second ,接口的TPS

 jp@gc - Response Times Over Time ,接口响应时间

二、Jmeter非GUI方式监控

cmd窗口执行非GUI方式: jmeter -n -t api.jmx -l  \report\jtl -e -o  \report\html

三、Jmeter+Influxdb+Grafana平台监控

1、背景

测试人员用Jmeter工具对相应的接口做负载测试和性能测试时,可以帮助我们发现应用程序中的性能瓶颈,但是Jmeter本身的聚合报告存在一些缺点,例如只能自己查看,无法实时共享,以及报告信息展示比较单一,不直观。

2、引入Grafana+Influxdb的作用及原理

2-1、grafana和Influxdb可以解决这个问题,grafana是一款采用Go语言编写的开源应用,主要用于大规模指标数据的可视化展示,Influxdb是一款时序性数据库,有时间戳组件,时间的方式去存储数据。

2-2、原理图

 性能监控平台搭建中,可以将Jmeter获取的性能结果导入InfluxDB,再使用Grafana从InfluxDB中获取数据,用特定的模板进行展示,从而实现性能监控过程的可视化。

3、环境与配置

 4、Influxdb数据库下载,启动,操作

4-1、下载Influxdb安装包(Influxdb2.0)

[root@centos7 tools]# wget https://dl.influxdata.com/influxdb/releases/influxdb-1.8.0_linux_amd64.tar.gz

 4-2、解压Influxdb

[root@centos7 tools]# tar -xzvf influxdb-1.8.0_linux_amd64.tar.gz

 4-3、添加环境变量

[root@centos7 tools]# sudo ./influxdb/usr/bin/influxd /usr/local/bin/

4-4、启动Influxd

添加环境变量后,Influxd可以在任意目录下启动。默认启动的端口为8086

可以带配置启动:[root@centos7 bin]# ./influxd -config /home/tools/influxdb/etc/influxdb/influxdb.conf &

4-5、 添加数据库及配置

创建Jmeter数据库。--> Jmeter 数据存储到这里。

5、Grafana平台下载,启动及配置

5-1、下载Grafana安装包(版本:9.4.9)

[root@centos71 tools]# wget https://dl.grafana.com/enterprise/release/grafana-enterprise-9.4.9.linux-amd64.tar.gz

 5-2、解压Grafana

[root@centos71 tools]# tar -xzvf grafana-enterprise-9.4.9.linux-amd64.tar.gz

5-3、启动Grafana

默认端口为:3000,如果修改默认端口的话,进入grafana/conf;

[root@centos71 conf]# vi defaults.ini

修改 http_port = 8000,保存defaults.ini文件

[root@centos71 bin]# ./grafana-server &

 浏览器打开:http://192.168.124.130:8000/,如果打不开排查下是否Linux的防火墙是否打开,如果打开的话,我们直接关闭防火墙

[root@centos71 bin]# systemctl status firewalld     ---查看防火墙状态

[root@centos71 bin]# systemctl stop firewalld       ---关闭防火墙

打开后的页面,Grafana默认账号密码为admin / admin

Grafana登录后的页面展示

5-4、下载jmeter模板

搜索模板:Grafana dashboards | Grafana Labs

 下载模板的JOSN文件,地址:Apache JMeter Dashboard using Core InfluxdbBackendListenerClient | Grafana Labs   或者复制模板ID:5496

5-5、配置Influx数据源

进入Grafana首页,点击设置-> Configuration -> Data Sources -> Add data source 

 点击InfluxBD数据源

 填写InfluxDB的信息

5-6、导入Jmeter模板

 我使用的复制模板编码:5496,再点击Load按钮

 最终导入模板的效果显示

6、Jmeter配置执行

测试计划中添加:Add -> Listener -> Backend Listener(后端监听器)

 执行Api测试(总详情), 总的请求数据959,错误请求1个,错误率为0.10%,结果如下: 

 登录接口对比

查看所有书籍信息接口对比

添加书籍接口对比

查看添加的数据信息接口对比

修改书籍信息接口对比

删除书籍信息接口对比

验证书籍被删除接口对比

 这是我整理的《2024最新Python自动化测试全套教程》,以及配套的接口文档/项目实战【网盘资源】,需要的朋友可以下方视频的置顶评论获取。肯定会给你带来帮助和方向。

【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2040220.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python-opencv卷积计算代码

目录 # 尝试不同的卷积核 卷积图片如下: 卷积调用类如下: 当我们在图像上应用卷积时,我们在两个维度上执行卷积——水平和竖直方向。我们混合两桶信息:第一桶是输入的图像,由三个矩阵构成——RGB 三通道&#xff0c…

Cobalt—超简单下载器!!【送源码】

我们每天都在网上冲浪,遇到喜欢的视频、音频总想保存下来慢慢回味。很多平台并不直接提供下载功能,或者下载过程繁琐还伴有各种广告。之前了不起给大家介绍过不少开源的下载工具,如Gopeed、lux、Hitomi-Downloader,各有各的特色。…

机械学习—零基础学习日志(如何理解线性代数2)

零基础为了学人工智能,正在快乐学习,每天都长脑子 引言 在平面中,直线的定义可以理解为,任意缩放同一个平面向量得到所有点的集合。 所以要得到一个三维空间中的直线,只需要将这个向量改成三维向量即可。 什么是线…

Python | Leetcode Python题解之第337题打家劫舍III

题目: 题解: # Definition for a binary tree node. # class TreeNode: # def __init__(self, x): # self.val x # self.left None # self.right Noneclass Solution:def rob(self, root: TreeNode) -> int:def _rob…

数字图像处理(Matlab实践篇)专栏介绍

专栏导读 数字图像处理技术是计算机视觉、医学成像、遥感探测等领域的基石。Matlab,以其强大的数学计算能力和丰富的图像处理工具箱,成为学习和实践数字图像处理的理想选择。本专栏将带领读者从基础概念出发,逐步深入到高级技术,…

Redis:缓存击穿

缓存击穿 在某些 Key 属于极端热点数据,且并发量很大的情况下,如果这个 Key 过期,可能会在某个瞬间出现大量的并发请求同时回源,相当于大量的并发请求直接打到了数据库。这种情况,就是我们常说的缓存击穿或缓存并发问…

小试牛刀-区块链Solana多签账户

目录 1.什么是多签账户 2.多签账户的特点 2.1 多个签名者 2.2 最小签名要求 2.3 常见应用场景 3.多签账户实现 3.1 账户的创建 3.1.1 创建新账户 3.1.2 获取创建和初始账户事务 3.1.3 账户的签名 3.2 代币转移操作 Welcome to Code Blocks blog 本篇文章主要介绍了 …

第八节AWK报告生成器(1)

第八节AWK报告生成器 一,AWK简介 其名称得自于它的创始人阿尔佛雷德•艾侯(Alfred Aho)、彼得•温伯格(Peter Weinberger) 和布莱恩柯林(Brian Kernighan)姓氏的首个字母 AWK是一个文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一 现在默认li…

「C++系列」输入/输出

文章目录 一、输入/输出1. 包含iostream库2. 使用std命名空间3. 输出到控制台4. 从控制台读取输入5. 注意事项 二、库头文件三、标准输出流(cout)1. 基本用法2. 格式化输出3. 缓冲4. 错误处理5. 注意事项 四、标准输入流(cin)1. 基…

X-Recon:一款针对Web安全的XSS安全扫描检测工具

关于X-Recon X-Recon是一款功能强大的Web安全扫描与检测工具,该工具能够帮助广大研究人员识别网页端输入数据,并执行XSS扫描任务。 功能介绍 1、子域名发现:检索目标网站的相关子域名并将其整合到白名单中。这些子域名可在抓取过程中使用&am…

重启人生计划-积蓄星火

🥳🥳🥳 茫茫人海千千万万,感谢这一刻你看到了我的文章,感谢观赏,大家好呀,我是最爱吃鱼罐头,大家可以叫鱼罐头呦~🥳🥳🥳 如果你觉得这个【重启人生…

MySQL数据分析进阶(十二)设计数据库——PART4

;※食用指南:文章内容为‘CodeWithMosh’SQL进阶教程系列学习笔记,笔记整理比较粗糙,主要目的自存为主,记录完整的学习过程。(图片超级多,慎看!) 【中字】SQL进阶教程 |…

基于SpringBoot+VUE的员工绩效考核管理系统(源码+文档+部署)

主要内容:Java项目、Python项目、前端项目、PHP、ASP.NET、人工智能与大数据、单片机开发、物联网设计与开发设计、简历模板、学习资料、面试题库、技术互助、就业指导等 业务范围:免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写…

二级分发域名-子比比

二级分发域名全开源链接 二级分发域名

大数据技术——实战项目:广告数仓(第四部分)

目录 第7章 数据仓库环境准备 7.1 数据仓库运行环境 7.1.1 Hive环境搭建 7.1.2 Yarn环境配置 7.2 数据仓库开发环境 第8章 广告数仓ODS层 8.1 广告信息表 8.2 推广平台表 8.3 产品表 8.4 广告投放表 8.5 日志服务器列表 8.6 广告监测日志表 8.7 数据装载脚本 第7章…

C语言【自定义类型——枚举与联合】详细!!

目录 1、枚举 1.0、什么是枚举 1.1、枚举类型的优点 2、联合体(共用体) 2.0、什么是联合体 2.1、联合体的特点 2.2、联合体大小的计算 2.2.0、联合体节省空间例子 2.3、联合小练习 1、枚举 1.0、什么是枚举 枚举,顾名思义&#…

打造编程学习的“知识宝库”:高效笔记记录与整理指南

如何高效记录并整理编程学习笔记? 在编程学习的海洋中,高效的笔记记录和整理方法就像一张珍贵的航海图,能够帮助我们在浩瀚的知识中找到方向。如何建立一个既能快速记录又易于回顾的笔记系统?如何在繁忙的学习中保持笔记的条理性…

MySQL的字符集配置

MySQL的字符集配置 创建database创建表插入数据查看字符集配置查看字符集的比较规则关于字符集的配置修改字符集总结 创建database create database dbtest1; show databases;use dbtest1;创建表 create table employees(id int,name varchar(15));插入数据 insert into empl…

二分查找专题——基础二分查找

一、题目解析 二、算法分析 找到数组的中心值与target比较,如果中心值大于target则证明target有可能在数组的左边(还有一种情况是不存在),反之在数组的右边。重新设置左右边界,折半数组的长度,如此反复&am…

50kg双电多旋翼大载重无人机技术详解

随着无人机技术的飞速发展,大载重无人机因其在物流运输、应急救援、农业植保、环境监测等领域的广泛应用而备受关注。本文将深入解析一款设计承载量达到50kg级别的双电多旋翼大载重无人机,从机体结构设计、动力系统、飞行控制系统、载重挂载系统、能源管…