【问题标题】:How to install plugin manager and perfmon metric collector on remote server in Non- GUI mode?如何在非 GUI 模式下在远程服务器上安装插件管理器和性能指标收集器?
【发布时间】:2021-02-27 09:45:20
【问题描述】:

我已经在一台远程 AWS 服务器上安装了 jmeter 5.2.1

我想收集响应和服务器信息的摘要报告以及性能指标。

我已经下载了jmeter-plugins-manager-1.6.jarjmeter-plugins-perfmon-2.1.jar并复制到/lib/ext

然后我在本地机器上从 jmeter 创建了一个测试脚本并复制到服务器并尝试运行相同的jmeter -n -t AWS.jmx -l awsresults.jtl

但我收到一个错误:

Error in NonGUIDriver java.lang.IllegalArgumentException: Problem loading XML from:'/root/apache-jmeter-5.2.1/bin/AWS.jmx'. 
Cause:
ClassNotFoundException: kg.apc.jmeter.vizualizers.CorrectedResultCollector

 Detail:com.thoughtworks.xstream.converters.ConversionException: 
---- Debugging information ----
cause-exception     : java.lang.NoClassDefFoundError
cause-message       : kg/apc/jmeter/vizualizers/CorrectedResultCollector
first-jmeter-class  : org.apache.jmeter.save.SaveService$XStreamWrapper$1.realClass(SaveService.java:98)
class               : org.apache.jmeter.save.ScriptWrapper
required-type       : org.apache.jmeter.save.ScriptWrapper
converter-type      : org.apache.jmeter.save.ScriptWrapperConverter
path                : /jmeterTestPlan/hashTree/hashTree/hashTree/kg.apc.jmeter.perfmon.PerfMonCollector
line number         : 219
version             : 5.2.1

当我在 jmeter 的本地机器上运行它时,它按预期工作。

有人可以帮我理解并解决错误吗?

编辑:

`

2021-03-01 09:23:36,931 INFO k.a.j.p.PerfMonCollector: PerfMon metrics will be stored in /tmp/perfmon_7034792572732251249.jtl
2021-03-01 09:23:36,931 ERROR o.a.j.JMeter: Uncaught exception in thread Thread[StandardJMeterEngine,5,main]
java.lang.NoClassDefFoundError: kg/apc/perfmon/metrics/MetricParams
    at kg.apc.jmeter.perfmon.PerfMonCollector.initiateConnector(PerfMonCollector.java:200) ~[jmeter-plugins-perfmon-2.1.jar:?]
    at kg.apc.jmeter.perfmon.PerfMonCollector.initiateConnectors(PerfMonCollector.java:175) ~[jmeter-plugins-perfmon-2.1.jar:?]
    at kg.apc.jmeter.perfmon.PerfMonCollector.testStarted(PerfMonCollector.java:126) ~[jmeter-plugins-perfmon-2.1.jar:?]
    at org.apache.jmeter.reporters.ResultCollector.testStarted(ResultCollector.java:351) ~[ApacheJMeter_core.jar:5.2.1]
    at kg.apc.jmeter.vizualizers.CorrectedResultCollector.testStarted(CorrectedResultCollector.java:28) ~[jmeter-plugins-cmn-jmeter-0.4.jar:?]
    at org.apache.jmeter.engine.StandardJMeterEngine.notifyTestListenersOfStart(StandardJMeterEngine.java:206) ~[ApacheJMeter_core.jar:5.2.1]
    at org.apache.jmeter.engine.StandardJMeterEngine.run(StandardJMeterEngine.java:381) ~[ApacheJMeter_core.jar:5.2.1]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_282]
Caused by: java.lang.ClassNotFoundException: kg.apc.perfmon.metrics.MetricParams
    at java.net.URLClassLoader.findClass(URLClassLoader.java:382) ~[?:1.8.0_282]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[?:1.8.0_282]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[?:1.8.0_282]
    ... 8 more
2021-03-01 09:23:36,937 INFO o.a.j.r.ResultCollector: Shutdown hook started
2021-03-01 09:23:36,937 INFO o.a.j.r.ResultCollector: Shutdown hook ended

`

谢谢,

【问题讨论】:

    标签: jmeter performance-testing jmeter-plugins jmeter-5.0 perfmon


    【解决方案1】:

    该错误表示您的 AWS 实例上没有安装 PerfMon 插件,我认为当前版本的 JMeter Plugins Manager 无法在非 GUI 模式下检测/安装丢失的插件,因此您需要手动执行此操作。

    类似:

    1. 下载JMeter Plugins Manager:

      wget https://jmeter-plugins.org/get/ -O /opt/apache-jmeter-5.2.1/lib/ext/jmeter-plugins-manager.jar
      
    2. 下载JMeter Plugins Command Line Runner

      wget https://repo1.maven.org/maven2/kg/apc/cmdrunner/2.2/cmdrunner-2.2.jar -P /opt/apache-jmeter-5.2.1/lib/
      
    3. 安装JMeter Plugins Manager Command Line Utility:

      java -cp /opt/apache-jmeter-5.2.1/lib/ext/jmeter-plugins-manager.jar org.jmeterplugins.repository.PluginManagerCMDInstaller
      
    4. 安装PerfMon Plugin:

      /opt/apache-jmeter-5.2.1/bin/./PluginsManagerCMD.sh install jpgc-perfmon
      
    5. 就是这样,现在你应该可以执行你的测试了

    附: According to JMeter Best Practices you should always be using the latest version of JMeter 所以考虑升级到 JMeter 5.4.1 或其他 current JMeter latest stable version

    【讨论】:

    • 谢谢。现在早先的错误已经消失了。但是得到了新的错误:Creating summariser Created the tree succeeded using /root/apache-jmeter-5.2.1/bin/AWS.jmx Starting Standalone test @ Mon Mar 01 09:23:36 UTC 2021 (1614590616582) 在端口 4445 上等待可能的 Shutdown/StopTestNow/HeapDump/ThreadDump 消息未捕获的异常 java.lang.NoClassDefFoundError: kg/apc/perfmon/metrics/MetricParams in thread Thread[StandardJMeterEngine,5,main]。有关详细信息,请参阅日志文件。我已经用日志详细信息更新了问题。
    • 您好,我想我设法用youtube.com/watch?v=F-dHii9qZD0 解决了上述错误。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-15
    • 1970-01-01
    相关资源
    最近更新 更多