diff --git a/event/event.go b/event/event.go index 6a4608f..94c4582 100644 --- a/event/event.go +++ b/event/event.go @@ -1,6 +1,7 @@ package event import ( + "fmt" "github.com/duanhf2012/origin/log" "runtime" "sync" @@ -214,7 +215,8 @@ func (processor *EventProcessor) EventHandler(ev IEvent) { if r := recover(); r != nil { buf := make([]byte, 4096) l := runtime.Stack(buf, false) - log.SError("core dump info:",r,":",string(buf[:l])) + errString := fmt.Sprint(r) + log.SError("core dump info[",errString,"]\n",string(buf[:l])) } }() diff --git a/rpc/client.go b/rpc/client.go index 967b978..bffbe23 100644 --- a/rpc/client.go +++ b/rpc/client.go @@ -3,6 +3,7 @@ package rpc import ( "container/list" "errors" + "fmt" "github.com/duanhf2012/origin/log" "github.com/duanhf2012/origin/network" "github.com/duanhf2012/origin/util/timer" @@ -261,7 +262,8 @@ func (client *Client) Run(){ if r := recover(); r != nil { buf := make([]byte, 4096) l := runtime.Stack(buf, false) - log.SError("core dump info:",r,":", string(buf[:l])) + errString := fmt.Sprint(r) + log.SError("core dump info[",errString,"]\n", string(buf[:l])) } }() diff --git a/rpc/rpchandler.go b/rpc/rpchandler.go index 6fbf66b..444920a 100644 --- a/rpc/rpchandler.go +++ b/rpc/rpchandler.go @@ -194,7 +194,8 @@ func (handler *RpcHandler) HandlerRpcResponseCB(call *Call){ if r := recover(); r != nil { buf := make([]byte, 4096) l := runtime.Stack(buf, false) - log.SError("core dump info:",r,":",string(buf[:l])) + errString := fmt.Sprint(r) + log.SError("core dump info[",errString,"]\n",string(buf[:l])) } }() @@ -215,7 +216,8 @@ func (handler *RpcHandler) HandlerRpcRequest(request *RpcRequest) { if r := recover(); r != nil { buf := make([]byte, 4096) l := runtime.Stack(buf, false) - log.SError("Handler Rpc ",request.RpcRequestData.GetServiceMethod()," Core dump info:",r,":",string(buf[:l])) + errString := fmt.Sprint(r) + log.SError("Handler Rpc ",request.RpcRequestData.GetServiceMethod()," Core dump info[",errString,"]\n",string(buf[:l])) rpcErr := RpcError("call error : core dumps") if request.requestHandle!=nil { request.requestHandle(nil,rpcErr) diff --git a/service/service.go b/service/service.go index f0b6b8e..c907585 100644 --- a/service/service.go +++ b/service/service.go @@ -2,6 +2,7 @@ package service import ( "errors" + "fmt" "github.com/duanhf2012/origin/event" "github.com/duanhf2012/origin/log" "github.com/duanhf2012/origin/profiler" @@ -213,7 +214,8 @@ func (s *Service) Release(){ if r := recover(); r != nil { buf := make([]byte, 4096) l := runtime.Stack(buf, false) - log.SError("core dump info:",r," : ",string(buf[:l])) + errString := fmt.Sprint(r) + log.SError("core dump info[",errString,"]\n",string(buf[:l])) } }() s.self.OnRelease() diff --git a/util/timer/timer.go b/util/timer/timer.go index a53fc3d..87a9612 100644 --- a/util/timer/timer.go +++ b/util/timer/timer.go @@ -94,8 +94,8 @@ func (t *Timer) Do(){ if r := recover(); r != nil { buf := make([]byte, 4096) l := runtime.Stack(buf, false) - err := fmt.Errorf("%v: %s", r, buf[:l]) - log.SError("core dump info:", err.Error()) + errString := fmt.Sprint(r) + log.SError("core dump info[",errString,"]\n",string(buf[:l])) } }() t.cb()