0
我正在为graphite-api
开发cassandra
存储查找器。 graphite-api
通过pip安装,并通过gunicorn
运行,所以我不能只用调试器调用脚本,但要使用交互式调试。如何调试在Web应用程序中自动调用的Python脚本?
当我在存储器中导入pdb
并设置断点时,代码将暂停,但是现在如何连接到脚本中无头运行的pdb? 或者是我的方法来解决这个调试问题是错误的,这必须以完全其他方式完成?
rpdb正是我正在寻找的。我查看了几个python远程调试页面,但没有一个似乎给我一个有用的远程调试解决方案。 rpdb在运行到rpdb.set_trace()时暂停整个gunicorn工作进程,然后我可以通过netcat进行连接并开始调试。对于任何其他搜索此用户的用户有用的信息,你必须启动一个非常高的值为--timeout参数的gunicorn,因为它会在30secods之后杀死悬挂的工作进程 – fxk8y