timer.go 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. package initialize
  2. import (
  3. "fmt"
  4. "log-server/service/dataStatistics"
  5. "log-server/service/log"
  6. "log-server/service/rentComputer"
  7. "log-server/service/system"
  8. "log-server/service/task"
  9. "log-server/config"
  10. "log-server/global"
  11. "log-server/utils"
  12. )
  13. var serviceStatisticsLog = new(log.ServiceStatisticsLog)
  14. var ServiceLogList = new(log.ServiceLogList)
  15. var syncData = new(task.SyncData)
  16. var serviceRentComputer = new(rentComputer.ServiceRentComputer)
  17. var serviceWeChatScannerApi = new(dataStatistics.ServiceWeChatScannerApi)
  18. var serviceDataAbnormalRate = new(dataStatistics.ServiceDataAbnormalRate)
  19. var serviceWeChatScannerDetailed = new(dataStatistics.ServiceWeChatScannerDetailed)
  20. var robotService = new(system.RobotService)
  21. func Timer() {
  22. if global.GVA_CONFIG.Timer.Start {
  23. for i := range global.GVA_CONFIG.Timer.Detail {
  24. go func(detail config.Detail) {
  25. _, err := global.GVA_Timer.AddTaskByFunc("ClearDB", global.GVA_CONFIG.Timer.Spec, func() {
  26. err := utils.ClearTable(global.GVA_DB, detail.TableName, detail.CompareField, detail.Interval)
  27. if err != nil {
  28. fmt.Println("timer error:", err)
  29. }
  30. })
  31. if err != nil {
  32. fmt.Println("add timer error:", err)
  33. }
  34. }(global.GVA_CONFIG.Timer.Detail[i])
  35. }
  36. }
  37. // 定时更新前一天的统计数据
  38. _, err := global.GVA_Timer.AddTaskByFunc("StatisticsLog", "2 8 5 * * * ", serviceStatisticsLog.CreateStatisticsLog)
  39. if err != nil {
  40. fmt.Println("add taskCode timer error:", err)
  41. }
  42. // 定时同步电脑相关的统计数据
  43. //_, err = global.GVA_Timer.AddTaskByFunc("CreateComputerStatisticsData", "40 0/9 7-23 * * * ", serviceStatisticsLog.CreateComputerStatisticsData)
  44. //if err != nil {
  45. // fmt.Println("add CreateComputerStatisticsData timer error:", err)
  46. //}
  47. //// 同步游戏相关的统计数据
  48. //_, err = global.GVA_Timer.AddTaskByFunc("TodayCreateStatisticsGameInfoLog", "2 0/8 6-23 * * * ", serviceStatisticsLog.TodayCreateStatisticsGameInfoLog)
  49. //if err != nil {
  50. // fmt.Println("add TodayCreateStatisticsGameInfoLog timer error:", err)
  51. //}
  52. //// 同步任务统计数据
  53. //_, err = global.GVA_Timer.AddTaskByFunc("TaskStatisticsDataCache", "2 0/3 6-23 * * * ", serviceStatisticsLog.TaskStatisticsDataCache)
  54. //if err != nil {
  55. // fmt.Println("add TaskStatisticsDataCache timer error:", err)
  56. //}
  57. //// 重试失败数据
  58. //_, err = global.GVA_Timer.AddTaskByFunc("createFailLog", "2 0/5 6-23 * * * ", ServiceLogList.CreateFailLog)
  59. //if err != nil {
  60. // fmt.Println("everyDayResetStatisticsCache timer error:", err)
  61. //}
  62. //// 定时检查电脑上报
  63. //_, err = global.GVA_Timer.AddTaskByFunc("RegularCheckPc", "2 57 8-23 * * * ", serviceStatisticsLog.RegularCheckPc)
  64. //if err != nil {
  65. // fmt.Println("RegularCheckPc timer error:", err)
  66. //}
  67. //// 新建日志表
  68. //_, err = global.GVA_Timer.AddTaskByFunc("RegularCreateLogingTable", "2 1 19 20,29 * * ", ServiceLogList.RegularCreateLogingTable)
  69. //if err != nil {
  70. // fmt.Println("add RegularCreateLogingTable timer error:", err)
  71. //}
  72. //// 定时删缓存
  73. //_, err = global.GVA_Timer.AddTaskByFunc("RegularDelCheckData", "2 33 11 * * *", serviceStatisticsLog.RegularDelCheckData)
  74. //if err != nil {
  75. // fmt.Println("add RegularDelCheckData timer error:", err)
  76. //}
  77. ////定时添加任务
  78. //_, err = global.GVA_Timer.AddTaskByFunc("EveryDaySyncTaskData", "30 29 10 * * *", syncData.EveryDaySyncTaskData)
  79. //if err != nil {
  80. // fmt.Println("add EveryDaySyncTaskData timer error:", err)
  81. //}
  82. //
  83. //_, err = global.GVA_Timer.AddTaskByFunc("SyncTaskData", "2 0/3 1-23 * * *", syncData.SyncTaskData)
  84. //if err != nil {
  85. // fmt.Println("add SyncTaskData timer error:", err)
  86. //}
  87. // 定时检查是否有电脑到期,修改租机状态@every 1s
  88. _, err = global.GVA_Timer.AddTaskByFunc("CheckIsExpire", "0 0/5 * * * *", serviceRentComputer.CheckIsExpire)
  89. if err != nil {
  90. fmt.Println("add CheckIsExpire timer error:", err)
  91. }
  92. // 定时生成租机每日台账@every 1s
  93. _, err = global.GVA_Timer.AddTaskByFunc("CreateRentComputerLedger", "0 30 23 * * *", serviceRentComputer.CreateRentComputerLedger)
  94. if err != nil {
  95. fmt.Println("add CreateRentComputerLedger timer error:", err)
  96. }
  97. //定时获取扫码平台余额,每小时执行一次
  98. //_, err = global.GVA_Timer.AddTaskByFunc("SyncGetWeChatScannerBalance", "0 58 * * * *", serviceWeChatScannerApi.SyncGetWeChatScannerBalance)
  99. _, err = global.GVA_Timer.AddTaskByFunc("SyncGetWeChatScannerBalance", "0 58 * * * *", serviceWeChatScannerApi.SyncGetWeChatScannerBalance)
  100. if err != nil {
  101. fmt.Println("add SyncGetWeChatScannerBalance timer error:", err)
  102. }
  103. //定时更新异常率
  104. _, err = global.GVA_Timer.AddTaskByFunc("SyncAbnormalRateByBatch", "0 1,31 * * * *", serviceDataAbnormalRate.SyncAbnormalRateByBatch)
  105. if err != nil {
  106. fmt.Println("add SyncAbnormalRateByBatch timer error:", err)
  107. }
  108. //定时更新当日微信扫码订单列表
  109. _, err = global.GVA_Timer.AddTaskByFunc("SyncTodayWeChatScannerDetailed", "0 3,33 * * * *", serviceWeChatScannerDetailed.SyncTodayWeChatScannerDetailed)
  110. if err != nil {
  111. fmt.Println("add SyncTodayWeChatScannerDetailed timer error:", err)
  112. }
  113. //0点更新昨日微信扫码订单列表
  114. _, err = global.GVA_Timer.AddTaskByFunc("SyncYesterdayWeChatScannerDetailed", "1 1 0 * * *", serviceWeChatScannerDetailed.SyncYesterdayWeChatScannerDetailed)
  115. if err != nil {
  116. fmt.Println("add SyncYesterdayWeChatScannerDetailed timer error:", err)
  117. }
  118. //半小时同步一次机房设备信息,播报是否有异常
  119. _, err = global.GVA_Timer.AddTaskByFunc("SyncJfDevicesMessage", "0 0,30 * * * *", robotService.SyncJfDevicesMessage)
  120. if err != nil {
  121. fmt.Println("add SyncJfDevicesMessage timer error:", err)
  122. }
  123. }