grafana面板上出现“Only queries that return single…”异常
Posted wenwenliang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了grafana面板上出现“Only queries that return single…”异常相关的知识,希望对你有一定的参考价值。
问题现象:数据读取不上,如下图
问题根因:启动停止了很多次postgres export并且这个数据库环境进行恢复快照过,导致Prometheus server中存在相同实例不同的数据,进而导致通过语法无法确定唯一的数据出现报错。
解决方案:通过Prometheus的api对实例的数据进行清空,让export重新获取新的数据
-
Prometheus启动时,加上–web.enable-admin-api
如果是服务启动的,需要到服务文件:/etc/systemd/system/prometheus.service 进行修改,如下[root@localhost ~]# cat /etc/systemd/system/prometheus.service [Unit] Description=Prometheus ServerDocumentation=https://prometheus.io/docs/introduction/overview/ After=network-online.target [Service] Restart=on-failure ExecStart=/usr/local/prometheus-2.19.1.linux-amd64/prometheus --config.file=/usr/local/prometheus-2.19.1.linux-amd64/prometheus.yml --storage.tsdb.path=/var/lib/prometheus --web.external-url=http://localhost:9090 --web.enable-admin-api [Install] WantedBy=multi-user.target
服务启动的,修改完后需要执行:systemctl daemon-reload,然后重启systemctl restart prometheus
如果是命令启动的,直接重新启动一下即可 -
到prometheus后台进行数据清空,
curl -X POST -g \'http://localhost:9090/api/v1/admin/tsdb/delete_series?match[]=instance="172.1.1.1:9187"\'
-
再次查看grafana面板数据已经读取正常
参考链接:https://blog.csdn.net/weixin_44729138/article/details/116503087
如何通过 REST API 更新 Grafana 面板中的指标值
【中文标题】如何通过 REST API 更新 Grafana 面板中的指标值【英文标题】:How can I update metric values in Grafana panels via REST API 【发布时间】:2020-02-05 21:15:08 【问题描述】:仪表板上有面板:
在右侧面板上,显示可用磁盘空间,该值来自zabbix-agent。 在左侧面板上,我想通过 Grafana REST Api 显示我的自定义值。 我找到了更改整个仪表板的方法,但没有找到更改面板本身值的方法。
【问题讨论】:
【参考方案1】:Grafana 的 HTTP API 仅用于管理从仪表板操作到用户管理等工具,而不用于数据操作或创建。换句话说,仪表板上显示的值始终来自数据源,因此无法使用 Grafana 的 RESTful API 进行设置。如果您想为仪表板中的任何面板创建假数据,Grafana 有一个解决方案,称为“TestData”数据源。默认情况下它是禁用的,但可以使用插件部分轻松启用。更多信息请访问this link。
【讨论】:
在您的帮助下,决定通过一个中间数据库来实现。接下来,在设置数据源中连接到该数据库,然后在设置面板中通过 SQL 查询拉取必要的数据。以上是关于grafana面板上出现“Only queries that return single…”异常的主要内容,如果未能解决你的问题,请参考以下文章
Grafana:从面板插件配置 InfluxDB 查询。在从 typescript 设置值后使用 html 输入元素出现问题
Connection is read-only. Queries leading to data modification are not allowed
如何通过 REST API 更新 Grafana 面板中的指标值
InfluxDB 和 Grafana:在同一图形面板上比较两个具有不同时间戳的数据库
### Cause: java.sql.SQLException: Connection is read-only. Queries leading to data modification are