【问题标题】:How to control output to jmeter .jtl log file如何控制输出到 jmeter .jtl 日志文件
【发布时间】:2014-09-02 18:12:56
【问题描述】:

我创建了一个 JMeter 测试计划来测试 Tibco EMS 消息传递。它包含 1 个 JMS 消息发布者和 5 个 JMS 消息订阅者采样器。我可以通过带有 60,000 条 EMS 消息的 JMeter GUI 轻松运行它而不会出现问题。但是,当我使用以下本地命令在命令行模式 (CLI) 中运行它时,它会抓取然后停止在大约 2,000 条消息:

 C:\jmeter\apache-jmeter-2.9\bin\jmeter.bat -n -r -t  C:\jmeter\apache-jmeter-2.9\bin\EMS-85-TestPlan.jmx  -l  C:\jmeter\apache-jmeter-2.9\logs\EMS-85-JMeterGUIStats.jtl

生成的 .jtl 文件有 88,600 行。我删除了 .jtl 命令选项,测试完成的速度与 gui 测试一样快。

如何配置 JMeter 以仅更新“JMS 消息发布者”示例的 .jtl 文件?我认为这将解决我的瓶颈并仍然提供所需的报告。

【问题讨论】:

  • 是的,我使用 GUI 模式进行测试,然后禁用任何报告侦听器并通过 CLI 模式运行它以进行实际测试。我将按要求进行线程转储。啊,我已经运行了很多测试,所以我将使用 jtl 日志文件结果报告实际的结束条件。可能有另一种方法可以解决此问题。是否可以配置 JMeter 采样器执行但不报告结果?我需要 5 个 JMS 消息订阅者采样器来清除队列中的消息,但我不关心它们的报告。希望这可以避免对 .jtl 日志或通过 gui 进行这些更新。

标签: user-interface jmeter command-line-interface


【解决方案1】:

使用 GUI 模式进行负载测试并不是最佳实践。

当您在 GUI 模式下运行它时,负载可能低于在非 GUI 模式下运行。 在这种情况下,您所面临的问题可能会暴露您正在测试的应用程序中的问题。

当 JMeter 实例“停止”时,您能否对其进行线程转储?

另外我不明白你在说什么关于 88600 行,所以它是否会停止?

您可以通过在要报告的线程组下限定侦听器来控制报告,例如,您可以将查看结果树输出到文件。

【讨论】:

  • 我能够重现停滞的测试。我运行了应该向一个主题发送 20,000 条消息的测试,该主题发送到 4 个队列。在发送了 902 个实际样品后,它就停止了。下面的链接显示了一个包含线程转储、.jmx 测试计划和 .jtl 文件的文件夹:GoogleFiles。
  • 哦,我注意到远程 jmeter 网格服务器上出现“Java.lang.OutOfMemoryError:无法创建新的本机线程”错误,所以我将每个 jmeter 最大 HEAP 设置增加到 1 MB。一个简单的测试有效,并将测试更多。我仍然想知道您是否可以优化计划,如果可能的话,也许通过删除 JMS 订阅者记录到 .jtl 文件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-28
  • 2021-07-03
  • 1970-01-01
相关资源
最近更新 更多