Ste*_*e K 7 grafana prometheus
在我的 Grafana 仪表板(使用 Prometheus 作为数据源)中,我有一个自定义$tier变量,它允许用户从下拉列表中选择层。它的定义为:
Values separated by comma: production, stage, development
Run Code Online (Sandbox Code Playgroud)
我需要通过包含层名称的缩写版本的标签来过滤 Prometheus 指标:
我想我应该创建一个隐藏变量,$shortened_tier这样我就可以在查询过滤器中使用它,如下所示:
my_label=~"foo-$shortened_tier"
Run Code Online (Sandbox Code Playgroud)
我想根据以下值来定义它$tier:
我怎么做?
我想出了一个解决方法,但它是suuuuper hacky:
Name: shortened_tier
Type: Query
Data Source: Prometheus
Query: label_values(up{env="$tier"}, env)
Regex: (dev|stage|prod).*
Run Code Online (Sandbox Code Playgroud)
我想做的很简单Query: $tier,但由于 Grafana 不允许我这样做,所以我必须使用完全不同的指标 ( up),我可以传入$tier并返回与字符串相同的精确值。然后我使用正则表达式来查找dev|stage|prod字符串的开头,捕获该部分,并丢弃其余部分。
这就是我正在寻找的结果,其值$shortened_tier根据选择并分配给 的值动态变化$tier。但我希望 Grafana 有一种不那么老套的方式来做到这一点。
| 归档时间: |
|
| 查看次数: |
10413 次 |
| 最近记录: |