Как установить менеджер плагинов и perfmon metric collector на удаленный сервер в режиме, отличном от GUI?

#jmeter #performance-testing #jmeter-plugins #jmeter-5.0 #perfmon

#jmeter #тестирование производительности #jmeter-плагины #jmeter-5.0 #perfmon

Вопрос:

Я установил jmeter 5.2.1 на один из удаленных серверов AWS.

Я хочу также собрать сводный отчет об ответе и информации о сервере с помощью perfmon metric.

Я загрузил jmeter-plugins-manager-1.6.jar jmeter-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
 

`

Спасибо,

Ответ №1:

Ошибка означает, что у вас не установлен плагин PerfMon на вашем экземпляре AWS, я не думаю, что текущая версия JMeter Plugins Manager может обнаруживать / устанавливать отсутствующие плагины в режиме, отличном от GUI, поэтому вам нужно будет сделать это вручную.

Что-то вроде:

  1. Загрузите менеджер плагинов JMeter:
     wget https://jmeter-plugins.org/get/ -O /opt/apache-jmeter-5.2.1/lib/ext/jmeter-plugins-manager.jar
     
  2. Загрузите JMeter Plugins Бегун командной строки
     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:
     java -cp /opt/apache-jmeter-5.2.1/lib/ext/jmeter-plugins-manager.jar org.jmeterplugins.repository.PluginManagerCMDInstaller
     
  4. Установите плагин PerfMon:
     /opt/apache-jmeter-5.2.1/bin/./PluginsManagerCMD.sh install jpgc-perfmon
     
  5. Вот и все, теперь вы должны иметь возможность выполнить свой тест

PS В соответствии с рекомендациями JMeter вы всегда должны использовать последнюю версию JMeter, поэтому подумайте об обновлении до JMeter 5.4.1 или любой другой текущей стабильной версии JMeter

Комментарии:

1. Спасибо. Теперь предыдущая ошибка исчезла. Однако появляется новая ошибка: создание summarizer <summary> Успешно создало дерево с помощью /root/apache-jmeter-5.2.1/bin/AWS.jmx Запуск автономного теста @ Пн Мар 01 09:23:36 UTC 2021 (1614590616582) Ожидание возможного сообщения Shutdown / StopTestNow/HeapDump/ThreadDump на порту4445 Неперехваченное исключение java.lang. Ошибка NoClassDefFoundError: kg/apc/perfmon/metrics/MetricParams в потоке thread[StandardJMeterEngine, 5,main]. Подробности см. в файле журнала. Я обновил вопрос с подробностями журнала.

2. Привет, я думаю, мне удалось решить вышеуказанную ошибку с youtube.com/watch?v=F-dHii9qZD0 .