improve the log of panic recovering (#906)
This commit is contained in:
parent
a5978b5470
commit
5cc92860a6
4
grpc.go
4
grpc.go
@ -7,6 +7,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"net"
|
"net"
|
||||||
"reflect"
|
"reflect"
|
||||||
|
"runtime/debug"
|
||||||
"sort"
|
"sort"
|
||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
@ -340,7 +341,8 @@ func (g *grpcServer) processRequest(stream grpc.ServerStream, service *service,
|
|||||||
fn := func(ctx context.Context, req server.Request, rsp interface{}) error {
|
fn := func(ctx context.Context, req server.Request, rsp interface{}) error {
|
||||||
defer func() {
|
defer func() {
|
||||||
if r := recover(); r != nil {
|
if r := recover(); r != nil {
|
||||||
log.Logf("handler %s panic recovered, err: %s", mtype.method.Name, r)
|
log.Log("panic recovered: ", r)
|
||||||
|
log.Logf(string(debug.Stack()))
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
returnValues = function.Call([]reflect.Value{service.rcvr, mtype.prepareContext(ctx), reflect.ValueOf(argv.Interface()), reflect.ValueOf(rsp)})
|
returnValues = function.Call([]reflect.Value{service.rcvr, mtype.prepareContext(ctx), reflect.ValueOf(argv.Interface()), reflect.ValueOf(rsp)})
|
||||||
|
Loading…
Reference in New Issue
Block a user