如何更高效绘制箱体24小时利用率百分比图表?
优化方案
无需额外设置重置事件,改用累计值差值计算即可,比你现在的方案稳定性更高、实现逻辑更轻量:
- 保留每小时定点调用
box.utilization()采集累计值的逻辑,删除利用率重置的相关事件 - 单小时使用率直接通过相邻两次采集的累计值差值计算得到,参考公式:
# 若box.utilization()返回的是累计使用量 hourly_utilization = (当前采集值 - 上一小时采集值) / 箱体额定容量 * 100% # 若box.utilization()返回的是累计百分比 hourly_utilization = 当前采集值 - 上一小时采集值
- 遇到设备重启、累计值溢出清零的情况时,直接把清零后的首次采集值作为对应时段的使用率即可,无需额外适配逻辑
你当前输出的图表效果已经符合统计需求,差值计算方案不会改变最终的图表展示逻辑,还能避免重置事件触发失败导致的统计误差:
内容的提问来源于stack exchange,提问作者Miriana
相关产品推荐
相关产品推荐

