> 文章列表 > vscode debug Attach mode

vscode debug Attach mode

vscode debug Attach mode

  • Python Debug Mode: 常规debug。针对*.py python脚本启动的场景。

在使用vscode debug时,如果调试python脚本其实很简单。

.vscode/launch.json文件。

{"version": "0.2.0","configurations": [{"name": "Python: Current File","type": "python","request": "launch","console": "integratedTerminal","justMyCode": false,"program": "main.py","args": ["--seed", "0", "--work-dir", "./work_dir"],}]
}
  • Python Attach Mode: 针对shell scrpt或者服务调试python脚本的场景。

比如使用torchpack启动的分布式python任务

需要用到vscode的Attach Mode

1. 配置launch.json

.vscode/launch.json文件

{"version": "0.2.0","configurations": [{"name": "Attach","type": "python","request": "attach","connect": {"host": "localhost","port": 5578}}]
}

2. 在python代码中加入debugpy代码段

import debugpy
debugpy.listen(5678)
print("Wait for Debugger...")
debugpy.wait_for_client()
print("Debugger Attached")# main

3. 在vscode代码中加入断点breakpoint

4. 在terminal中跑分布式任务

torchpack dist-run -np 1 python main.py

5. 在vscode中点击debug按钮,可以单步了。