Grafana - 通过指标选择更新了仪表板上的所有图表

问题描述 投票:0回答:1

我有一个普罗米修斯节点,它从 Jenkins 收集作业数据并存储它,例如:

jenkins_job_last_completed_build_queuing_duration_seconds{jobname="j1"} 0.01
jenkins_job_last_completed_build_timestamp_seconds{jobname="j1"} 1489006588.334

等等

在grafana中,我想要一个仪表板,其中包含一堆不同指标的图表,以及选择在图表上显示哪个作业的某种方式。
例如 我登录到仪表板并以某种方式选择 j1,所有图表都显示 j1 的数据。 然后我将选择更改为 j2,所有图表都会更新以显示 j2 数据。

我知道我可以通过单击图例在每个图表的基础上执行此操作,但我想一次完成所有这些操作。

这可能吗?

干杯

jenkins grafana prometheus
1个回答
4
投票

是的! 您可以在 grafana 中进行模板查询,并填充标签值。 文档在这里:http://docs.grafana.org/features/datasources/prometheus/#templated-queries

我们执行类似的操作,在仪表板中选择一个命名空间,以查看该命名空间中服务的内存和 CPU 消耗。 我们的仪表板看起来像这样:

enter image description here

查询如下:

namespace_name:container_cpu_usage_seconds_total:sum_rate{namespace=\"$namespace\"}

我不知道如何使用 UI 创建变量,我使用 grafanalib 项目(https://github.com/weaveworks/grafanalib)生成配置,它看起来像这样:

"templating": {
    "list": [
      {
        "allValue": null,
        "current": {
          "tags": [],
          "text": "default",
          "value": "default"
        },
        "datasource": "Scope-as-a-Service Prometheus",
        "hide": 0,
        "includeAll": false,
        "label": "Namespace",
        "multi": false,
        "name": "namespace",
        "options": [],
        "query": "label_values(k8s_pod_status_ready, namespace)",
        "refresh": 1,
        "regex": "",
        "sort": 1,
        "tagValuesQuery": null,
        "tagsQuery": null,
        "type": "query"
      }
    ]
  },
© www.soinside.com 2019 - 2024. All rights reserved.