在分析app.log日志中我发现有assert失败打印,想请问一下:
为什么assert会失败?
什么场景下会报Watchdog的sel告警呢,感谢
2027-07-08 00:13:12.711964 sensor ERROR: sel_management.lua(629): add sel[{“SensorType”:35,“SubjectName”:“MainBoard”,“SensorName”:“Watchdog2”,“SensorId”:“DiscreteSensor_Watchdog2_00”,“SelEventType”:239,“SensorNumber”:1,“SelMsgVersion”:4,“GenerateId”:32,“SelData3”:255,“SelData2”:3,“SelData1”:8,“SelType”:2}] failed
2027-07-08 00:13:12.712226 sensor NOTICE: sensor_instance.lua(224): [DiscreteSensor_Watchdog2_00] deassert an event [event dir: 0]
20
这个传感器DiscreteSensor_Watchdog2是个离散传感器,配置文件如下:
“DiscreteEvent_Watchdog2”: {
“Property”: “<=/Watchdog2_1.ExpirationEventData”,
“ListenType”: 0,
“EventData1”: 255,
“EventData2”: 255,
“EventData3”: 255,
“EventDir”: 255,
“Conversion”: 0,
“SensorObject”: “#/DiscreteSensor_Watchdog2”
}
platform.sr中watchdog2_1的配置文件如下:
“Watchdog2_1”: {
“TimerUse”: 1,
“TimerUseStr”: “”,
“TimeoutAction”: 0,
“OEMExpirationFlag”: 0,
“SMSExpirationFlag”: 0,
“OSLoadExpirationFlag”: 0,
“BIOSPOSTExpirationFlag”: 0,
“BIOSFRB2ExpirationFlag”: 0,
“BIOSFailToStartFlag”: 0,
“PreTimeoutInterruptFlag”: 0
}
其中ExpirationEventData值应该是在闭源仓进行处理,且在日志中未发现有function sensor_instance:assert_discrete_event(sel, dir_value)函数中的log:notice(‘[%s] assert an event [event dir: %s]’, self.sensor_id, dir_value or ‘mock’)打印,只有function sensor_instance:deassert_discrete_event(sel, dir_value)函数中的log:notice(‘[%s] deassert an event [event dir: %s]’, self.sensor_id, dir_value or ‘mock’)打印,当时情况是每次重启都会触发看门狗的恢复告警,想再问一下,这种恢复告警在什么情况下会打印呢,感谢