From 4f0b6a00870016359a75f7e5dd2bc3f03b87962c Mon Sep 17 00:00:00 2001 From: TsMask <340112800@qq.com> Date: Wed, 15 Oct 2025 14:39:36 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=87=AA=E6=A3=80=E5=91=8A=E8=AD=A6?= =?UTF-8?q?=E9=99=84=E5=8A=A0=E4=BF=A1=E6=81=AF=E9=94=99=E8=AF=AF=E6=9C=80?= =?UTF-8?q?=E4=BD=B3=E5=92=8C=E8=A7=A6=E5=8F=91=E6=B6=88=E9=99=A4=E6=93=8D?= =?UTF-8?q?=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ne_alarm_state_check.go | 5 ++-- .../ne_alarm_state_check_cmd.go | 28 ++++++++++--------- .../ne_alarm_state_check_license.go | 21 ++++++++------ 3 files changed, 31 insertions(+), 23 deletions(-) diff --git a/src/modules/crontask/processor/ne_alarm_state_check/ne_alarm_state_check.go b/src/modules/crontask/processor/ne_alarm_state_check/ne_alarm_state_check.go index 682c75fa..843b16d2 100644 --- a/src/modules/crontask/processor/ne_alarm_state_check/ne_alarm_state_check.go +++ b/src/modules/crontask/processor/ne_alarm_state_check/ne_alarm_state_check.go @@ -73,14 +73,15 @@ func (s *NeAlarmStateCheckProcessor) Execute(data any) (any, error) { // 网元在线状态 isOnline := parse.Boolean(neInfo.ServerState["online"]) - // 告警ID - params.AlarmId = fmt.Sprintf("%d%d", constants.ALARM_STATE_CHECK, neInfo.CreateTime) // 告警状态 alarmStatus := oam.ALARM_STATUS_ACTIVE if isOnline { alarmStatus = oam.ALARM_STATUS_CLEAR } + // 告警ID + params.AlarmId = fmt.Sprintf("%d%d", constants.ALARM_STATE_CHECK, neInfo.CreateTime) + // 创建告警 alarm := oam.Alarm{ NeUid: neInfo.RmUID, // 网元唯一标识 diff --git a/src/modules/crontask/processor/ne_alarm_state_check_cmd/ne_alarm_state_check_cmd.go b/src/modules/crontask/processor/ne_alarm_state_check_cmd/ne_alarm_state_check_cmd.go index 881c1cf8..c7dd970a 100644 --- a/src/modules/crontask/processor/ne_alarm_state_check_cmd/ne_alarm_state_check_cmd.go +++ b/src/modules/crontask/processor/ne_alarm_state_check_cmd/ne_alarm_state_check_cmd.go @@ -146,31 +146,33 @@ func (s *NeAlarmStateCheckCMDProcessor) Execute(data any) (any, error) { } } - // 检查状态连续触发 - if err == nil { - continue + // 告警状态 + alarmStatus := oam.ALARM_STATUS_ACTIVE + if err == nil { // 检查状态连续触发 + alarmStatus = oam.ALARM_STATUS_CLEAR } + // 附加信息 addInfo := params.AddInfo - if addInfo != "" { - addInfo = addInfo + ", " + err.Error() - } else { - addInfo = err.Error() + if err != nil { + if addInfo != "" { + addInfo = addInfo + ", " + err.Error() + } else { + addInfo = err.Error() + } } - - // 事件产生时间 - alarmTime := time.Now().UnixMilli() // 告警ID - params.AlarmId = fmt.Sprintf("%d%d", constants.ALARM_CMD_CHECK, alarmTime) + params.AlarmId = fmt.Sprintf("%d%d", constants.ALARM_CMD_CHECK, neInfo.CreateTime) + // 创建告警 alarm := oam.Alarm{ NeUid: neInfo.RmUID, // 网元唯一标识 - AlarmTime: alarmTime, // 事件产生时间 + AlarmTime: time.Now().UnixMilli(), // 事件产生时间 AlarmId: params.AlarmId, // 告警ID 唯一,清除时对应 AlarmCode: constants.ALARM_CMD_CHECK, // 告警状态码 AlarmType: params.AlarmType, // 告警类型 AlarmTitle: params.AlarmTitle, // 告警标题 PerceivedSeverity: params.OrigSeverity, // 告警级别 - AlarmStatus: oam.ALARM_STATUS_ACTIVE, // 告警状态 + AlarmStatus: alarmStatus, // 告警状态 SpecificProblem: params.SpecificProblem, // 告警问题原因 SpecificProblemID: params.SpecificProblemID, // 告警问题原因ID AddInfo: addInfo, // 告警辅助信息 diff --git a/src/modules/crontask/processor/ne_alarm_state_check_license/ne_alarm_state_check_license.go b/src/modules/crontask/processor/ne_alarm_state_check_license/ne_alarm_state_check_license.go index 29fed408..40f38eb8 100644 --- a/src/modules/crontask/processor/ne_alarm_state_check_license/ne_alarm_state_check_license.go +++ b/src/modules/crontask/processor/ne_alarm_state_check_license/ne_alarm_state_check_license.go @@ -85,18 +85,23 @@ func (s *NeAlarmStateCheckLicenseProcessor) Execute(data any) (any, error) { // 检查状态 err := s.cheackState(neInfo.ServerState, params.DayLt) - if err == nil { - continue + // 告警状态 + alarmStatus := oam.ALARM_STATUS_ACTIVE + if err == nil { // 检查状态连续触发 + alarmStatus = oam.ALARM_STATUS_CLEAR } + // 附加信息 addInfo := params.AddInfo - if addInfo != "" { - addInfo = addInfo + ", " + err.Error() - } else { - addInfo = err.Error() + if err != nil { + if addInfo != "" { + addInfo = addInfo + ", " + err.Error() + } else { + addInfo = err.Error() + } } - // 告警ID params.AlarmId = fmt.Sprintf("%d%d", constants.ALARM_LICENSE_CHECK, neInfo.CreateTime) + // 创建告警 alarm := oam.Alarm{ NeUid: neInfo.RmUID, // 网元唯一标识 @@ -106,7 +111,7 @@ func (s *NeAlarmStateCheckLicenseProcessor) Execute(data any) (any, error) { AlarmType: params.AlarmType, // 告警类型 AlarmTitle: params.AlarmTitle, // 告警标题 PerceivedSeverity: params.OrigSeverity, // 告警级别 - AlarmStatus: oam.ALARM_STATUS_ACTIVE, // 告警状态 + AlarmStatus: alarmStatus, // 告警状态 SpecificProblem: params.SpecificProblem, // 告警问题原因 SpecificProblemID: params.SpecificProblemID, // 告警问题原因ID AddInfo: addInfo, // 告警辅助信息