jMeter ServerAgent 在 Windows Server 2016 上崩溃

huangapple go评论70阅读模式
英文:

jMeter ServerAgent crashing in Windows Server 2016

问题

我们正在使用 JMeter 和 Perfmon 插件对 .NET 应用程序进行加载测试。我们正在运行 Perfmon ServerAgent 以在 Windows Server 2008 R2(用于应用程序)和 Windows Server 2016 R2(用于 SQL Server 2016)中收集 CPU 和内存指标。ServerAgent 在 2008 R2 中正常工作,但在启动 JMeter 后,2016 R2 中的 ServerAgent 会立即崩溃。两台服务器都在运行相同版本的 JRE 8。

崩溃日志:

#

# Java 运行时环境检测到严重错误:

#

# EXCEPTION_ACCESS_VIOLATION(0xc0000005),位于 pc=0x0000000010014ed4,pid=6340,tid=0x000000000000214c

#

# JRE 版本:Java(TM) SE Runtime Environment(8.0_261-b12)(构建 1.8.0_261-b12)

# Java VM:Java HotSpot(TM) 64 位 Server VM(25.261-b12 混合模式 windows-amd64 压缩 oops)

# 有问题的帧:

# C [sigar-amd64-winnt.dll+0x14ed4]

#

以下是迄今为止尝试过的解决方法,但没有成功。

  1. PerMon 正在服务器上运行,并捕获 CPU 和内存使用情况。

  2. 端口或网络流量没有问题。服务器代理在两台服务器上都在端口 4444 上接收请求。崩溃后,JMeter 显示超时错误,因为无法访问服务器代理。

  3. 我们尝试通过将 DEP 设置为“仅为必要的 Windows 程序和服务启用 DEP”来禁用 DEP。

  4. 以管理员特权运行 ServerAgent 没有效果。它仍然崩溃。

  5. 在兼容性模式下运行 ServerAgent 没有效果。它仍然崩溃。

英文:

We are loading testing a .NET application using JMeter and Perfmon plugin. We are running the Perfmon ServerAgent to collect CPU and Memory Metrics in Windows Server 2008 R2 (used for App) and Windows Server 2016 R2 (used for SQL Server 2016). ServerAgent works fine in 2008 R2 but the ServerAgent in 2016 R2 is crashing as soon as the JMeter is started. Both servers are running same version of JRE 8.

Crash Log:

#

# A fatal error has been detected by the Java Runtime Environment:

#

#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000010014ed4, pid=6340, tid=0x000000000000214c

#

# JRE version: Java(TM) SE Runtime Environment (8.0_261-b12) (build 1.8.0_261-b12)

# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.261-b12 mixed mode windows-amd64 compressed oops)

# Problematic frame:

# C  [sigar-amd64-winnt.dll+0x14ed4]

#

Below are solutions tried so far and no luck.

  1. PerMon is running on the Server and capturing CPU and Memory usage.

  2. There is no issues with Port or Network traffic. Server agent is receiving the request on port 4444 on both servers.After the crash, JMeter shows Timeout error as it is not able to reach Server agent.

  3. We tried disabling DEP by setting it to - Turn on DEP for essential Windows programs and services only

  4. Running ServerAgent with Admin privilege has no effect. It still crashes.

  5. Running ServerAgent In compatibility mode has no effect. It still crashes.

答案1

得分: 2

这听起来像是一个SIGAR bug,不幸的是,你无法对此做任何处理(除非你想要调查与 sigar-amd64-winnt.dll 相关的问题,实施解决方案,将其贡献给 SIGAR 上游并更新 JMeter PerfMon 插件以使用修复版本)。

与此同时,你可以考虑使用SSHMon Samples Collector作为临时解决方案,详细信息请查看如何使用 JMeter 的 SSHMon 监听器监控服务器资源利用情况文章。

英文:

It sounds like a SIGAR bug and unfortunately there is nothing you can do with it (unless you want to investigate the issue with sigar-amd64-winnt.dll, implement the solution, contribute it to SIGAR upstream and update JMeter PerfMon Plugin to with the fixed version)

In the meantime you can consider SSHMon Samples Collector as the workaround, check out How to Monitor Server Resource Utilization with JMeter’s SSHMon Listener article for more details

huangapple
  • 本文由 发表于 2020年9月12日 03:55:37
  • 转载请务必保留本文链接:https://go.coder-hub.com/63853527.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定