使用 Prometheus 的 InfoMetricFamily 在 Grafana 中进行表格可视化

Rud*_*koŭ 0 python grafana prometheus

我有以下代码:

c = InfoMetricFamily("health", "Health Monitoring")
c.add_metric(labels=name, value={"name": name, "status": status, "value": value})
Run Code Online (Sandbox Code Playgroud)

为 Prometheus 提供以下指标:

# HELP health_info Health Monitoring
# TYPE health_info gauge
health_info{name="external",status="danger",value="N\\A"} 1.0
Run Code Online (Sandbox Code Playgroud)

我想建表的仪表板在哪里Grafana namestatusvalue将列。我怎么能这样做?

Mic*_*bez 5

从 Grafana v4.3 开始表格面板支持 Prometheus 标签的显示。

要创建显示,请在仪表板中添加一个表格面板:

  1. Query选项卡中
    1. 切换Instant到 True 并设置FormatTable; 如果您从填写查询开始,您可能会有一个很大的响应冻结您的窗口
    2. 将您的查询写入Metrics:在您的情况下health_info
  2. 在可视化选项卡中,您将控制应出现的列并设置其显示格式
    1. 删除Time列(除非你需要它,我个人很少这样做)
    2. 将笼统规则设置/.*/为 Type Hidden;它会隐藏你所有的列
    3. 用于Add column style通过键入然后输入名称来隐藏要显示的列Apply to columns named(完成效果很好)
    4. 您可以调整列名Column Header并调整显示

注意:目前,您无法修改列的顺序。

如果您想在同一行上显示多个指标,请注意:

  • 所有标签必须匹配:通过应用聚合函数删除冲突的标签
  • 度量的名称是一个标签:您还需要摆脱__name__标签
  • 添加第二个值时,第一个值的列名更改为Value #A,需要调整显示