如何在 Azure-Event-Hub/或任何 DB中批量写入 JMeter 结果

问题描述

我正在使用 JMeter JSR223 侦听器在 EventHub(消息队列)中写入 SampleResult。我想使用 event-hub 的批量写入 api 在 event-hub 中批量写入结果。知道怎么做吗? 我正在考虑使用 2 个 JSR 223 侦听器,第一个侦听器将结果存储在一个 csv 文件中。第二个侦听器将以固定大小的块(使用偏移量)从 csv 文件中读取,创建批处理 msg json,然后将其发布到事件中心。 我正在寻找任何更好的方法代码参考。

解决方法

我宁愿建议您使用自己的 Backend Listener 实现,因为 Java 代码在任何情况下都比 Groovy 更高效。有一些批处理示例,即 InfluxdbBackendListenerClient.java

如果由于某种原因您将继续处理您的侦听器,请注意潜在的 race condition,即如果您将使用相同的文件来存储指标并且侦听器将一次由 2 个或更多线程执行 - 它会导致数据丢失或损坏,因此我建议使用 Flexible File Writer 来存储您要发送的指标