我有一个专门用于运行jmeter的Linux VPS。测试运行正常,但失败的请求不会使用SimpleDataWriter写入error.jtl。将Java错误写入jmeter.log。
我以非gui模式运行测试:
await
错误
jmeter -n -t om5.jmx -j results-tmp1/t3-l1-jmeter.log
我找不到有什么问题。它只是一台机器,它给了我这个错误。我尝试过的其他任何地方都能正常工作。
操作系统是Debian Jessie(8.5) - 最低限度来自官方存储库。我尝试了很多不同版本的java(1.7,1.8) - 目前运行在最新的1.8(2016/07/08 16:59:35 ERROR - jmeter.reporters.ResultCollector:
Error trying to record a sample java.lang.IllegalArgumentException: Failed marshalling:class:class
org.apache.jmeter.samplers.SampleResult,content:org.apache.jmeter.samplers.SampleResult@1f605bfa[saveConfig=org.apache.jmeter.samplers.SampleSaveConfiguration@b4a9237e,parent=<null>,
responseData={},responseCode=500,label=03 add to cart,resultFileName=,samplerData=<null>,threadName=Thread Group 1-149,responseMessage=Number of samples in transaction : 2, number of failing samples : 1,
responseHeaders=,contentType=,requestHeaders=,timeStamp=1467989884109,startTime=1467989884109,endTime=1467989975286,idleTime=1001,pauseTime=0,assertionResults=<null>,subResults=[reset basketItems, /some-page],
dataType=,success=false,files=[res-tmp/t400-l5-errors.jtl],dataEncoding=<null>,elapsedTime=90176,latency=0,connectTime=0,startNextThreadLoop=false,stopThread=false,stopTest=false,
stopTestNow=false,isMonitor=false,sampleCount=1,bytes=806,headersSize=192,bodySize=614,groupThreads=400,allThreads=400,nanoTimeOffset=1467988012523,useNanoTime=true,nanoThreadSleep=5000,location=<null>]
at org.apache.jmeter.save.SaveService.saveSampleResult(SaveService.java:345)
at org.apache.jmeter.reporters.ResultCollector.sampleOccurred(ResultCollector.java:557)
at org.apache.jmeter.threads.ListenerNotifier.notifyListeners(ListenerNotifier.java:67)
at org.apache.jmeter.threads.JMeterThread.notifyListeners(JMeterThread.java:819)
at org.apache.jmeter.threads.JMeterThread.doEndTransactionSampler(JMeterThread.java:534)
at org.apache.jmeter.threads.JMeterThread.triggerEndOfLoopOnParentControllers(JMeterThread.java:342)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:258)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
)上,我有最新的apache-jmeter 1.8.0_92-b14
,但之前我使用的是3.0 r1743807
。我不使用任何第三方插件。
我没有注意到它何时停止工作,做了什么改变(某些操作系统更新,也许是jmx中的一些更改),但我在git中进行了测试,所以我检查了旧版本的日期我上次完整的error.jtl并没有将错误写入jtl。
我重新安装了Debian到Ubuntu 16.04,没有任何改变。
我不知道如何调试这个问题,我应该怎么做,因为在我有权访问的任何其他机器上,它运行正常。
答案 0 :(得分:0)
我不知道你到现在为止是否解决了这个问题? 我有同样的问题,我刚才修好了。 我想在你的jmeter脚本中,你检查了主机名来记录样本结果,在jmeter.log中,你可以找到这样的消息:jmeter无法获得linux本地IP,所以主机名为Null,异常抛出。
因此,您需要执行的操作是从“示例结果保存配置”选项卡中删除“保存主机名”。