以下是Golang在Linux上的调试技巧及工具:
log
包记录关键信息,如变量值、执行流程等。defer
、panic/recover
处理异常。go install github.com/go-delve/delve/cmd/dlv@latest
dlv debug
启动调试,break
设置断点,continue
/step
/next
控制执行,print
查看变量。-gcflags="-N -l"
编译,支持断点和单步调试,但功能不如Delve完善。net/http/pprof
,通过HTTP接口获取CPU、内存、阻塞等分析数据,使用go tool pprof
可视化。runtime/trace
生成执行跟踪文件,用go tool trace
分析并发和调度问题。_test.go
文件,使用go test
验证代码逻辑。go vet
和golint
检查代码潜在问题。kill -SIGQUIT <pid>
获取goroutine堆栈,或使用`debug.PrintStack。