This topic created in 1443 days ago, the information mentioned may be changed or developed.
目前我已知的方法有以下几种:
1. 标准库的 log 包设置 Llongfile ,打日志的时候能够定位到代码行
2. 使用一些特殊字段,能够唯一标记这个日志是哪个函数的哪一行,比如用 函数名+具体 的方式
3. panic 然后 recover ,再打印堆栈
18 replies • 2022-07-18 03:30:18 +08:00
 |
|
1
GeruzoniAnsasu Jul 8, 2022
只要这个程序(或 docker container )能在本机上跑得起来,我一定会首先尝试 dlv
|
 |
|
6
nmap Jul 8, 2022
报错信息搜代码?
|
 |
|
7
realpg Jul 8, 2022
所有请求都短暂保存 干啥就不能本地复现了?
|
 |
|
8
keepeye Jul 8, 2022
使用带堆栈信息的第三方 error 包,比如 GoFrame 框架的 gerror
|
 |
|
13
charmToby Jul 8, 2022
有链路追踪,然后接口响应里,会返回错误堆栈信息,直接显示哪一行什么错。
|
 |
|
16
eudore Jul 11, 2022
src/net/http/server.go 里面加上一个 fmt 就好了,一般情况 server 是没有异常,都是应用错误;应用错误 recover 加上堆栈输出就有了。
|
 |
|
17
Trim21 Jul 18, 2022 via Android
每一层返回错误的时候都要用 fmt.Errorf 包一下,要么就在最底层用带 trackback 的 GitHub/pkg/errors 包 Wrap 一下。
|
 |
|
18
Trim21 Jul 18, 2022 via Android
|