关联issue
新增资源树属性RecordId,用于表示已上报事件的事件记录标识
背景
旧版本redfish事件上报采用event_policy组件通知redfish组件方式(已上报的事件记录序号RecordId存储在event_policy),新版本事件上报功能不再采用通知机制,完全由redfish组件从event组件获取事件后进行上报(已上报的事件记录序号RecordId存储在redfish,并且未从event_policy同步)。从旧版本升级到新版本存在首次升级后会有重复事件上报的问题。
决策点
新增资源树属性RecordId,用于显示已上报event类型的事件记录标识
整体方案
说明:
- 当redfish组件的数据库中,RecordId为0时才会获取资源树的RecordId
- 多次获取资源树RecordId的上限为50次,每次睡眠3s。若超过上限仍获取资源树RecordId失败,则不再获取未上报事件,进入下一步:监听事件上报信息。
- 为了防止重复上报,需要在获取未上报事件后,再监听事件上报信息。所以无法一直获取资源树RecordId
- 多次获取资源树RecordId的上限(50次,每次睡眠3s)根据启动时间规格确定,超上限时已经超过启动时间规格。
详细描述
资源path:/bmc/kepler/EventService/Event
资源interface:bmc.kepler.EventService.Event
变化类型:新增属性 RecordId
应用场景:表示BMC本次启动前已上报的事件记录标识
持久化类型: 不持久化
操作权限:ReadOnly
详细描述:
属性名称 | 取值类型 | 变化类型 | 读写&权限 | 持久化 | 变化通知 | 接口说明 |
---|---|---|---|---|---|---|
RecordId | U64 | 新增属性 | R:ReadOnly | 无 | false | 表示BMC本次启动前已上报的事件记录标识 |
评审结论
同意bmc.kepler.EventService.Event接口新增属性RecordId,类型为U64,表示BMC本次启动前已上报的事件记录标识