增加定时任务 处理异常
This commit is contained in:
36
utils/recovery/cron_recovery.go
Normal file
36
utils/recovery/cron_recovery.go
Normal file
@@ -0,0 +1,36 @@
|
||||
package recovery
|
||||
|
||||
import (
|
||||
"energy-management-system/core/logger"
|
||||
"energy-management-system/global"
|
||||
"energy-management-system/utils/code"
|
||||
"energy-management-system/utils/exception"
|
||||
"fmt"
|
||||
)
|
||||
|
||||
func CronRecovery(name string) {
|
||||
if err := recover(); err != nil {
|
||||
var codes int
|
||||
var msg any
|
||||
var er error
|
||||
if h, ok := err.(*exception.E); ok {
|
||||
codes = h.Code
|
||||
msg = h.Msg
|
||||
er = h.Err
|
||||
} else if e, ok := err.(error); ok {
|
||||
msg = fmt.Sprint("未知错误:", e.Error())
|
||||
logger.StackSend(5, e.Error())
|
||||
codes = code.UNKNOW_ERROR
|
||||
} else {
|
||||
msg = fmt.Sprint("服务器错误:", err)
|
||||
logger.StackSend(5, err.(string))
|
||||
codes = code.SERVER_ERROR
|
||||
}
|
||||
global.Log.WithFields(map[string]any{
|
||||
"code": codes,
|
||||
"model": "task",
|
||||
"func": name,
|
||||
"err": er,
|
||||
}).Error(msg)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user