如何在 Grafana 的 Timeseries 中绘制水平线
Posted
技术标签:
【中文标题】如何在 Grafana 的 Timeseries 中绘制水平线【英文标题】:How to plot horizontal line in Timeseries in Grafana 【发布时间】:2021-09-24 07:52:32 【问题描述】:我使用 grafana 绘制时间序列数据。在时间序列图中,我想添加一条来自监控级别的恒定线。该级别的值是动态的(来自 postgres 数据库)时间序列来自 ifluxdb 数据源。
监控级别没有时间戳。结果应如下所示:
我已经搜索了很长时间如何做到这一点,但没有找到一个很好的解释。
【问题讨论】:
【参考方案1】:要画一条这样的线,你必须“伪造”一个时间序列。 (据我所知,阈值不起作用,因为它们不能是动态的)
首先要记住的是,grafana 需要时间戳来绘制它,因此全局变量 $__to 和 $__from 会派上用场。
那么,要画一条线,grafana 至少需要两个点。 ([t0, t1][y0, y1])
所以这是导致所需结果的 sql (postgre) 查询:
SELECT
$__from AS time,
level_1,
FROM my_table where display_name = '$my_grafana_var:raw'
union all
SELECT
$__to AS time,
level_1,
FROM my_table where display_name = '$my_grafana_var:raw';
【讨论】:
以上是关于如何在 Grafana 的 Timeseries 中绘制水平线的主要内容,如果未能解决你的问题,请参考以下文章
带有不错的 java 查询客户端的 Timeseries DB