2

我似乎只能通过 stderr 写入 Apache 错误日志。任何人都知道我可以从我的 python web 项目中使用的更结构化的日志架构,比如 commons?

4

4 回答 4

4

在过去的四年里,这种情况一定发生了变化。如果您遇到这个问题并想要这样做,那么您可以通过请求对象来完成,即

def handler(req) :
  req.log_error('Hello apache')
于 2013-02-07T13:39:14.667 回答
3

目前没有任何对 mod_python 日志记录到 Apache 的内置支持。如果你真的想在 Apache 日志中工作,你可以查看这个线程(确保你获得了发布代码的第二个版本,而不是第一个):

如果您只是想使用更结构化的日志记录系统,Blair 提到的 Python 标准日志记录模块功能非常完整。除了 Blair 链接的 Python.org 文档之外,以下是 onLamp 模块功能的更深入了解:

对于快速示例用法:

于 2008-10-04T18:16:55.633 回答
2

我过去曾在(非网络)项目中使用过内置的Python 日志记录模块,并取得了成功——它也应该在网络托管的环境中工作。

于 2008-10-04T13:54:49.373 回答
0

我同意 Blair Conrad 关于 Python 日志记录模块的帖子。然而,标准日志处理程序有时会丢弃消息。值得使用 logging 模块的 SocketHandler 并构建一个接收器来监听消息并将它们写入文件。

这是我的:示例 SocketHandler 接收器

于 2008-10-08T16:19:16.960 回答