Guides
源码调试
在源码部署场景下对 openim-api 等服务进行单步调试。
这一部分介绍在源码部署场景下,以单步调试IMServer的openim-api服务为例,如何进行单步调试。
- 运行
docker compose up -d和mage start启动服务。
- 查看控制台输出,如下所示:

找到需要单步调试的服务,查看其PID,并使用命令停止服务。 从图中可看到openim-api服务的PID为854942,可以使用如下命令停止:
kill -9 854942 # 类Unix系统
taskkill /PID 854942 /F # windows系统- 找到相应的服务启动入口,统一在
open-im-server/cmd目录下,在编辑器中使用Debug模式启动服务,openim-api服务的启动入口文件为open-im-server/cmd/openim-api/main.go。
- 设置启动参数。以
Goland编辑器为例,点击启动箭头,点击Modify Run Configuration,如下所示:

- 在控制台的输出找到
openim-api服务的启动参数。从输出中提取到openim-api的启动命令为:/data/open-im-server/_output/bin/platforms/linux/amd64/openim-msggateway -i 0 -c /data/open-im-server/config/,其中-i 0 -c /data/icey/open-im-server/config/就是启动参数,将其复制并粘贴到Program arguments,并点击OK,如下:

- 在需要测试的代码段中打上断点。
- 使用
debug模式启动,如下:

- 此时代码运行到断点处会停止,即可进行单步调试,如下:
