2017-03-07 69 views
2

我试图用pdb调试python hug API。用pdb调试python hug api

经常拥抱API是开始:

python -m pdb api.py

api.py包含拥抱路线,指令等api.pyhug -f api.py

可以使用通过python解释启动命令行PDB但是需要运行hug -f api.py,不接受-m pdb。例如:hug -m pdb -f api.py不起作用。

我也尝试创建一个debug.py文件,并将其导入api.py并开始调试。但它不会在api.py中注册路线。

import pdb 
from api import * 

@hug.startup() 
def startup(args): 
    """Starts api and debugging""" 
    pdb.set_trace() 

拥抱服务器启动正常,但没有任何航线api.py定义。

目前我不得不把pdb.set_trace()直接放入api.py的其中一条路线。这工作但是很乏味。理想情况下,应该有一种方法来启动api.pyhugpdb调试并动态设置断点而不重新启动hug

回答

0

发生这种情况是因为自动重新加载器无法使用调试器进行处理。

启动应用程序时使用--manual_reload选项。

关于这个问题的更多信息here