前提
操作系统:linux/mac
Golang版本:1.17及其以上
IDEA:Goland
Linux
1、安装最新的gops
go install github.com/google/gops@latest
2、编写启动配置
上图红框处需要特别注意,需要和图中保持一致,此处设置了环境变量APINTO_DEBUG=true
,开启Apinto的Debug模式。
如果选择在命令行编译程序,则在编译需要携带-gcflags="all=-N -l"
参数,如下
go build -gcflags="all=-N -l" -o apinto
此文不再说明命令行编译程序的debug方法。
3、运行程序
此处需要选择Debug的按钮
4、Attach To Process
在弹出的进程列表中选择需要Debug的进程即可
注意 : Debug模式开启后,master进程名称为“apinto start”,当Debug模式关闭,master进程名称为“apinto: master”
Windows
由于Apinto 在实现restart、stop操作时,需要使用到linux系统的信号指令,Windows 上没有相关指令的支持,因此Apinto 不能直接在Windows 上编译运行。
若想在Windows 上启动,则需要在Windows 上安装Ubuntu 子系统。
安装ubuntu子系统
1、安装部署WSL2:安装 WSL(一定要升级到WSL2,否则会有些不兼容的问题)
2、可视化Debug
方案一:
安装ubuntu可视化界面,具体教程请参考Ubuntu安装可视化界面
方案二:
使用goland进行远程debug,具体参考Goland Debug远程服务进程
3、Debug程序,Linux Debug方法一致
MAC
与Linux Debug方法一致,若在arm架构上attach失败,无法找到对应的apinto进程,可以先将gops删除,再重新安装。
go install github.com/google/gops@latest