如何在Grafana中筛选仅显示近X天上报的设备变量?
筛选Graphite数据源下近X天上报过的设备变量
完全可行,借助Graphite的hasLast函数就能实现这个需求,具体操作如下:
直接修改变量查询语句为:
hasLast(MTR.test.*, Xd)其中
Xd代表你要设定的时间范围,比如近7天就写7d,近1天写1d。如果想让天数X成为可配置项(比如让用户自行选择筛选天数),可以先创建一个下拉变量(例如命名为
report_days),设置可选值为1、7、30等,再把查询语句调整为:hasLast(MTR.test.*, ${report_days}d)
hasLast函数的作用是检查指定路径下的每个时间序列,仅保留在给定时间窗口内有最新数据上报的系列,刚好匹配你过滤长期未上报设备的需求。
如果你的Graphite版本较旧不支持hasLast,可以用nonNull(keepLastValue(MTR.test.*, Xd))作为替代——先保留每个系列近X天的最后一个值,再过滤掉值为空的系列。
内容的提问来源于stack exchange,提问作者Fimlore
相关产品推荐
相关产品推荐

