package init_serve import ( "github.com/robfig/cron/v3" "hongze/mysteel_watch/services" "hongze/mysteel_watch/utils" "hongze/mysteel_watch/watch" "time" "hongze/mysteel_watch/global" "hongze/mysteel_watch/services/alarm_msg" ) func InitTask() { c := cron.New(cron.WithSeconds()) //每5分钟检测一次,指标生成 _, err := c.AddFunc("0 */1 * * * *", CheckIndexCreate) if err != nil { global.LOG.Info("DownloadCvTask err" + err.Error()) panic("DownloadCvTask err" + err.Error()) } ////每30分钟检测一次,周度指标刷新 _, err = c.AddFunc("0 */30 * * * *", services.IndexRefreshWeek) if err != nil { global.LOG.Info("DownloadCvTask err" + err.Error()) panic("DownloadCvTask err" + err.Error()) } //其他指标刷新 _, err = c.AddFunc("0 00 03 * * *", services.IndexRefreshAll) if err != nil { global.LOG.Info("DownloadCvTask err" + err.Error()) panic("DownloadCvTask err" + err.Error()) } //其他指标刷新 _, err = c.AddFunc("0 30 12 * * *", services.IndexRefreshAll) if err != nil { global.LOG.Info("DownloadCvTask err" + err.Error()) panic("DownloadCvTask err" + err.Error()) } c.Start() go watch.ListenFolderNew() go services.AutoRefresh() } //检测指标数据是否生成 func CheckIndexCreate() { var err error defer func() { if err != nil { global.LOG.Info(utils.APPNAME + " 定时任务 出错" + time.Now().Format("2006-01-02 15:04:05") + ";Err:" + err.Error()) go alarm_msg.SendAlarmMsg(utils.APPNAME+" 定时任务 出错"+time.Now().Format("2006-01-02 15:04:05")+";Err:"+err.Error(), 3) } }() err = services.IndexCreateCheck() }