在 Windows 上打开测试时防止 JMeter 创建 运行 日志文件

Prevent JMeter from creating run log file when opening a test on Windows

我已按照 this Whosebug answer 中的说明进行操作,这会导致在 Windows.

中双击 .jmx 文件时打开 JMeter

问题是,当我通过双击文件打开 .jmx 文件时,它会自动创建一个 JMeter 日志文件(并将其命名为 [name_of_jmx_file].log,无论您是否对测试进行任何操作。关闭 JMeter 后文件也不会被删除,所以我每次都必须手动删除它。

这似乎是由默认 jmeter-t.cmd 文件中以下行中的 -j 参数引起的:

call "%~dp0"jmeter -j "%~n1.log" -t "%~nx1" %2 %3 %4 %5 %6 %7 %8 %9

简单地删除 -j "%~n1.log" 不会阻止日志文件的创建,因为 JMeter 仍然会创建该文件,只是将文件名默认为 jmeter.log.

我找到了一种解决方法,它只是将这些 auto-generated 日志文件放入我只是定期删除的特定文件夹中。这可以防止文件在与脚本相同的目录中创建,这是主要的不便之处,但理想情况下我想弄清楚如何完全防止创建此文件。

我的解决方法是更改​​ jmeter-t.cmd 文件的以下行:

call "%~dp0"jmeter -j "%~n1.log" -t "%~nx1" %2 %3 %4 %5 %6 %7 %8 %9

为此:

call "%~dp0"jmeter -j "C:\Users\[WINDOWS_USER]\Documents\JMeterRunLogs\%~n1.log" -t "%~nx1" %2 %3 %4 %5 %6 %7 %8 %9

在 JMeter 安装的“bin”文件夹中有 log4j2.xml 文件,如果您查找此行:

<File name="jmeter-log" fileName="${sys:jmeter.logfile:-jmeter.log}" append="false">

并将${sys:jmeter.logfile:-jmeter.log}更改为

C:\Users\[WINDOWS_USER]\Documents\JMeterRunLogs\jmeter.log

JMeter 日志文件将始终在该文件夹下生成,无论您从何处启动 JMeter。

更多信息: