我开发了一个web.py应用程序并在独立模式下测试了很多(从命令行运行myapp.py),并且它的stdout输出对于调试非常有用。现在我在Apache / mod_wsgi下运行它,很多东西都不起作用。例如,我以前工作的基本身份验证方案总是拒绝它给出的用户名/密码。我需要的第一件事是能够查看我曾经拥有的调试消息。但是脚本的输出无处可寻。
如何再次进行“调试打印”?
我不想在我的应用程序中询问具体问题,直到我完成了那么多。
答案 0 :(得分:1)
>>> class STDOUT(object):
def __init__(self, next):
self.next = next
self.file = open('stdout.txt', 'w')
def write(self, thing):
self.file.write(thing)
l.append(thing)
self.next.write(thing)
>>> import sys
>>> s = STDOUT(sys.stdout)
>>> sys.stdout = s
>>> l = []
>>> print 4
4
>>> l
['4', '\n']