我正在使用 Telegraf/InfluxDB/Grafana 来注册和查看我的服务器的指标。有时,这些组件之一会崩溃并且指标停止流入 InfluxDB。
为了能够注意到这种情况何时发生(在使用 Monit 重新启动服务的基础上),我想创建一个 Grafana 仪表板,其中每个主机都有一个 singlestat 面板,显示最近的时间戳(或者更好,有多少时间通过),因为收到了最后一个指标。我还想根据使用的时间为 singlestat 的背景着色。我希望能够对任何 InfluxDB 指标执行此操作,因为不同的指标可能有不同的滞后原因。
现在,我已经在 InfluxQL 中尝试过类似的方法,但我只是收到一个错误,即查询中必须至少存在一个非时间字段:SELECT last(time) FROM "system" WHERE "load1" > -1 GROUP BY "host"
如果我尝试将其更改为此,则会收到“多个系列错误”:SELECT last(time), last("load1") FROM "system" GROUP BY "host"
我想要做的事情是不是很容易实现,还是我错过了一些明显的东西?
最佳答案
...查询语法取自此 issue 中的某处.
我还没有看过 singlestat 面板,但我建议创建一个 ' scripted dashboard '。
首先手动创建一个带有虚拟数字的单统计破折号。然后export it看看 json 是什么样子的。
然后,使用脚本化仪表板使用上述查询的实时结果重新创建相同的 json。
在 grafana 的/public/dashboards 中查找“scripted.js”或“scripted_templated.js”。在同一文件夹中复制其中一个,然后破解以生成您的 json。 Here和 here和 here是一些很好的示例,用于将查询提交到 influxdb 并将结果解析为 json 以用于您的 singlestat 破折号。祝你好运。
关于influxdb - 如何在 Grafana 表(或 singlestat)中显示 InfluxDB 测量的最新时间戳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40766406/