我创建了这个设备,它向我的网络服务器发送一个点。我的Web服务器存储一个Point实例,该实例具有属性created_at
以反映该点的创建时间。我的设备始终以180秒的间隔向我的服务器发送请求。
现在我想查看设备在过去7天内出现停机的时间段。
举个例子,让我们假装它是8月3日(08/03)。我可以查询我的Points表,查找按created_at
排序的最近3天的点数Points = [ point(name=p1, created_at="08/01 00:00:00"),
point(name=p2, created_at="08/01 00:03:00"),
point(name=p3, created_at="08/01 00:06:00"),
point(name=p4, created_at="08/01 00:20:00"),
point(name=p5, created_at="08/03 00:01:00"),
... ]
我想写一个可以列出以下中断的算法:
outages = {
"08/01": [ "00:06:00-00:20:00", "00:20:00-23:59:59" ],
"08/02": [ "00:00:00-23:59:59" ],
"08/03": [ "00:00:00-00:01:00" ],
}
有优雅的方法吗?