大佬们平时都是怎样调试查看变量变化的?
调试时候总是 print 会被其他打印的信息埋没,请教大佬们 有没有可以实时输出到网页的库或者工具?最好是还能记录变量变化。expvar 有些简陋了。
1
hwdq0012 13 天前
打日志可以加点锚点,看日志时通过锚点过滤
如果有上 elk 之类的日志系统,本身就支持过滤 |
2
doraemonki 13 天前 via Android
之前搞过很多花里胡哨的,最后还是返璞归真,print 大法好
|
3
raw0xff OP @doraemonki print 太多找起来有点费劲,而且 print 不能是动态的
|
4
lscho 13 天前
原来搞花里胡哨的断点什么的,最后还是 print 大法好。
太多找起来费劲就封装个方法,搞个分组筛选就行了。类似 android 的 Logcat ,挺清晰的。 |
![]() |
5
quqiu 13 天前
直接 panic
|
![]() |
6
xuanbg 13 天前
根本不调试,直接看错误日志,一般直接就知道错误原因了。如果是空指针的话,再看看错误堆栈就差不多了。
|
![]() |
7
xuanbg 13 天前
正确输出日志,是程序员的一项基础能力。从日志输出这个维度看,10 个程序员里至少有 8 个是不合格的。
|
![]() |
8
ysicing 13 天前
通常用 davecgh/go-spew 一梭子解决😂
|
9
raw0xff OP 没找到方便好用的库,还是老老实实 log fmt 吧
|
![]() |
10
pike0002 13 天前
感觉现在用这种方式调试的不多了。推荐看看 https://blog.codingnow.com/2018/05/ineffective_debugger.html
|
11
neoblackcap 12 天前
为什么要用 print 啊?用 zerolog 等日志库啊,方便变更输出格式,输出的目标。还能根据日志等级进行筛选
|
![]() |
12
qloog 12 天前
直接打日志,开发模式下会输出到 console 里,线上环境输出到日志文件里,还可以通过 配置文件来控制打印不同的日志级别
有时也会配合使用 fmt.Println 来 debug |