0

我是 InfluxDB 和 Grafana 的新手。目前我们正在使用 Jmeter (5.2.1) 进行负载测试,并使用 InfluxDB (2.0) 和 Grafana 进行监控。设置类似于 - 1 台控制器机器和 8 台远程主机 (LG)。

虽然我们在 grafana 仪表板中获得了生成的值,但开发/项目团队有兴趣知道哪个 LG 返回了多少错误,甚至我们也有兴趣知道,每个 loaf gen 的性能是否相同。

问题是 - 社区中是否有人以某种方式配置了 Grafana 仪表板,我们为每个主机/LG 获取单独的图表。

已经试过了

  • 用google搜索,没有找到合适的文章,如果有,请您分享链接。
  • 还观察到,虽然jmeter结果文件(jtl)文件在标题下包含主机IP - threadName,但是在执行查询select * from jmeter时在influxDB中没有找到相同的内容。这是否意味着需要使用单独的采样器将线程名/主机 IP 显式输入 DB ..?如果是这样,如何实现?
  • 尝试构建查询,但由于 influxQL 知识有限,无法识别需要使用哪些键/标签

JTL 文件中的 jmeter 输出示例

如果您可以帮助构建仪表板,那将有很大帮助..

提前致谢

耐克

4

1 回答 1

0

如果您查看实时结果用户手册条目的Metrics Explosed章节,您将不会在任何地方看到“threadName”或类似的指标。

这意味着线程的名称没有存储在 Graphite/InluxDB 中,因此无法区分 Grafana 中的负载生成器 IP 地址。

我可以想到 2 个可能的选项:

  1. 修改现有的相关AbstractBackendListenerClient并添加一个单独的度量来保存负载生成器机器的 IP 地址

  2. 添加__machineIP() 函数作为采样器标签的前缀/后缀,在这种情况下,采样器/事务名称将添加 IP,您将能够在 Grafana 中将它们过滤掉:

    在此处输入图像描述

    有关 JMeter Functions 概念的更多信息:Apache JMeter Functions - An Introduction

于 2021-02-01T06:59:02.980 回答