在 Grafana 中找不到数据源 ${DS_PROMETHEUS}”

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

我正在针对不同的环境重新利用 Grafana 仪表板,并使用 Ansible 进行部署。 Grafana 是一个在 Docker Swarm 上运行的 Docker 容器。 在某个时候它停止工作,不确定从 Grafana 8.10.0 升级到 Grafana 9.2.15 后是否停止工作。

如果我尝试使用“导出以供外部共享”选项导出仪表板,则会显示以下 json:

{
  "error": {
    "message": "Datasource ${prometheus} was not found"
  }
}

但是,如果我从 UI 导入仪表板(左栏菜单 > 仪表板 > 导入),它会正常工作,我认为这是因为它要求我选择一个数据源:

如何解决已部署仪表板的数据存储的此问题?

prometheus grafana datasource dashboard
2个回答
4
投票

在datasources.yml中定义uid: uid:普罗米修斯数据源

示例:

- name: Prometheus
    type: prometheus
    access: proxy
    url: http://prometheus:9090
    editable: false
    isDefault: false
    uid: prometheusdatasource

并更新仪表板配置文件: “数据源”:“普罗米修斯数据源”

示例:

"panels": [
    {
      "collapsed": false,
      "datasource": "prometheusdatasource",
    }
]

0
投票

如果您没有使用数据源 yaml 或者正在运行简单的 grafana 容器,并且您从图形用户界面创建了数据库连接,要查找数据库的 uid,只需导航到

http://your-grafana-end-point/api/datasources 

您将找到所有数据源自动生成的 uid 来从中获取。

导入面板 json 时,请记住更改要从中复制的 json 中的数据源 uid 字段(示例如下)

"datasource": {
    "type": "prometheus",
    "uid": "c226b139-d9c1-429c-9984-559dd1c95216"
  },

您从 api 找到的 uid

© www.soinside.com 2019 - 2024. All rights reserved.