1。需要root权限的服务器代码调试
- sudo ./app
- ps to get pid
- dlv attach pid --headless --listen=:40000 --api-version=2 --accept-multiclient
- attach the golang IDE or other IDE
2。不需要root权限的服务器代码调试,另一种选择
- dlv --listen=:40000 --headless=true --api-version=2 --accept-multiclient exec ./app -- -config-file=config file path
- attach the golang IDE or other IDE
"-- -config-file=config file path" is optional
3. 编译的时候记得 go build -gcflags="all=-N -l", 关闭优化
这篇文章可以参考 Remote debug your go code,记录的是第二种调试方法,还有docker,以及goland的设置。