我开始在Apache/mod_wsgi上运行的服务器上开发Django代码。在mod_wsgi上调试Django代码(如何访问['wsgi.errors'])
我看明白了一些事情:
通常被用来在 服务器上运行 调试应用程序有什么技巧?
具体来说,我正在尝试仅使用 “打印”调试。但我 似乎无法使打印语句 工作。我打印到stderr,但是 我不确定我应该看哪个日志文件 。根据 this,我应该使用
environ['wsgi.errors']
,但我怎么做 我从我的Django代码访问?
谢谢!
编辑:顺便说一句,添加行print >> sys.stderr, 'message ...'
不仅似乎不打印到任何日志文件,它会导致我的应用程序的一部分不加载。
我想出了如何访问environ。简单地做到这一点:`request.META ['wsgi.errors']。write(“ello world”)`。 – 2011-01-27 08:51:36
在显示时使用'print',被引导到stderr应该可以正常工作。它转到哪个Apache错误日志文件取决于您使用的是嵌入模式还是守护进程模式,以及您是否在VirtualHost内部使用ErrorLog指令。如果它没有出现在日志中,那么你对WSGI脚本文件中的sys.stdout/sys.stderr做了哪些调整(如果有的话)。 – 2011-01-27 08:53:24