Jmeter不';t解释器machineName()变量
我面临一个奇怪的问题。我需要一个jmeter来生成jtl和日志文件,其中文件名将是jmeter运行的主机名。对于这个任务,我发现内部变量“\uu machineName()”,在我的例子中,它可以工作,但只能部分工作。以下是示例:Jmeter不';t解释器machineName()变量,jmeter,jmeter-plugins,Jmeter,Jmeter Plugins,我面临一个奇怪的问题。我需要一个jmeter来生成jtl和日志文件,其中文件名将是jmeter运行的主机名。对于这个任务,我发现内部变量“\uu machineName()”,在我的例子中,它可以工作,但只能部分工作。以下是示例: jmeter-l${{uu machineName()}.jtl-j${{uu machineName()}.log 但结果有点奇怪: ${uuuu machineName()}.log 328-15-09-2020-15-02-42-95r4v.jtl 它只适用于j
jmeter-l${{uu machineName()}.jtl-j${{uu machineName()}.log
但结果有点奇怪:
${uuuu machineName()}.log 328-15-09-2020-15-02-42-95r4v.jtl
它只适用于jtl文件!我尝试了其他变量,得到了相同的结果。
你有没有遇到过这样的问题 附加信息:jmeter的执行被包装在脚本中,该脚本将所有属性作为字符串接收并仅执行它,因此关于使用shell命令的想法将不起作用。结果将如下所示:
`hostname`.log
或${HOSTANME}.log
工作流程:
该函数将不会执行,因为它位于shell和日志系统之间,您需要修复shell脚本以便能够执行shell命令 如果出于某种原因,您无法修改shell脚本,那么应该可以更改JMeter日志记录配置,使其包含 必要的更改(位于JMeter安装的“bin”文件夹中)
HOSTNAME
属性
<Properties>
<Property name="HOSTNAME">${env:HOSTNAME}</Property>
</Properties>
${env:HOSTNAME}
<File name="jmeter-log" fileName="${sys:jmeter.logfile:-jmeter.log}" append="false">
对于这一点:
<File name="jmeter-log" fileName="${HOSTNAME}.log" append="false">
因此,下次启动测试时,JMeter将使用计算机主机名作为文件名创建日志文件,而不必通过命令行参数传递
更多信息:很遗憾,我无法访问Jmeter配置。我有传入的属性,然后生成带有所有参数的字符串来运行Jmeter,并且只有在将该字符串传递给Jmeter执行之后。从我的角度来看,有一件很重要的事情我想提一下,这个函数可以工作,但只对jtl文件有效,对于日志文件,这个变量或其他变量都不能工作。这是我说的最奇怪的事。那你想要什么?如果您需要帮助,您需要展示您的脚本及其使用方式,否则继续讨论没有意义问题的负责人已更新。希望足够理解。如果是Python,只需将
${{uuu machineName()}
更改为,它就会传递到执行此脚本的机器的脚本主机名。
<File name="jmeter-log" fileName="${sys:jmeter.logfile:-jmeter.log}" append="false">
<File name="jmeter-log" fileName="${HOSTNAME}.log" append="false">