task.go 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. package init_serve
  2. import (
  3. "github.com/robfig/cron/v3"
  4. "hongze/mysteel_watch/services"
  5. "hongze/mysteel_watch/utils"
  6. "hongze/mysteel_watch/watch"
  7. "time"
  8. "hongze/mysteel_watch/global"
  9. "hongze/mysteel_watch/services/alarm_msg"
  10. )
  11. func InitTask() {
  12. c := cron.New(cron.WithSeconds())
  13. //每5分钟检测一次,指标生成
  14. _, err := c.AddFunc("0 */1 * * * *", CheckIndexCreate)
  15. if err != nil {
  16. global.LOG.Info("DownloadCvTask err" + err.Error())
  17. panic("DownloadCvTask err" + err.Error())
  18. }
  19. ////每30分钟检测一次,周度指标刷新
  20. //_, err = c.AddFunc("0 */30 * * * *", services.IndexRefreshWeek)
  21. //if err != nil {
  22. // global.LOG.Info("DownloadCvTask err" + err.Error())
  23. // panic("DownloadCvTask err" + err.Error())
  24. //}
  25. ////其他指标刷新
  26. //_, err := c.AddFunc("0 00 03 * * *", services.IndexRefreshAll)
  27. //if err != nil {
  28. // global.LOG.Info("DownloadCvTask err" + err.Error())
  29. // panic("DownloadCvTask err" + err.Error())
  30. //}
  31. //
  32. ////其他指标刷新
  33. //_, err = c.AddFunc("0 30 12 * * *", services.IndexRefreshAll)
  34. //if err != nil {
  35. // global.LOG.Info("DownloadCvTask err" + err.Error())
  36. // panic("DownloadCvTask err" + err.Error())
  37. //}
  38. c.Start()
  39. go watch.ListenFolderNew()
  40. go services.AutoRefresh()
  41. }
  42. //检测指标数据是否生成
  43. func CheckIndexCreate() {
  44. var err error
  45. defer func() {
  46. if err != nil {
  47. global.LOG.Info(utils.APPNAME + " 定时任务 出错" + time.Now().Format("2006-01-02 15:04:05") + ";Err:" + err.Error())
  48. go alarm_msg.SendAlarmMsg(utils.APPNAME+" 定时任务 出错"+time.Now().Format("2006-01-02 15:04:05")+";Err:"+err.Error(), 3)
  49. }
  50. }()
  51. err = services.IndexCreateCheck()
  52. }