【发布时间】:2013-08-25 10:18:54
【问题描述】:
当我尝试在 uWSGI 下使用 python pdb 调试器时,执行不会在断点处停止,它只是返回 trackback。
代码如下:
def application(env, start_response):
import pdb; pdb.set_trace()
start_response('200 OK', [('Content-Type','text/html')])
return "Hello World"
这就是我运行它的方式:
uwsgi --http 127.0.0.1:7777 --wsgi-file uwsgi_test.py
这就是我得到的:
/home/andrey/Development/ttt/uwsgi_test.py(3)application()
-> start_response('200 OK', [('Content-Type','text/html')])
(Pdb)
Traceback (most recent call last):
File "uwsgi_test.py", line 3, in application
start_response('200 OK', [('Content-Type','text/html')])
File "uwsgi_test.py", line 3, in application
start_response('200 OK', [('Content-Type','text/html')])
File "/usr/lib/python2.7/bdb.py", line 48, in trace_dispatch
return self.dispatch_line(frame)
File "/usr/lib/python2.7/bdb.py", line 67, in dispatch_line
if self.quitting: raise BdbQuit
bdb.BdbQuit
[pid: 11421|app: 0|req: 1/1] 127.0.0.1 () {32 vars in 366 bytes} [Sun Aug 25 13:12:06 2013] GET / => generated 0 bytes in 63 msecs (HTTP/1.1 500) 0 headers in 0 bytes (0 switches on core 0)
【问题讨论】:
-
您是否尝试过以不同的方式调试它(即,而不是使用
set_trace()手动插入断点)? -
我在简单的文本编辑器中开发它,没有任何 IDE。所以我知道的唯一选择是断点。
-
查看这篇文章:stackoverflow.com/questions/6980749/… 除了一个好的 IDE 真的可以让你的生活变得更轻松(并有助于提高生产力等)。