Debugging Application¶
Debug Mode¶
在项目开发过程中,推荐以debug模式启动项目:
$ bash bin/manage debug
在debug模式中会设置如下环境变量:
export GUNIFLASK_DEBUG=1
我们在代码中可以根据是否设置了 GUNIFLASK_DEBUG
环境变量来确定项目是否以debug模式启动。
Debug Settings¶
以debug模式启动项目时,会强制设定如下gunicorn配置项:
accesslog :
'-'
errorlog :
'-'
loglevel :
'debug'
reload :
True
reload_extra_files : conf 文件夹下的所有文件
workers:
1
daemon:
False
此时,我们在配置文件中对这些项的设定将不起作用。 特别的,对于reload_extra_files会合并默认配置和自定义的配置。
gunicorn配置项的详情可参考gunicorn文档: http://docs.gunicorn.org/en/stable/settings.html 。
Auto Reloading¶
以debug模式启动项目时,如果python模块中或 conf 文件夹中的代码发生了改变,app进程会自动重启并加载最新的代码。
Note
如果我们更改的是gunicorn配置项,则需要手动重启项目才会重新加载最新的gunicorn配置项。