保存JMeter聚合报告至CSV时遇log4j错误求助
解决JMeter CmdRunner生成聚合报告时的log4j及注册表警告问题
你遇到的是两个独立的警告,它们都不会阻止CSV报告的生成,但如果想彻底消除这些提示,可以按照下面的方案处理:
1. 消除log4j2配置文件缺失的警告
这个警告是因为CmdRunner启动时找不到log4j2的配置文件,默认只会输出错误级别的日志到控制台。你可以通过两种方式解决:
方法一:直接指定配置文件路径
在执行命令时添加系统参数,指向JMeter自带的log4j2配置文件:PS C:\JMeter\bin> java -Dlog4j.configurationFile=C:\JMeter\bin\log4j2.xml -jar "C:\JMeter\lib\cmdrunner-2.0.jar" --tool Reporter --generate-csv "D:\Automation\Aggt_rpt.csv" --input-jtl "D:\Automation\output.jtl" --plugin-type AggregateReport方法二:复制配置文件到类路径
把C:\JMeter\bin\log4j2.xml文件复制到C:\JMeter\lib目录下,这样CmdRunner启动时就能自动识别并加载配置文件了。
2. 消除Windows注册表权限警告
这个警告是因为当前用户没有访问Windows注册表中Software\JavaSoft\Prefs节点的权限,导致Java偏好设置无法写入系统注册表。你可以选择以下两种方案:
方法一:修改注册表权限
- 按下
Win + R,输入regedit打开注册表编辑器 - 导航到
HKEY_LOCAL_MACHINE\Software\JavaSoft\Prefs节点 - 右键点击
Prefs,选择「权限」 - 在权限窗口中找到当前登录用户,勾选「完全控制」(或至少「读取」权限),点击确定保存
- 按下
方法二:指定自定义偏好存储目录
不想修改注册表的话,可以在命令中添加参数,让Java把偏好设置存储到你有读写权限的目录:PS C:\JMeter\bin> java -Djava.util.prefs.userRoot=C:\JMeter\prefs -jar "C:\JMeter\lib\cmdrunner-2.0.jar" --tool Reporter --generate-csv "D:\Automation\Aggt_rpt.csv" --input-jtl "D:\Automation\output.jtl" --plugin-type AggregateReport注意:需要先手动创建
C:\JMeter\prefs这个目录
内容的提问来源于stack exchange,提问作者Vikas
相关产品推荐
相关产品推荐

