日志监控
This commit is contained in:
parent
5ec5b42430
commit
ee5781df40
@ -6,6 +6,7 @@ import (
|
|||||||
"log"
|
"log"
|
||||||
"os"
|
"os"
|
||||||
"path"
|
"path"
|
||||||
|
"runtime"
|
||||||
"strings"
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
@ -240,6 +241,11 @@ func Error(format string, a ...interface{}) {
|
|||||||
if gLogger == nil {
|
if gLogger == nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
// Capture the stack trace
|
||||||
|
stack := make([]byte, 1024)
|
||||||
|
length := runtime.Stack(stack, false)
|
||||||
|
format = fmt.Sprintf("%s\nStack trace:\n%s", format, stack[:length])
|
||||||
|
|
||||||
gLogger.doPrintf(errorLevel, printErrorLevel, format, a...)
|
gLogger.doPrintf(errorLevel, printErrorLevel, format, a...)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -3,7 +3,8 @@ package module
|
|||||||
import (
|
import (
|
||||||
"server/pkg/github.com/name5566/leaf/chanrpc"
|
"server/pkg/github.com/name5566/leaf/chanrpc"
|
||||||
"server/pkg/github.com/name5566/leaf/console"
|
"server/pkg/github.com/name5566/leaf/console"
|
||||||
"server/pkg/github.com/name5566/leaf/go"
|
g "server/pkg/github.com/name5566/leaf/go"
|
||||||
|
logger "server/pkg/github.com/name5566/leaf/log"
|
||||||
"server/pkg/github.com/name5566/leaf/timer"
|
"server/pkg/github.com/name5566/leaf/timer"
|
||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
@ -43,9 +44,15 @@ func (s *Skeleton) Init() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (s *Skeleton) Run(closeSig chan bool) {
|
func (s *Skeleton) Run(closeSig chan bool) {
|
||||||
|
defer func() {
|
||||||
|
if err := recover(); err != nil {
|
||||||
|
logger.Error("skeleton run panic: %v", err)
|
||||||
|
}
|
||||||
|
}()
|
||||||
for {
|
for {
|
||||||
select {
|
select {
|
||||||
case <-closeSig:
|
case <-closeSig:
|
||||||
|
logger.Debug("close signal received")
|
||||||
s.commandServer.Close()
|
s.commandServer.Close()
|
||||||
s.server.Close()
|
s.server.Close()
|
||||||
for !s.g.Idle() || !s.client.Idle() {
|
for !s.g.Idle() || !s.client.Idle() {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user