我正在尝试将日志添加到我的请求中(我有150多个请求)。我是通过在请求的标头中添加Trace-Id来实现的。这就是我目前正在做的事情。
我添加了一个名为“ X-Trace-Id”的新标头,该标头的值为“ test {{$ guid}}”-生成此输出“ test 4b048ed5-3c6f-4f7f-880e-39218cca2e74” 。我想在每个请求运行后记录此值。
console.log("header : " + request.headers["X-Trace-Id"]);
我尝试了上面的日志记录,但是,这是在控制台“ header:undefined”中得到的
答案 0 :(得分:0)
邮递员中有一种获取标头的方法-
console.log("Header - " + postman.getResponseHeader("X-Trace-Id"));
仅添加到此How to print the object values in console? if it is showing [object object]和How to get Headers from response?
编辑
错误说{{$ guid}},您的邮递员未定义此变量
您可以采取的解决方法是像这样记录它-
console.log(pm.environment.get("$guid"));
根据您的环境更改环境范围,如果它仍然不打印任何值或抛出错误,则表示未将$ guid设置为变量
答案 1 :(得分:0)
正确的语法是
console.log('header : ' + pm.request.headers.get('X-Trace-Id'));
(在 8.2.0 和 8.5.1 中测试)。标头字符串不区分大小写。
旁注:您提到了一个名为 X-Trace-Id 的标头,您是指 X-B3-TraceId 吗?如果您谈论的是 Open Zipkin trace id header(除了名称更正),您需要更正格式。 X-B3-TraceId 必须是 UUID 不是的 32 或 16 个低位十六进制字符(邮递员的 $guid 生成随机 UUID)。不幸的是,邮递员目前无法生成有效的跨度/跟踪 ID,因此您可以使用
{{$randomBankAccount}}{{$randomBankAccount}}
生成 16 个随机数(有效的十六进制数)。