package monitor import ( "fmt" "samba/pkg/log" "samba/pkg/task" "samba/pkg/xtime" "samba/util/model" "time" ) // MatchingMonitor // 匹配异常检测检测 type MatchingMonitor struct { *Ding } func (m *MatchingMonitor) Init(t *task.Task) { t.Ticker(10 * time.Minute) } func (m *MatchingMonitor) Name() string { return "匹配异常检测" } func (m *MatchingMonitor) Do(*task.Task) { stamp, err := model.NewRealPlayGameOp().Get() if err != nil { log.Error(err.Error()) return } dur := xtime.ConvertToCarbon(stamp).DiffInDuration(xtime.Now()) if dur < 15*time.Minute { return } err = m.Ding.SendMessageText(fmt.Sprintf("匹配异常!%.2f分钟内没有真人对局", dur.Minutes())) if err != nil { log.Error(err.Error()) } }