我试图在VS代码上创建一个启动配置,以便调试Redis队列后台工作人员。
现有的launch.js包含:
{
"version": "0.2.0",
"configurations": [
{
"name": "API",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/src/app/run.py",
"console": "integratedTerminal",
"cwd": "${workspaceFolder}/src/app"
}
]
}从普通bash终端启动Redis队列工作者的命令如下:
cd /home/user/api/src/app
source env/bin/activate
rq worker --url redis://localhost:2179什么是正确的launch.js配置,以便我可以使用VS代码启动和调试Redis队列工作人员?
到目前为止,我的结论是:
{
"name": "Redis Queue Worker",
"type": "python",
"request": "launch",
"program": "rq",
"console": "integratedTerminal",
"cwd": "${workspaceFolder}/src/app",
"args": ["worker", "--url", "redis://localhost:2179"]
}这给了我以下错误:
FileNotFoundError: [Errno 2] No such file or directory: '/home/user/api/src/app/rq'发布于 2022-03-08 17:58:25
公认的答案是误导性的。对于使用vscode调试烧瓶的rq,我也遇到了类似的问题。除了这个被接受的答案之外,我没有在网上找到任何关于这个问题的答案。我想出的解决方案非常简单,一旦您了解了launch.json
{
"configurations": [
{
"name": "rq worker",
"request": "launch",
"type": "python",
"program": "${workspaceFolder}/.venv/bin/rq",
"args": [
"worker",
"--max-jobs=1"
],
"console": "integratedTerminal",
"cwd": "${workspaceFolder}/src",
},
],
"version": "0.2.0"
}它只使用vscode的集成终端,我将其配置为源虚拟env (.venv),然后启动rq (提供完整的路径)。YOu可以使用“哪个rq”来查找您的路径),在args中使用"worker jobs=1“来只对一个任务进行队列化!
多亏了这个烧瓶,我的断点在我的烧瓶代码的异步部分上停止了。
https://stackoverflow.com/questions/70326556
复制相似问题