CSR配置字典之PowerEvent类
更新时间: 2026/05/14
在Gitcode上查看源码📋 文档信息
| 项目 | 内容 |
|---|---|
| 文档标题 | PowerEvent类配置字典 |
| 版本 | v1.0 |
| 创建日期 | 2026-05-14 |
| 最后更新 | 2026-05-14 |
| 维护状态 | ✅ 活跃维护 |
📋 变更历史记录
文档变更记录
| 版本 | 发布日期 | 变更类型 | 变更内容 | 影响范围 | 维护人员 |
|---|---|---|---|---|---|
| v1.0 | 2026-05-14 | 新增 | 创建PowerEvent类配置字典,用于电源事件管理 | 全新文档 | 告警事件管理组 |
🎯 类概览
PowerEvent 类
| 属性 | 值 |
|---|---|
| 类名称 | PowerEvent |
| 功能描述 | 当前类仅用来处理电源的事件管理,支持电源事件的映射配置 |
| 所属SIG组 | hardware |
| 所属组件 | event |
| 责任人 | 基础服务组 |
| 最后更新 | 2026-05-14 |
| 状态 | 🟢 正常运行 |
📊 属性定义详表
PowerEvent 类 - 必选属性
| 属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
|---|---|---|---|---|---|---|---|---|---|
EventKeyId | String | - | 已有的EventKeyId | - | 电源事件的事件标识 | 唯一标识一类电源事件 | "PowerSupply.OverVoltage" | CSR | 软件 |
Component | String | - | 已有的Component | Component_PowerSupply | 电源事件对应的部件,直接关联对应的部件定义对象 | 电源事件必须关联器件 | "#/Component_PowerSupply" | CSR | 软件 |
PowerEvent 类 - 可选属性
| 属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
|---|---|---|---|---|---|---|---|---|---|
Reading | U32 | 0 | U32 | - | 电源事件的读值,一般关联于对应的扫描对象 | 电源事件读值配置 | 0 | CSR | 硬件 |
AdditionalInfo | String | "" | 字符串,多个用英文逗号分隔 | - | 事件关联部件的补充信息,如果有多个则使用逗号(英文)分隔开,配置的元素是数字 | 告警上报时用来区分component | "" | CSR | 软件 |
Mappings | Array<PowerEventConfig> | - | PowerEventConfig列表 | - | 电源事件的映射关系,格式为PowerEventConfig的列表数组 | 配置电源事件与告警的映射 | 详见下方PowerEventConfig结构 | CSR | 软件 |
BelongsToSystem | Boolean | false | true/false | - | 多Host场景表征当前对象是否归属单一系统,默认为公共对象(false),SystemId取0 | 多Host场景下区分对象归属 | false | CSR | 软件 |
📂 PowerEventConfig 结构
| 字段名 | 类型 | 描述 |
|---|---|---|
Reading | U32 | 预期的电源事件的读值 |
LedFaultCode | String | 预期的电源事件的错误码 |
DescArgs | String[] | 预期的电源事件描述中的动态参数,多个使用英文逗号分开 |
SuggArgs | String[] | 预期的电源事件建议中的动态参数,多个使用英文逗号分开 |
📝 配置示例
电源过压告警配置
json
{
"PowerEvent": {
"EventKeyId": "PowerSupply.OverVoltage",
"Component": "#/Component_PowerSupply",
"Reading": "<=/Scanner_PSU_Voltage.Value",
"Mappings": [
{
"Reading": 13200,
"LedFaultCode": "P1",
"DescArgs": "<=/PSU_1.SerialNumber",
"SuggArgs": "check power supply"
},
{
"Reading": 14400,
"LedFaultCode": "P2",
"DescArgs": "<=/PSU_2.SerialNumber",
"SuggArgs": "replace power supply"
}
]
}
}电源状态变化事件配置
json
{
"PowerEvent": {
"EventKeyId": "PowerSupply.StatusChange",
"Component": "#/Component_PowerSupply",
"Reading": "<=/Scanner_PSU_Status.Value",
"Mappings": [
{
"Reading": 1,
"LedFaultCode": "P3",
"DescArgs": "<=/PSU_1.Name",
"SuggArgs": "check PSU connection"
}
]
}
}🔧 使用指南
配置步骤
- 定义事件标识:设置唯一的EventKeyId作为电源事件的标识
- 关联组件:通过Component关联对应的电源Component对象
- 配置读值源:通过Reading关联Scanner获取电源状态
- 配置映射关系:通过Mappings配置电源事件与告警的映射关系
注意事项
- EventKeyId唯一性:必须在整个系统中保持唯一
- Component关联:电源事件必须关联对应的Component对象
- Mappings配置:每个映射项的Reading值应与实际电源读值匹配
- BelongsToSystem:多Host场景下根据需要配置
故障排查
- 电源事件不触发:检查Reading值和Mappings中的Reading配置
- 映射失败:检查PowerEventConfig结构各字段配置是否正确
- 组件关联失败:检查Component引用是否正确