Artillery.IO记录和调试

时间:2017-07-31 09:09:21

标签: load

我正在尝试使用Artillery.io(http://artillery.io)作为加载和性能工具,但我似乎无法进行调试。

我看到输出和报告已生成,但对于某些HTTP响应(404/401 / 500.x),我希望看到发送的数据包和回复收到的响应。

https://artillery.io/docs/debugging.html#logging-everything处的文档说我可以运行

set DEBUG=http,http:capture,http:response

然后使用run命令启动我的脚本(我在Windows上)。

这完全没有区别,在控制台或生成的报告中没有发送/接收数据包的跟踪。

任何人都知道如何让炮兵追踪它的作用,请求和响应请求?最好添加到报告文件中,但如果必须,我会单独使用控制台。

4 个答案:

答案 0 :(得分:3)

是从powershell控制台运行的。下降到良好的旧CMD,它的工作原理。

答案 1 :(得分:0)

更新:看起来http调试已更改。有关修订后的调试文档,请参见https://artillery.io/docs/examples/#debugging-http-tests

答案 2 :(得分:0)

在 Powershell 中,您必须像这样将环境变量 DEBUG 设置为 http:

$Env:DEBUG = "http"

您可以按如下方式检查当前值:

$Env:DEBUG

请参阅 Using and changing environment variables 上的 Powershell 文档。

答案 3 :(得分:0)

就我而言,在 Git Bash 终端的 VSC 中的 Windows 上。

设置调试:

 export DEBUG=http,http:capture,http:response

测试:

 echo $DEBUG

现在运行脚本(用于测试):

 artillery quick -c 1 -n 1 https://httpbin.org/get

给出响应:

Started phase 0, duration: 1s @ 16:20:02(+0200) 2021-05-11
/   http request: {
  "url": "https://httpbin.org/get",
  "method": "GET",
  "headers": {
    "user-agent": "Artillery (https://artillery.io)"
  }
} +0ms
  http:response {
  http:response   "date": "Tue, 11 May 2021 14:20:03 GMT",
  http:response   "content-type": "application/json",
  http:response   "content-length": "254",
  http:response   "connection": "keep-alive",
  http:response   "server": "gunicorn/19.9.0",
  http:response   "access-control-allow-origin": "*",
  http:response   "access-control-allow-credentials": "true"
  http:response } +1ms
  http:response "{\n  \"args\": {}, \n  \"headers\": {\n    \"Host\": \"httpbin.org\", \n    \"User-Agent\": \"Artillery (https://artillery.io)\", \n    \"X-Amzn-Trace-Id\": \"Root=1-609a9293-031b2371069a353d0cbb4131\"\n  }, \n  \"origin\": \"213.76.55.123\", \n  \"url\": \"https://httpbin.org/get\"\n}\n" +1ms
Report @ 16:20:04(+0200) 2021-05-11