Jmeter学习之五_跟踪被测试服务器的performance


背景

这几天简单学习了一些基本的测试过程.
可以实现一些简单基本的功能了.
今天晚上继续进行了jmeter的一些学习. 想着可以在测试人大金仓的同时可以查看一下本地的机器性能.

用到的工具以及资料

https://www.cnblogs.com/pachongshangdexuebi/p/13354201.html

Agent的下载地址:
https://github.com/undera/perfmon-agent Perf的安装
使用 plugins manager 安装的插件为:
PerfMon (Servers Performance Monitoring) 需要注意
PerfMon是关联 Agent的暴露的端口进行展示和处理.

遇到的问题

Win11 自带的jdk的版本为:
openjdk version "11.0.16.1" 2022-08-12 LTS
OpenJDK Runtime Environment Microsoft-40648 (build 11.0.16.1+1-LTS)
OpenJDK 64-Bit Server VM Microsoft-40648 (build 11.0.16.1+1-LTS, mixed mode) 但是这个版本的jdk以及更高的LTS_OpenJDK17的版本在运行之后. perfMon 进行数据获取时会出现严重问题:
主要如下:
比较折腾. 但是将OpenJDK的版本降低到1.8.372之后就没有这个问题了.
下载地址为:
https://builds.openlogic.com/downloadJDK/openlogic-openjdk/8u372-b07/openlogic-openjdk-8u372-b07-windows-x64.zip 注意 我这边特别喜欢使用zip/tar.gz 的包进行安装, 并且不修改环境变量
直接使用绝对/相对路径进行处理.能够极大的减少相关的工作量. 高版本报错的提示信息为: D:\apache-jmeter-5.6\ServerAgent-2.2.3>startAgenterror.bat
INFO 2023-07-03 22:04:13.412 [kg.apc.p] (): Binding UDP to 4444
INFO 2023-07-03 22:04:13.430 [kg.apc.p] (): Binding TCP to 4444
INFO 2023-07-03 22:04:13.432 [kg.apc.p] (): JP@GC Agent v2.2.3 started
INFO 2023-07-03 22:04:18.016 [kg.apc.p] (): Accepting new TCP connection
INFO 2023-07-03 22:04:18.018 [kg.apc.p] (): Yep, we received the 'test' command
INFO 2023-07-03 22:04:18.018 [kg.apc.p] (): Starting measures: memory: cpu: disks i/o:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000010014ed4, pid=25212, tid=9636
#
# JRE version: OpenJDK Runtime Environment Microsoft-40648 (11.0.16.1+1) (build 11.0.16.1+1-LTS)
# Java VM: OpenJDK 64-Bit Server VM Microsoft-40648 (11.0.16.1+1-LTS, mixed mode, tiered, compressed oops, g1 gc, windows-amd64)
# Problematic frame:
# C [sigar-amd64-winnt.dll+0x14ed4]
#
# No core dump will be written. Minidumps are not enabled by default on client versions of Windows
#
# An error report file with more information is saved as:
# D:\apache-jmeter-5.6\ServerAgent-2.2.3\hs_err_pid25212.log
#
# If you would like to submit a bug report, please visit:
# https://github.com/microsoft/openjdk/issues
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.

监控使用过程-agent

使用 OpenJDK1.8的版本启动 server_agent
注意我是Windows的本地进行的:
修改 ServerAgent.bat 内的的启动脚本,改为 OpenJDK的绝对路径:
D:\apache-jmeter-5.6\ServerAgent-2.2.3\openjdk-8u372\bin\java.exe -jar %0\..\CMDRunner.jar --tool PerfMonAgent %* 然后启动agent 双击就可以了.
注意可能要放开防火墙的限制, 默认监控的端口是: 4444

监控使用构成-监控端

在测试计划->进程组->添加->监听器->jp@gc - PerfMon Metrics Collector

在右侧的 server to monitor 处进行选择. 

通过 Add row的方式进行添加

需要注意, 不要一定添加过多的的row 不然非常难看. 

其实可以添加多个 监听器监听不同的元素效果也不错.

监控效果为:


欢迎关注我的公众号一起学习进步

Jmeter学习之五_跟踪被测试服务器的performance的更多相关文章

  1. JMeter学习-037-JMeter调试工具之四-BeanShell+jmeter.log

    前面三篇文章分别讲述了 HTTP Mirror Server . Debug PostProcessor 和 Debug Samper 的脚本调试实例.此文主要讲述第四种调试方法,通过 BeanShe ...

  2. JMeter学习-036-JMeter调试工具之三---Debug Sampler

    前面两篇文章分别讲述了 HTTP Mirror Server 和 Debug PostProcessor 的脚本调试实例.此文主要讲述第三种调试工具:DebugSampler,其主要是查看JMeter ...

  3. JMeter学习-035-JMeter调试工具之二---Debug PostProcessor

    前文 JMeter学习-034-JMeter调试工具之一---HTTP Mirror Server讲述了HTTP镜像服务器在调试请求入参时的实例应用.此文我们讲述另一种测试脚本调试工具的使用. 前置处 ...

  4. JMeter学习-033-JMeter BeanShell 脚本应用实例之参数变量修改

    BeanShell脚本是JMeter自动化测试过程中不可或缺的提升技能之一,BeanShell脚本编写类似于Java脚本.它可以获取.修改系统定义或用户定义的变量值,同时也可以进行一些相应的测试数据处 ...

  5. JMeter学习-007-JMeter 断言实例之一 - 响应断言

    之前的文章中已经对如何录制 web 的请求进行了详细的描述,敬请参阅:JMeter学习-004-WEB脚本入门实战 同时,我们的手机应用(例如:京东.天猫.唯品会.携程.易迅 等等 App)所发出的请 ...

  6. JMeter学习-010-JMeter 配置元件实例之 - CSV Data Set Config 参数化配置

    众所周知,在进行接口测试的过程中,需要创建不同的场景(不同条件的输入,来验证不同的入参的返回结果).因而,在日常的自动化接口监控或商品监控等线上监控过程中,需要配置大量的入参来监控接口的返回是否正确. ...

  7. JMeter学习-018-JMeter 配置元件之-HTTP信息头管理器-实现 Cookie 登录

    之前写过一篇通过[HTTP Cookie管理器]实现登录态操作的文章,使用时需要配置每个键值对(如下图所示),相对来讲配置比较繁琐.其实,我们也可通过在[HTTP信息头管理器]添加 Cookie 信息 ...

  8. JMeter学习-016-思路篇之-山重水复柳暗花明

    首先,此文非技术类博文,为思路类的博文,敬请参阅,欢迎共同探讨! 今天在编写 JMeter 接口监控脚本时,遇到了一个问题,在解决问题的时候,思路出现了偏差,导致了自己在解决问题时,绕了弯,浪费了些时 ...

  9. JMeter学习-015-JMeter 断言之-Bean Shell Assertion

    前面的博文中有对 JMeter 中的 响应断言 进行了讲解并实例演示,详情敬请参阅博文:JMeter学习-007-JMeter 断言实例之一 - 响应断言. 在 JMeter 中总计提供了如下几种 B ...

  10. JMeter学习-014-JMeter 配置元件实例之 - 用户定义的变量 参数化配置

    前文讲述了通过 CSV Data Set Config 实现参数化配置(详情敬请参阅:JMeter学习-010-JMeter 配置元件实例之 - CSV Data Set Config 参数化配置), ...

随机推荐

  1. Unicode编码:打破语言壁垒,实现无缝交流

    Unicode编码是一种用于表示文本字符的编码系统,它旨在解决不同字符集之间相互兼容的问题,使各种语言和文化得以在数字世界中无缝交流.本文将从多个方面介绍Unicode编码的概念.原理及其在现实中的应 ...

  2. cf1453F 二维DP 思维

    cf1453F 二维DP 思维 原题链接 题意 目前我们有一个序列,在第i个点可以走到[i + 1, i + a[i]]区间内的任意一点(也就是说如果a[i]是0,路就走不通了) 现在要求我们将一些位 ...

  3. Caffeine Cache缓存

    SpringBoot 集成 Caffeine Caffeine 和 Spring Cache 依赖,使用注解方法实现缓存 依赖 <!--提供 Spring Boot 中的缓存支持--> & ...

  4. linux中创建用户组

    1.打开终端并以 root 用户身份登录到 Linux 系统. 2.运行以下命令以创建一个用户组: sudo groupadd group_name 将 "group_name" ...

  5. Draco使用笔记(1)——图形解压缩

    目录 1. 概述 2. 详论 2.1. 工具 2.2. 代码 1. 概述 Draco是Google开发的图形压缩库,用于压缩和解压缩3D几何网格(geometric mesh)和点云(point cl ...

  6. Boost程序库完全开发指南:1.1-C++基础知识点梳理

      主要整理了N多年前(2010年)学习C++的时候开始总结的知识点,好长时间不写C++代码了,现在LLM量化和推理需要重新学习C++编程,看来出来混迟早要还的. 1.shared_ptr 解析:sh ...

  7. JAVA已过气?中俄大佬对话告诉你俄罗斯最受欢迎的编程语言是什么!

    摘要:中俄大佬对话:俄罗斯最受欢迎的编程语言是什么?Gitee如何抗住数据压力? 众所周知,Java作为一门非常成熟的语言,国内拥趸者众多,但随着后浪们的崛起,如今的Java在国际上是否还占据主流地位 ...

  8. webpack原理(3):Tapable源码分析及钩子函数作用分析

    webpack本质上是一种事件流的机制,它的工作流程就是将各个插件串联起来,而实现这一切的核心就是Tapable,webpack中最核心的负责编译的Compiler和负责创建bundles的Compi ...

  9. 总结vue3 的一些知识点:MySQL 运算符

    MySQL 运算符 本章节我们主要介绍 MySQL 的运算符及运算符的优先级. MySQL 主要有以下几种运算符: 算术运算符 比较运算符 逻辑运算符 位运算符 算术运算符 MySQL 支持的算术运算 ...

  10. Nacos 1.2.1 集群搭建(二)MySQL、cluster 配置

    三台虚机的IP地址被DHCP重分了一下1.MySQL 配置 先建一个 nacos_config 数据库 将SQL执行(方法很多,选自己喜欢的就行) 2.修改 application.propertie ...