菜单
开源

StatsD

注意

内置的 StatsD 输出在 k6 v0.47.0 中已弃用,并在 v0.55.0 中移除。你可以通过使用 xk6-output-statsd 扩展 或根据你的用例使用 OpenTelemetry 输出 来继续将指标流式传输到 StatsD。

关于此更改原因的更多信息,请参阅 k6 仓库中的 此议题

k6 可以通过使用 xk6-output-statsd 扩展 将测试指标推送到 StatsD 服务。

构建 k6 版本

要构建包含该扩展的 k6 二进制文件,首先确保你的机器上安装了 GoGit

然后,打开你的终端并运行以下命令

bash
# 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 选项来使用此扩展。

bash
./k6 run --out output-statsd script.js

以下选项可以配置:

名称
K6_STATSD_ADDRstatsd 服务的地址,当前仅支持 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