如何解决Influxdb GroupBy时间使用预定义的时间间隔,而不是从第一个时间戳开始
我正在使用Influxdb存储一些数据,这些数据代表对某些服务的请求。我想计算在5秒的时间间隔内在一秒钟内完成的请求数(可能在一秒钟内发生多个请求)。为了实现此目的,我编写了此查询,以便获得5秒钟时间段内发生的请求数量
select sum(Value) as RequestSum from Requests where group by time(5s) fill(0)
。我面临的问题是,不是创建从注册的第一个时间戳开始的间隔(在我的情况下,该时间戳看起来像是2020-10-16 14:09:13
,而是总是以以2020-10-16 14:09:10
为单位的秒数结束)
当我尝试按时间(6s)分组时,也会发生相同的情况,当它开始分组的第一个时间戳是2020-10-16 14:09:12
时。
是否有一种方法可以强制Influx从某个时间戳开始分组,而不是一个似乎是预定义的分组?
解决方法
最后,我设法找到了解决方案,我必须添加一个包含开始时间和结束时间的where子句,并且必须将#define SIZE 5 /* preprocessor */
enum { SIZE=5 }; /* compiler */
更改为group by time(5s)
,以使查询看起来像类似于group by time(5s,starttime)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。