板卡温度模拟获取失败Mngmnt Health传感器信息无变化问题分析
更新时间: 2026/05/31
在Gitcode上查看源码问题背景
- 单板类型:自研板;
- 软件版本:openUBMC 25.09;
- 涉及功能:传感器,告警;
- 触发条件:用setprop命令设置硬盘温度为0模拟触发告警,查看BMC状态;
- 业务表现:预期Mngmnt Health传感器产生告警;实际还是健康,没有记录相应的告警。
问题复现步骤
- 用setprop命令设置硬盘温度为0,模拟触发告警;
- 前台系统管理-系统信息-离散传感器页面查看BMC健康状态传感器Mngmnt Health;
关键日志信息
模拟后,查看系统健康状态如下:
定位过程
- 尝试修改板卡温度传感器的门限值,查看系统健康状态是否有变更,发现依然为0x8000但是告警已经产生;
- 确认Mngmnt Health传感器的事件产生和状态变化的原因是由于传感器硬件访问异常,与触发超出门限的告警无关;
- Mngmnt Health为离散传感器,查看ipmi标准协议,确认该传感器产生异常的条件;
问题原因
根据ipmi标准协议所述,Mngmnt Health的离散告警是当sensor无法正常访问,读值异常才会触发告警。
解决方案
openUBMC中通过mdbctl setprop修改Scanner中Status值,可以达到触发告警的目的。