Browse Source

fix:binlog监听消息发送

zqbao 4 months ago
parent
commit
3851348a6b
2 changed files with 13 additions and 8 deletions
  1. 11 6
      services/edb_monitor/edb_monitor.go
  2. 2 2
      utils/constants.go

+ 11 - 6
services/edb_monitor/edb_monitor.go

@@ -265,22 +265,27 @@ func SaveEdbMonitorInfo(req request.EdbMonitorInfoSaveReq, adminId int) (msg str
 func ModifyEdbMonitorState(edbMonitorInfo *edbmonitor.EdbMonitorInfo, edbCode string, source, subSource int) (err error) {
 	cond := ` AND edb_code = ? `
 	pars := []interface{}{edbCode}
-	latestTwoData, er := data_manage.GetEdbDataListByCondition(cond, pars, source, subSource, 0, 2)
+	latestTwoData, er := data_manage.GetEdbDataListByCondition(cond, pars, source, subSource, 2, 0)
 	if er != nil {
 		err = fmt.Errorf("GetEdbDataListByCondition err:%w", er)
 		return
 	}
-	triggerState := cmpEdbMonitorState(latestTwoData, edbMonitorInfo.MonitorType, edbMonitorInfo.MonitorData)
 	var updateCols []string
-	if edbMonitorInfo.State != EDB_MONITOR_STATE_TRIGGER_SUCCESS {
-		edbMonitorInfo.State = triggerState
-		updateCols = append(updateCols, "state")
-	} else {
+	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 {
 		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 = triggerState
+		updateCols = append(updateCols, "state")
+	}
 	err = edbMonitorInfo.Update(updateCols)
 	if err != nil {
 		return

+ 2 - 2
utils/constants.go

@@ -514,5 +514,5 @@ var (
 	BASE_END_DATE_UnSpace   = time.Now().AddDate(4, 0, 0).Format(FormatDateUnSpace) //基础数据结束日期
 )
 
-const CACHE_MYSQL_DATA_FILENAME = "eta:mysql:eta_index:binlog:filename"
-const CACHE_MYSQL_DATA_POSITION = "eta:mysql:eta_index:binlog:position"
+const CACHE_MYSQL_DATA_FILENAME = "eta:mysql:test:binlog:filename"
+const CACHE_MYSQL_DATA_POSITION = "eta:mysql:test:binlog:position"