grafana面板上出现“Only queries that return single…”异常

Posted wenwenliang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了grafana面板上出现“Only queries that return single…”异常相关的知识,希望对你有一定的参考价值。

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 输入元素出现问题

Grafana:一次在多个面板上添加注释

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