如何使用在gunicorn上运行的pycharm 2.x调试 flask.app

vuktfyat  于 2023-08-05  发布在  PyCharm
关注(0)|答案(5)|浏览(126)

我正在开发一个flask.app使用Web Socket功能的www.example.com,并安装了flask-socket来提供该功能。所以flask-socket开发者推荐gunicorn作为web服务器。我现在的问题是如何将pycharm的remove调试器与gunicorn连接,以拦截带有断点的执行。

mwyxok5s

mwyxok5s1#

第一个月
这里有一个选项可以启用“gevent兼容调试”。
然后,进入调试器设置(快捷方式是通过工具栏,单击播放/调试图标附近的下拉列表,然后选择“编辑配置”)
将“脚本”设置为您的virtualenv的gunicorn安装,类似于:
/Users/iandouglas/.virtualenvs/defaultenv/bin/gunicorn
将“脚本参数”设置为类似-b 192.168.1.1:9000 app:yourappname的值(假设您的主要启动脚本名为app.py,并且您将其引用为'yourappname')。
“工作目录”将自动设置,否则将其设置为代码所在的位置:/Users/iandouglas/PycharmProjects/MyExampleApp
我有一个单独的配置文件用于我的gunicorn设置,它指定了一个主机/端口,但我仍然必须指定-b 0.0.0.0:5001参数来强制gunicorn绑定到我机器上端口5001上的所有IP。
附言
一个重要的步骤是添加这个envvar,如here所指出的

PYDEVD_USE_CYTHON=NO

字符串

6vl6ewon

6vl6ewon2#

我的PyCharm 2018.1.3 Professional案例:
1.转到运行/调试配置creating-and-editing-run-debug-configurations
1.选择新的“Python”配置
1.脚本路径:你的路径到/venv/bin/gunicorn
1.参数(对于我的情况):第一个月

  1. Python解释器:你的venv python版本
    1.工作目录:项目路径
    1.保存并按DEBUG(Shift+F9)
    1.开心点!
e4yzc0pl

e4yzc0pl3#

我试图在Pycharm 2020.2.1上进行调试,即使启用了Gevent兼容调试,断点也无法正确工作。原来我不得不通过设置环境变量here来禁用Cython的运行配置,以使其工作。

PYDEVD_USE_CYTHON=NO

字符串

dldeef67

dldeef674#

接受的解决方案适用于我,但我面临着myproject模块未找到错误,这是通过使用解决的:
第一个月
Pycharm
代替了
gunicorn --bind 0.0.0.0:8000 'myproject.wsgi:application'
Pycharm

q43xntqr

q43xntqr5#

  • 编辑你的flask启动python文件
$ vim manage.py

字符串

  • 删除调试选项设置
from web import app
import sys

if __name__ == '__main__':
    # app.run(host='0.0.0.0', port=app.config["PORT"], debug=app.config["DEBUG"])
    app.run(host='0.0.0.0', port=9998, debug=False)

相关问题