|
@@ -312,12 +312,12 @@ func ModifyEdbMonitorStateAndSendMsg(edbMonitorInfo *edbmonitor.EdbMonitorInfo,
|
|
|
err = fmt.Errorf("GetEdbDataListByCondition err:%w", er)
|
|
|
return
|
|
|
}
|
|
|
- err = ModifyEdbMonitorState(edbMonitorInfo, latestTwoData)
|
|
|
+ state, err := ModifyEdbMonitorState(edbMonitorInfo, latestTwoData)
|
|
|
if err != nil {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
- if edbMonitorInfo.State == EDB_MONITOR_STATE_TRIGGER_SUCCESS {
|
|
|
+ if state == EDB_MONITOR_STATE_TRIGGER_SUCCESS {
|
|
|
SendAndLogMessage(edbMonitorInfo)
|
|
|
}
|
|
|
return
|
|
@@ -334,27 +334,28 @@ func GetTwoEdbDataByDataTime(edbCode, dataTime string, source, subSource int) (t
|
|
|
return
|
|
|
}
|
|
|
|
|
|
-func ModifyEdbMonitorState(edbMonitorInfo *edbmonitor.EdbMonitorInfo, latestTwoData []*data_manage.EdbData) (err error) {
|
|
|
+func ModifyEdbMonitorState(edbMonitorInfo *edbmonitor.EdbMonitorInfo, latestTwoData []*data_manage.EdbData) (state int, err error) {
|
|
|
var updateCols []string
|
|
|
edbMonitorInfo.EdbLatestDate = latestTwoData[0].DataTime
|
|
|
edbMonitorInfo.EdbLatestValue = latestTwoData[0].Value
|
|
|
updateCols = append(updateCols, []string{"edb_latest_date", "edb_latest_value"}...)
|
|
|
|
|
|
- triggerState := cmpEdbMonitorState(latestTwoData, edbMonitorInfo.MonitorType, edbMonitorInfo.MonitorData)
|
|
|
- if triggerState == EDB_MONITOR_STATE_TRIGGER_SUCCESS {
|
|
|
+ state = cmpEdbMonitorState(latestTwoData, edbMonitorInfo.MonitorType, edbMonitorInfo.MonitorData)
|
|
|
+ if state == EDB_MONITOR_STATE_TRIGGER_SUCCESS {
|
|
|
tmpTime, _ := time.Parse(utils.FormatDate, latestTwoData[0].DataTime)
|
|
|
edbMonitorInfo.EdbTriggerDate = tmpTime
|
|
|
edbMonitorInfo.MonitorTriggerTime = time.Now()
|
|
|
updateCols = append(updateCols, []string{"edb_trigger_date", "monitor_trigger_time"}...)
|
|
|
}
|
|
|
if edbMonitorInfo.State == EDB_MONITOR_STATE_NO_TRIGGER || edbMonitorInfo.State == EDB_MONITOR_STATE_CLOSE {
|
|
|
- edbMonitorInfo.State = triggerState
|
|
|
+ edbMonitorInfo.State = state
|
|
|
updateCols = append(updateCols, "state")
|
|
|
}
|
|
|
err = edbMonitorInfo.Update(updateCols)
|
|
|
if err != nil {
|
|
|
return
|
|
|
}
|
|
|
+
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -586,12 +587,12 @@ func HandleEdbMonitorEdbInfo() {
|
|
|
utils.FileLog.Error("获取数据失败, err:%w, edbInfoId:%d", err, edbInfo.EdbInfoId)
|
|
|
continue
|
|
|
}
|
|
|
- err = ModifyEdbMonitorState(v, twoData)
|
|
|
+ state, err := ModifyEdbMonitorState(v, twoData)
|
|
|
if err != nil {
|
|
|
utils.FileLog.Error("更新预警状态失败, err:%w, edbMonitorId:%d", err, v.EdbMonitorId)
|
|
|
continue
|
|
|
}
|
|
|
- if v.State == EDB_MONITOR_STATE_TRIGGER_SUCCESS {
|
|
|
+ if state == EDB_MONITOR_STATE_TRIGGER_SUCCESS {
|
|
|
err = SendAndLogMessage(v)
|
|
|
if err != nil {
|
|
|
utils.FileLog.Error("发送预警消息失败, err:%w, edbMonitorId:%d", err, v.EdbMonitorId)
|