StatsD
注意
内置的 StatsD 输出在 k6 v0.47.0 中已弃用,并在 v0.55.0 中移除。你可以通过使用 xk6-output-statsd 扩展 或根据你的用例使用 OpenTelemetry 输出 来继续将指标流式传输到 StatsD。
关于此更改原因的更多信息,请参阅 k6 仓库中的 此议题。
k6 可以通过使用 xk6-output-statsd 扩展 将测试指标推送到 StatsD 服务。
构建 k6 版本
要构建包含该扩展的 k6 二进制文件,首先确保你的机器上安装了 Go 和 Git。
然后,打开你的终端并运行以下命令
# Install xk6
go install go.k6.io/xk6/cmd/xk6@latest
# Build the k6 binary
xk6 build --with github.com/LeonAdato/xk6-output-statsd
... [INFO] Build environment ready
... [INFO] Building k6
... [INFO] Build complete: ./k6
xk6 将在本地文件夹中创建新的 k6 二进制文件。
注意
要了解更多关于如何构建自定义 k6 版本的信息,请查看 xk6。
运行 k6 测试
使用你在上一步中构建的 k6 二进制文件,你可以在运行测试时使用 --out output-statsd
选项来使用此扩展。
./k6 run --out output-statsd script.js
以下选项可以配置:
名称 | 值 |
---|---|
K6_STATSD_ADDR | statsd 服务的地址,当前仅支持 UDP。默认值为 localhost:8125 。 |
K6_STATSD_NAMESPACE | 用作所有指标名称前缀的命名空间。默认值为 k6 。 |
K6_STATSD_PUSH_INTERVAL | 配置数据批量发送的频率。默认值为 1s 。 |
K6_STATSD_BUFFER_SIZE | 缓冲区大小。默认值为 20 。 |
K6_STATSD_ENABLE_TAGS | 如果为 true ,则启用发送标签。默认为 false ,因为旧版本(v0.9.0 之前)的 statsd 不支持标签。 |
K6_STATSD_TAG_BLOCKLIST | 这是一个逗号分隔的标签列表,这些标签**不应**发送到 statsd。例如,“tag1,tag2”。默认值为 vu,iter,url 。 |