2017-01-13 33 views
0

運行JMeter測試,而我得到了一個輸出誤差:Logging Error: Unknown error writing event.的JMeter - 未知錯誤寫入事件

我以前見過這些,但他們通常涉及到Java是內存不足。然而,這一次被列入相關的錯誤爲:

java.lang.StackOverflowError 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.io.PrintWriter.<init>(PrintWriter.java:116) 
    at java.io.PrintWriter.<init>(PrintWriter.java:100) 
    at org.apache.log.format.PatternFormatter.getStackTrace(PatternFormatter.java:555) 
    at org.apache.log.format.PatternFormatter.formatPatternRun(PatternFormatter.java:472) 
    at org.apache.log.format.PatternFormatter.format(PatternFormatter.java:446) 
    at org.apache.log.output.AbstractOutputTarget.format(AbstractOutputTarget.java:118) 
    at org.apache.log.output.AbstractOutputTarget.doProcessEvent(AbstractOutputTarget.java:77) 
    at org.apache.log.output.AbstractTarget.processEvent(AbstractTarget.java:108) 
    at org.apache.log.Logger.fireEvent(Logger.java:632) 
    at org.apache.log.Logger.output(Logger.java:607) 
    at org.apache.log.Logger.output(Logger.java:590) 
    at org.apache.log.Logger.error(Logger.java:229) 
+0

看起來,這似乎是簡單地超出了堆棧空間。 [本頁討論更好的參數](https://community.igniterealtime.org/thread/48569) - 您最近有沒有JVM更新? - [此問答可以支持](http://stackoverflow.com/a/12529576/1270789)。標記爲dup還不夠,因爲它可能取決於你的環境,但如果你想出了一個解決方案,請回答你自己的問題,或許以後再幫助其他人。 –

回答

1

它通常表示你的腳本的問題,即無限遞歸,循環的正則表達式或什麼的,所以我的建議是:

  1. 仔細檢查您的腳本的一致性,即運行1-2個用戶並啓用查看結果樹偵聽器,以確保它完成它應該做的事情。
  2. Increase Java stack size via -Xss4 JVM參數。
  3. 確保您從9 Easy Solutions for a JMeter Load Test 「Out of Memory」 Failure指南以下建議,至少基本的,如:

    • 運行在非GUI模式測試
    • 增加JVM堆空間JMeter的
    • 禁用所有的在測試執行期間的聽衆
+0

感謝您的回答,我真的很感激。然而: 1.可能是真正的原因,但我不知道我怎麼可以去調試那些東西。 2.試過了,但它似乎沒有幫助 3.這是一個堆棧溢出而不是內存不足的問題,所以我不確定這會有所幫助。無論如何,我已經在非GUI模式下運行它,並且無論如何我都禁用了所有監聽器。 – Woody1193

+0

原來,這個問題與我的測試計劃中的if控制器無法正常工作有關 – Woody1193