【发布时间】:2013-08-16 06:12:53
【问题描述】:
我希望在我的 TB 应用程序中将所有异常记录到日志文件中。因此,我尝试像往常一样使用自定义 sys.excepthook。但是仍然会引发每个异常并且没有记录任何内容。这是我的代码:
class RootController(BaseController):
secc = SecureController()
error = ErrorController()
def __init__(self):
self.installExceptHook()
super(RootController, self).__init__()
def installExceptHook(self):
def exceptHook(type, value, tb):
logger = logging.getLogger('app')
logger.critical(''.join(traceback.format_exception(type, value, tb)))
sys.excepthook = exceptHook
当我在 index 方法中引发 ValueError 时:
@expose('app.templates.index')
def index(self, **kwargs):
raise ValueError
return dict(page = 'index')
我的浏览器中仍然出现 WebError Traceback 页面,但没有任何记录。
你知道我做错了什么吗?有什么想法吗?
【问题讨论】:
标签: python logging turbogears