ISSUE链接
评审背景
支持历史数据采集需求,需要获取最近10分钟的传感器信息,包括温度、风扇和功率信息,每10s采样和记录一次,支持一键日志和api下载,下载文件格式为csv格式,日志内容包括:
- SensorType(传感器类型)
- SensorName(传感器名称)
- Value(传感器读值)
- Time(采样时间点)
当前现状以及差距
现状
当前BMC的传感器数据仅有全量查询实时数据能力,不具备查询历史数据能力
方案
当前需求为客户定制需求,因此整体功能由客户自定义组件中进行实现。实现逻辑:
- 按照客户要求的收集间隔,调用BMC的传感器查询接口,获取当前的实时传感器信息
- 按照收集传感器名称,保留历史数据的时限来保存历史的数据,保存在内存列表中
- 按照客户的定制北向接口,进行映射配置响应【当前这部分未实现】
- 【DFX】根据当前的收集间隔和保存时限,内存目前影响可控
差距
目前客户自定义组件中没有对应的资源协作接口,无法进行北向接口映射配置。
评审点
path(原有):/bmc/baidu/Chassis/:chassis_id/Sensors
interface(原有):bmc.Baidu.Chassis.Sensors
变化类型:新增方法
应用场景:Restful 接口触发采集和清空历史数据
新增方法:Dump和Clear
评审点1:新增方法 Dump
| 项 | 说明 |
|---|---|
| 方法名称 | Dump |
| 变化类型 | 新增方法 |
| 方法权限 | ReadOnly |
| 请求签名 | 无 |
| 请求参数 | 无 |
| 响应签名 | s |
| 响应参数 | Details:类型为 string,表征采集的历史数据(CSV格式字符串)说明:包含SensorType、SensorName、Value和Time数据 |
| 接口说明 | 导出采集的历史传感器数据 |
| 接口约束 | 无 |
评审点2:新增方法 Reset
| 项 | 说明 |
|---|---|
| 方法名称 | Reset |
| 变化类型 | 新增方法 |
| 方法权限 | BasicSetting |
| 请求签名 | 无 |
| 请求参数 | 无 |
| 响应签名 | 无 |
| 响应参数 | 无 |
| 接口说明 | 重置采集的历史数据,重置之后重新开始采集 |
| 接口约束 | 无 |
评审结论
通过,同意资源协作接口bmc.Baidu.Chassis.Sensors增加如下方法:
Dump,用于导出采集的传感器历史数据,无请求参数,响应签名为s,表示采集的详细数据,字符串内容为 CSV 格式,包含 SensorType、SensorName、Value和Time信息,权限为ReadOnlyReset,用于重置采集的传感器历史数据,无请求和响应参数,重新开始采集,权限为BasicSetting
遗留问题
1、Dump 方法响应返回参数 Time 字段需要明确时间格式
结论:采用redfish规范的时间(date-time)字符串格式
2、参考 Redfish 关于指标的采集清空方式,对于 Clear 方法命名修改为 Reset
结论:redfish标准资源中的Reset表示复位最近一个采集周期内的数据,方法名称可以采用 Reset,已经修改评审点描述。