Pylons - 在重定向到文档之前捕获错误/记录错误

时间:2010-08-20 23:30:13

标签: python logging pylons

我想在重定向到我的自定义错误消息(/ error / document)之前在pylons应用中记录404和500错误。

我的问题是,由于Pylons进行重定向,我无法确定错误控制器内发生错误的页面。因此,如果没有为paster.log构建解析器,我不知道有选择地仅记录我想要的几个相关数据的好方法:url,引用页面和堆栈跟踪。

理想情况下,我想访问发生错误的页面,引用页面以及完整堆栈跟踪,并将其放入couchdb以获取快速简便的报告。

2 个答案:

答案 0 :(得分:1)

对于自定义错误处理,我认为您应该查看ErrorHandler和StatusCodeRedirect(来自pylons.middleware),并根据它们创建自己的类?

答案 1 :(得分:0)

您可以从当前请求中获取原始Pylons请求和响应对象。从那里,您可以获取所需的数据:

request = self._py_object.request.environ['pylons.original_request']
response = self._py_object.request.environ['pylons.original_response']
url = request.environ.get("PATH_INFO")

我不确定如何获取引用页面或您想要的堆栈跟踪,但我愿意打赌它在某处。