热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Jmeter+InfluxDB+Grafana性能测试监控平台(Windows)

1.软件版本各软件版本:JMeter-5.2.1;InfluxDB-1.7.9;Grafana-8.2.22.安装InfluxDB2

1.软件版本

各软件版本:JMeter-5.2.1 ; InfluxDB-1.7.9; Grafana-8.2.2


2.安装InfluxDB

2.1InfluxDB简介


  1. 时序数据库:处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也称为时间序列数据。想象它就像一个sql表,其中时间是它的主键
  2. InfluxDB:是一款用Go语言编写的开源分布式时序、事件和指标数据库,无需外部依赖。InfluxDB 旨在处理高写入和查询负载。它是TICK 堆栈的一个组成部分 。InfluxDB 旨在用作任何涉及大量时间戳数据的用例的后备存储,包括 DevOps 监控、应用程序指标、物联网传感器数据和实时分析。
    Telegraf(收集数据) —> InfluxDB(存储数据) —> Chronograf(显示数据) —>Kapacitor(处理数据)
    在这里插入图片描述

官方下载地址: https://dl.influxdata.com/influxdb/releases/influxdb-1.7.9_windows_amd64.zip
2.2 Windows 下的 InfluxDB 安装和运行


  • 解压后修改配置文件 influxdb.conf
    在这里插入图片描述
    在这里插入图片描述

  • 修改 graphite 部分
    在这里插入图片描述

  • 修改 http 部分
    在这里插入图片描述
    2.3 运行Influxd
    influxdb 的目录下输入cmd,命令 influxd -config influxdb.conf 启动
    在这里插入图片描述
    在这里插入图片描述
    2.4 启动influxdb数据库客户端

  • 双击 influx.exe

  • 基本命令

# 显示用户
SHOW USERS# 创建用户
CREATE USER "username" WITH PASSWORD 'password'# 赋予用户管理员权限
GRANT ALL PRIVILEGES TO username# 创建管理员权限的用户
CREATE USER <username> WITH PASSWORD &#39;&#39; WITH ALL PRIVILEGES# 修改用户密码
SET PASSWORD FOR username &#61; &#39;password&#39;# 撤消权限
REVOKE ALL ON mydb FROM username# 查看权限
SHOW GRANTS FOR username# 删除用户
DROP USER "username"

  • 示例&#xff0c;创建用户和数据库

CREATE USER admin WITH PASSWORD &#39;admin&#39; WITH ALL PRIVILEGESauth admin adminCREATE DATABASE jmetershow databasesuse jmetershow measurements

3. jmeter设置


  1. 添加Backend Listener&#xff08;后端监听器&#xff09;
  2. 在这里插入图片描述
    提示&#xff1a;
    如果influxdb.conf中auth-enabled &#61; true启用&#xff0c;则influxdbUrl需要指定用户和密码
    在这里插入图片描述

或者在这里插入图片描述


  1. 运行JMeter&#xff0c; influx.exe 命令行界面&#xff0c;运行 show measurements 查看
    在这里插入图片描述

4.安装Grafana

https://grafana.com/grafana/download?platform&#61;windows


  1. 启动服务 双击grafana-server.exe
  2. 用浏览器 打开&#xff1a;http://localhost:3000/ 输入&#xff1a; admin admin 登录
  3. 配置数据源
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

5. 配置图表

5.1 自定义图表
在这里插入图片描述
在这里插入图片描述
指标说明

线程数/用户相关指标
test.minAT-Min active threads&#xff1a;最小活跃线程数
test.maxAT-Max active threads&#xff1a;最大活跃线程数
test.meanAT-Mean active threads&#xff1a;活跃线程数
test.startedT-Started threads&#xff1a;启动线程数
test.endedT-Finished threads&#xff1a;结束线程数

响应时间指标
.ok.count&#xff1a;采样器的成功响应数
.h.count&#xff1a;每秒点击数
.ok.min&#xff1a;采样器成功最短响应时间
.ok.max&#xff1a;采样器成功最长响应时间
.ok.avg&#xff1a;采样器成功平均响应时间
.ok.pct&#xff1a;采样器成功响应百分比
.ko.count&#xff1a;采样器失败响应数
.ko.min&#xff1a;采样器失败的响应最短时间
.ko.max&#xff1a;采样称失败最长响应时间
.ko.avg&#xff1a;采样器失败平均响应时间
.ko.pct&#xff1a;采样器失败响应百分比
.a.count&#xff1a;采样器响应数&#xff08;ok.count和ko.count的总和&#xff09;
.a.min&#xff1a;采样器最小响应时间&#xff08;ok.count和ko.count的最小值&#xff09;
.a.max&#xff1a;采样器最大响应时间&#xff08;ok.count和ko.count的最大值&#xff09;
.a.avg&#xff1a;采样器平均响应时间&#xff08;ok.count和ko.count的平均值&#xff09;
.a.pct&#xff1a;采样器响应百分比&#xff08;根据和失败样本的总数计算&#xff09;

Backend Listener的默认百分位设置为“90;95;99”&#xff0c;即百分位数为90&#xff05;&#xff0c;95&#xff05;和99&#xff05;。
Graphite使用点&#xff08;“.”&#xff09;去拆分的元素&#xff0c;这可能与十进制百分位值混淆。JMeter转换任何此类值&#xff0c;用下划线&#xff08;“ - ”&#xff09;替换点&#xff08;“.”&#xff09;。例如&#xff0c;“99.9 ”变为“99_9 ”
默认情况下&#xff0c;JMeter发送在samplerName“all”下累计的所有采样器的指标。 如果配置了 BackendListenerSamplersList&#xff0c;那么JMeter还会发送匹配样本名称的指标&#xff0c;前提是配置 summaryOnly&#61;true

5.2 导入图表&#xff08;Dashboard&#xff09;模板

网址&#xff1a;https://grafana.com/grafana/dashboards/?plcmt&#61;footer&search&#61;jmeter
在这里插入图片描述
在这里插入图片描述
导入模板
在这里插入图片描述
查看效果
在这里插入图片描述


推荐阅读
  • 解决JavaScript中法语字符排序问题
    在开发一个使用JavaScript、HTML和CSS的Web应用时,遇到从SQLite数据库中提取的法语词汇排序不正确的问题,特别是带重音符号的字母未按预期排序。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • CentOS下ProFTPD的安装与配置指南
    本文详细介绍在CentOS操作系统上安装和配置ProFTPD服务的方法,包括基本配置、安全设置及高级功能的启用。 ... [详细]
  • 本文详细介绍了在 Ubuntu 16.04 系统上安装和配置 PostgreSQL 数据库的方法,包括如何设置监听地址、启用密码加密、更改默认用户密码以及调整客户端访问控制。 ... [详细]
  • 本文作为《WM平台上使用Sybase Anywhere 11》系列的第二篇,将继续探讨在Windows Mobile (WM) 系统中如何高效地操作Sybase Anywhere 11数据库。继上一篇关于安装与基本测试的文章之后,本篇将深入讲解数据库的具体操作方法。 ... [详细]
  • 本文详细介绍了如何正确设置Shadowsocks公共代理,包括调整超时设置、检查系统限制、防止滥用及遵守DMCA法规等关键步骤。 ... [详细]
  • 从CodeIgniter中提取图像处理组件
    本指南旨在帮助开发者在未使用CodeIgniter框架的情况下,如何独立使用其强大的图像处理功能,包括图像尺寸调整、创建缩略图、裁剪、旋转及添加水印等。 ... [详细]
  • 本文将从基础概念入手,详细探讨SpringMVC框架中DispatcherServlet如何通过HandlerMapping进行请求分发,以及其背后的源码实现细节。 ... [详细]
  • 在日常生活中,支付宝已成为不可或缺的支付工具之一。本文将详细介绍如何通过支付宝实现免费提现,帮助用户更好地管理个人财务,避免不必要的手续费支出。 ... [详细]
  • CRZ.im:一款极简的网址缩短服务及其安装指南
    本文介绍了一款名为CRZ.im的极简网址缩短服务,该服务采用PHP和SQLite开发,体积小巧,约10KB。本文还提供了详细的安装步骤,包括环境配置、域名解析及Nginx伪静态设置。 ... [详细]
  • 深入探讨前端代码优化策略
    本文深入讨论了前端开发中代码优化的关键技术,包括JavaScript、HTML和CSS的优化方法,旨在提升网页加载速度和用户体验。 ... [详细]
  • 从理想主义者的内心深处萌发的技术信仰,推动了云原生技术在全球范围内的快速发展。本文将带你深入了解阿里巴巴在开源领域的贡献与成就。 ... [详细]
  • 理解浏览器历史记录(2)hashchange、pushState
    阅读目录1.hashchange2.pushState本文也是一篇基础文章。继上文之后,本打算去研究pushState,偶然在一些信息中发现了锚点变 ... [详细]
  • 本文探讨了如何通过Service Locator模式来简化和优化在B/S架构中的服务命名访问,特别是对于需要频繁访问的服务,如JNDI和XMLNS。该模式通过缓存机制减少了重复查找的成本,并提供了对多种服务的统一访问接口。 ... [详细]
author-avatar
专业文章代写
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有