panic 捕捉
This commit is contained in:
parent
136d77cadf
commit
00e46fe1e9
@ -15,6 +15,7 @@ import (
|
|||||||
cfg "go_dreamfactory/sys/configure/structs"
|
cfg "go_dreamfactory/sys/configure/structs"
|
||||||
"go_dreamfactory/sys/db"
|
"go_dreamfactory/sys/db"
|
||||||
"go_dreamfactory/utils"
|
"go_dreamfactory/utils"
|
||||||
|
"runtime"
|
||||||
|
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
)
|
)
|
||||||
@ -295,6 +296,14 @@ func (this *ModuleRtask) SendToRtask(session comm.IUserSession, rtaskType comm.T
|
|||||||
module, err := this.service.GetModule(comm.ModuleWorldtask)
|
module, err := this.service.GetModule(comm.ModuleWorldtask)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
go func() {
|
go func() {
|
||||||
|
defer func() { //程序异常 收集异常信息传递给前端显示
|
||||||
|
if r := recover(); r != nil {
|
||||||
|
buf := make([]byte, 4096)
|
||||||
|
l := runtime.Stack(buf, false)
|
||||||
|
|
||||||
|
log.Errorf("[Handle Api] m:%s ", fmt.Sprintf("%v: %s", r, buf[:l]))
|
||||||
|
}
|
||||||
|
}()
|
||||||
// 世界任务
|
// 世界任务
|
||||||
if worldtask, ok := module.(comm.IWorldtask); ok {
|
if worldtask, ok := module.(comm.IWorldtask); ok {
|
||||||
if err := worldtask.TaskcondNotify(session, conf.Id); err != nil {
|
if err := worldtask.TaskcondNotify(session, conf.Id); err != nil {
|
||||||
@ -327,6 +336,13 @@ func (this *ModuleRtask) SendToRtask(session comm.IUserSession, rtaskType comm.T
|
|||||||
userModule, err := this.service.GetModule(comm.ModuleUser)
|
userModule, err := this.service.GetModule(comm.ModuleUser)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
go func() {
|
go func() {
|
||||||
|
defer func() { //程序异常 收集异常信息传递给前端显示
|
||||||
|
if r := recover(); r != nil {
|
||||||
|
buf := make([]byte, 4096)
|
||||||
|
l := runtime.Stack(buf, false)
|
||||||
|
log.Errorf("[Handle Api] m:%s ", fmt.Sprintf("%v: %s", r, buf[:l]))
|
||||||
|
}
|
||||||
|
}()
|
||||||
// 公会
|
// 公会
|
||||||
if user, ok := userModule.(comm.IUser); ok {
|
if user, ok := userModule.(comm.IUser); ok {
|
||||||
ex, err := user.GetUserExpand(session.GetUserId())
|
ex, err := user.GetUserExpand(session.GetUserId())
|
||||||
@ -345,7 +361,7 @@ func (this *ModuleRtask) SendToRtask(session comm.IUserSession, rtaskType comm.T
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
if module, err := this.service.GetModule(comm.ModuleRtask); err == nil {
|
if module, err := this.service.GetModule(comm.ModuleRtask); err == nil {
|
||||||
if iRtask,ok:=module.(comm.IRtask);ok{
|
if iRtask, ok := module.(comm.IRtask); ok {
|
||||||
iRtask.SendToRtask(session, comm.Rtype156, 1)
|
iRtask.SendToRtask(session, comm.Rtype156, 1)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user