JMeter-获取标头值并写入日志文件

时间:2019-02-08 16:02:46

标签: jmeter jmeter-5.0

我正在进行API REST性能测试。对于每个API调用,我都必须在标头中发送唯一的交易记录和请求ID。

我在标题中使用了${__UUID()},它工作正常。

要跟踪服务器日志中的事务ID,我想将function( ${__UUID()})生成的值打印在具有API名称的日志文件中。为此,我尝试了许多方法,但是这些方法非常复杂且混乱。如果不添加预处理器,我们是否可以从请求标头中记录交易ID值的值?

如果您对此有所了解,我将不胜感激。

2 个答案:

答案 0 :(得分:2)

我不明白为什么您不希望顶部使用预处理器。我认为这是在脚本中生成uuid并在每次请求执行之前存储值的最佳解决方案:

import java.util.UUID;
String uuid = UUID.randomUUID().toString();
log.info("Next uuid "+uuid);
vars.put("uuid",uuid);

在请求标头中使用$ {uuid}。

答案 1 :(得分:1)

如果要在jmeter.log file中打印生成的GUID,只需将其包装到__log() function中,就像这样:

${__log(${__UUID()})}

enter image description here

这将生成GUID并将相应的行打印到 jmeter.log 文件中:

enter image description here

更多信息:Apache JMeter Functions - An Introduction