recover 之后打印 panic 的调用栈

2024-03-19  本文已影响0人  五岁小孩

打印 recover 的 panic 调用栈

func main(){
  defer func() {
        if rec := recover(); rec != nil {
            buf := make([]byte, 1<<16)
            runtime.Stack(buf, true)
            grpclog.Errorln("recover success")
            grpclog.Errorf("recover ", string(buf))
        }
    }()
  panic("test err")
}
上一篇 下一篇

猜你喜欢

热点阅读