Grafana 模板合并变量

Posted

技术标签:

【中文标题】Grafana 模板合并变量【英文标题】:Grafana templating merge variables 【发布时间】:2018-07-29 21:36:39 【问题描述】:

我正在寻找在 grafana 中合并两个模板变量的解决方案(数据源:prometheus)。

我的用例是:

我有我的第一个变量:

deployment = label_values(kube_deployment_labelsnamespace="$namespace",deployment) 

第二个:

statefulset = label_values(kube_statefulset_labelsnamespace="$namespace",statefulset)

我正在寻找的是只有一个下拉菜单(选择器),因为在我的仪表板中,我无法选择部署或有状态集,但不能同时选择两者。

我尝试过不同的方面:

1) 使用 prometheus,使用如下查询:

 kube_deployment_labelsnamespace="$namespace" or kube_statefulset_labelsnamespace="$namespace"

但在这种情况下,我无法提取标签(可能是“部署”或有状态集)

2) 似乎不可能像这样在 grafana 中合并两个模板变量:

$deployment,$statefulset

也许我错过了什么......

谢谢,

马特

【问题讨论】:

我遇到了完全相同的问题,并通过使用label_values(kube_pod_labelsnamespace="$namespace", label_app) 解决了它。此查询返回所有部署、有状态集和守护程序集的名称。据我所知,不可能合并两个变量。 【参考方案1】:

我通过创建两个单独的变量并为它们提供相同的 label 名称来做到这一点。 由于标签名称相同,因此只会显示一个下拉菜单。

https://grafana.com/docs/grafana/latest/variables/templates-and-variables/#basic-variable-options

【讨论】:

我已经在 Grafana 8.2.0 中尝试过,但无法正常工作。 Grafana 创建两个具有相同名称的单独下拉菜单。

以上是关于Grafana 模板合并变量的主要内容,如果未能解决你的问题,请参考以下文章

有啥方法可以在 grafana 上将键/值对作为模板变量?

如何在 Jsonnet 中为 Grafana 仪表板模板填充变量

根据选定的模板变量隐藏 grafana 面板

如何使用 Prometheus 作为数据源制作带有变量引用另一个变量的 Grafana 模板?

从 InfluxDB 查询关于 Grafana 变量模板的 timeFilter 的标签

Grafana/Loki:如何在 LogQL 中使用多选模板变量?