1 Star 0 Fork 0

杨小灿 / go

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
stack.go 720 Bytes
一键复制 编辑 原始数据 按行查看 历史
杨小灿 提交于 2023-07-31 11:43 . let'go
/*
* @Author: 杨小灿jian308@qq.com
* @Date: 2023-05-18 10:47:01
* @LastEditors: 杨小灿jian308@qq.com
* @LastEditTime: 2023-05-18 11:51:26
*/
package utils
import (
"runtime"
"strconv"
"gitee.com/jieyang/go/clog"
)
// 产生panic时的调用栈打印
func PrintPanicStack(extras ...interface{}) {
if x := recover(); x != nil {
clog.Error().Any("recover", x).Send()
i := 0 //
funcName, file, line, ok := runtime.Caller(i)
for ok {
clog.Error().Int("frame", i).Str("func", runtime.FuncForPC(funcName).Name()).Msg(file + ":" + strconv.Itoa(line))
i++
funcName, file, line, ok = runtime.Caller(i)
}
for k := range extras {
clog.Error().Int("extras", k).Any("=>", extras[k])
}
}
}
Go
1
https://gitee.com/jieyang/go.git
git@gitee.com:jieyang/go.git
jieyang
go
go
v1.5.8

搜索帮助

53164aa7 5694891 3bd8fe86 5694891