【已评审】调试命令统计redfish组件接收到的发送频率TOPn特性的资源协作接口方案评审

关联 issue

需要资源协作接口承载redfish资源变更top5特性

评审背景

在redfish资源变化事件上报功能中,如果资源协作接口属性频繁变化会触发redfish反复进行资源扫描,从而导致进程cpu占用率高。因此需要提供一个在线调测功能,可以直观的统计到redfish在指定时间范围内接收到的资源协作接口变动次数TOPn的数据,从而识别是否存在资源协作接口频繁变动的情况,如果是易变属性,则需要进行扫描屏蔽。此外,现网可能出现非预期的资源协作接口信号风暴导致CPU高,为了增强可定位性,该调试命令在release版本也需要提供。

决策点

新增统计属性变更型号的资源协作接口

详细描述

path:/bmc/kepler/Release/Performance/Redfish(新增)
interface: bmc.kepler.Release.Performance.Metrics.PropertyChange(新增)

新增方法 权限 req签名 rsp签名 说明
GetStatus ReadOnly b 查看使能状态
GetReport ReadOnly s 返回以json格式化的TOPn数据的字符串
SetStatus BasicSetting b 设置使能true or false

评审结论

决策点:新增统计属性变更型号的资源协作接口
结论: 同意新增如下资源协作接口
新增path:/bmc/kepler/Release/Performance/Redfish
新增interface: bmc.kepler.Release.Performance.Metrics.PropertyChange
新增方法:GetStatus、GetReport、SetStatus(签名、权限参考详细描述)

遗留问题及结论

1、考虑资源协作接口方法合并的可行性
结论:由于新增方法的签名不一致,且无可行合并的方法,所以保留当前设计。
2、GetReport方法的响应考虑通用性
结论:已将GetReport方法的rsp签名由ta(sssu)(sssu)改成s,兼具通用性。