Zabbix 6.0.21中PDU项目当前值与月度初始值的差值计算需求
计算PDU月度累计耗电量(当前值与当月初始值差值)
核心逻辑
通过获取PDU累计耗电量item的当前值与当月00:00左右的首个采集值做差值,得到月度实际耗电量。
具体实现(以Zabbix为例)
假设累计耗电量item的键值为pdu220.mainEnergyTotal,按以下步骤操作:
- 创建一个新的计算型Item,关联到PDU的模板中
- 在Item的
键值字段输入自定义标识(比如pdu220.monthlyEnergyUsage),值类型选择与原累计电量一致的类型(比如数值型) - 在
更新间隔和历史数据保留周期按需设置,然后在计算公式中填入:
表达式说明:last(//pdu220.mainEnergyTotal) - last(//pdu220.mainEnergyTotal, "month,0,0")last(//pdu220.mainEnergyTotal):获取该item的最新采集值(当前累计电量)last(//pdu220.mainEnergyTotal, "month,0,0"):获取当月第一天00:00:00时刻的采集值,即当月初始累计电量(若采集频率为分钟级,基本匹配00:00:01的首个值)
注意事项
- 确保原累计电量item在当月00:00前后有有效采集数据,避免初始值为空导致计算结果异常
- 若PDU存在重启情况,累计电量会被重置,需添加触发器监控PDU重启事件,避免月度耗电量计算失真
- 可将该计算型Item添加到监控图表中,直接与站点的月度用电统计数据做对比
内容的提问来源于stack exchange,提问作者tshoot
相关产品推荐
相关产品推荐

