title: CSR配置字典之PowerEvent类
date: 2026/05/14
📋 文档信息
| 项目 |
内容 |
| 文档标题 |
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[] |
预期的电源事件建议中的动态参数,多个使用英文逗号分开 |
📝 配置示例
电源过压告警配置
{
"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"
}
]
}
}
电源状态变化事件配置
{
"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引用是否正确