在租用的AutoDL服务器上基于终端不便进行代码调试,而使用远程桌面控制部署也相对麻烦。pycharm 则需要专业版才能进行远程开发,如果使用Shell启动的程序也没有办法调试,最终选择利用 VScode 来进行远程代码调试。
一、远程租用并启动服务器
这里使用 AutoDL 平台租用服务器,平台提供了多种类型的 GPU
。若想要使用平台在首页根据帮助文档操作即可,文档的教程很详细,也有一些关于VSCode与AutoDL结合的介绍,链接地址如下:AutoDL帮助文档
二、VScode 本地配置
1、SSH 连接配置
在 VScode Extensions:MarketPlace 中搜索 Remote Development 找到对应扩展后下载。同时会自动下载依赖的一些扩展。
下载安装好扩展Remote Development后,开始进行相应的配置,先点击左下角 Remote Development 图标(提示Open a Remote Window),再选择Connect to Host Remote-SSH 连接。
然后选择 Add New SSH Host, 从AutoDL上复制SSH登陆指令,选择第一个选项,提示输入密码,从AutoDL上复制密码后,开始下载安装VS Code Server:
右下角显示已经连接到了远程云服务器:
点击左上角的文件按钮可以打开云服务器上的目录/root/Streamer-Sales:
Debug 环境配置
在远程主机安装 Python 和 Jupyter 扩展,我的AutoDL云服务中都已经安装了。
安装好扩展后配置 python 解释器:
按 Ctrl + Shift + P
(Windows/Linux)或 Cmd + Shift + P
(macOS)打开 VSCode 的 命令面板。
在命令提示符>后输入并选择 Python: Select Interpreter
。
如果你已经安装了 Conda 和虚拟环境,VSCode 可能会自动列出已安装的 Conda 环境。如果你看到 PyCharm 的虚拟环境,直接选择它。我的Conda 环境是 streamer-sales, 选择好后可以看到右下角已经使用Interpret环境了。
三、设置断点调试
1、常规调试:
我们打开server下的web——configs.py文件,在上面打一个断点。点击左边的run and debug按钮,再点击Show all automatic debug configurations.
可以看到我们在这个环境下可以选择的调试器:
2、调试deploy.sh文件
2.1 首先安装Bash Debug扩展:
点击左侧活动栏的 扩展(Extensions) 图标,在搜索框中输入 Bash Debug
,安装扩展。常用的是来自 rogalmic 的扩展。
2.2 创建和配置launch.json文件
点击左边的run and debug按钮,再点击creater a launch.json file. 然后点击Add Configuration...按钮,选择Bash-Debug(hardcoded scrip)
修改一下launch.json文件,如下所示:
2.3 开始调试
打开 deploy.sh
文件,找到你希望调试的地方。
点击文件左侧行号旁边的空白处,添加断点。添加后会出现一个红色圆点,表示断点已成功设置。 我们在echo "正在启动 前端 服务..."前面打上断点。
-
进入调试面板,确保你已经选择了 Bash-Debug: deploy.sh 作为调试配置。
-
点击顶部的 开始调试(Run/Start Debugging) 按钮,或者使用快捷键
F5
启动调试。
VSCode 将启动 Bash 脚本的调试环境,并在你设置的断点处暂停脚本执行。
2.4 调试操作
当调试器在断点处暂停时,你可以进行以下操作:
-
继续执行: 按
F5
或点击顶部的继续按钮,脚本将继续执行到下一个断点或结束。 -
单步调试: 按
F10
(跳过函数调用)或F11
(进入函数)来逐行执行代码。 -
查看变量: 在调试面板的 Variables 区域,你可以看到当前的变量及其值。
-
查看输出: 在 Debug Console 中,你可以查看输出日志和脚本的执行情况。
-
评估表达式: 在 Debug Console 中,可以输入 Bash 命令,直接在当前调试环境中执行。