0

我刚刚开始研究 Grafana 和 Prometheus 来开发仪表板。在我的 Grafana 仪表板中,我正在尝试添加一个临时过滤器,允许用户从下拉列表中选择值。

以下是普罗米修斯数据示例

Element                                                                                                                                ,  Value
default_jenkins_builds_last_build_result{instance="jenkins-m1.abc.com",jenkins_m1_prod="XXX/YYYY/AAA",job="jenkins-m1",repo="ABC"}, 0
default_jenkins_builds_last_build_result{instance="jenkins-m2.abc.com",jenkins_m2_prod="XXX/YYYY/BBB",job="jenkins-m2",repo="BCD"}, 0
default_jenkins_builds_last_build_result{instance="jenkins-m1.abc.com",jenkins_m1_prod="XXX/YYYY/CCC",job="jenkins-m1",repo="ABCD"},    0

我想为Grafana中的实例标签添加一个 Ad-hoc 过滤器。下面是我目前进展的一个例子。您可以看到我在下拉列表中没有得到任何结果。我还添加了 ad-hoc 变量的配置片段。

在此处输入图像描述

在此处输入图像描述

我假设我的查询不正确,这就是它没有返回任何结果的原因。那么,有人可以帮我找到正确的路径,下拉列表应该显示上述示例数据“jenkins-m1.abc.com”和“jenkins-m2.abc.com”中的两个选项吗?

谢谢

4

2 回答 2

0

两件事情:

  1. 您提供的屏幕截图显示变量类型为 Query 而不是 Ad Hoc Filter。如果您将其设置为 ad-hoc 过滤器,您将获得所需的内容(仅当您每次都执行复杂的查询且它们之间存在一些差异时,才会推荐此选项。)。

  2. 解决此问题的另一种方法是 Marcelo 的回答,您将变量类型保留为 Query 并将查询设置为:label_values(default_jenkins_builds_last_build_result,instance)

由于您只想为实例标签提供下拉菜单,因此我推荐第二种方式,因为它对仪表板用户来说更容易。

于 2021-01-21T17:54:04.363 回答
0

在变量定义中使用以下查询:

label_values(default_jenkins_builds_last_build_result,instance)

比这更好的是,我建议改用以下查询:

label_values(default_jenkins_up,instance)
于 2020-11-06T01:45:44.537 回答