3

有时我需要检查 python web 应用程序的输出。

如果我直接执行应用程序,我可以从终端屏幕看到它。

但我不知道如何检查mod_wsgi. 它会出现在单独的日志中apache吗?还是我需要添加一些代码logging

4

3 回答 3

2

而不是print "message",您可以使用sys.stderr.write("message")

使用StreamHandler登录到 stderr :

import logging
handler = logging.StreamHandler(stream=sys.stderr)
log = logging.getLogger(__name__)
log.setLevel(logging.INFO)
log.addHandler(handler)

log.info("Message")
于 2013-01-04T06:32:59.567 回答
1

wsgilog很简单,可以自动为您将标准输出重定向到日志文件。微风设置,我没有任何真正的问题。

于 2013-01-04T06:07:40.413 回答
0

任何声称可移植的 WSGI 应用程序组件都不应该写入标准输出。也就是说,应用程序不应该在没有将输出定向到某个备用流的情况下使用 Python 打印语句。应用程序也不应该直接写入 sys.stdout。(ModWSGI 维基

所以不要...相反,我建议使用像sentry这样的日志聚合工具。它在开发时很有用,并且在生产中是必备的。

于 2013-01-04T05:44:16.820 回答