我尝试在Python 2.5中记录异常,但我不能这样做.所有格式化功能都不是我想要的.
我想出了这个:
def logexception(type, value, traceback):
print traceback.format_exception(type, value, traceback)
sys.excepthook = logexception
Run Code Online (Sandbox Code Playgroud)
但是在调用时它会因为参数错误而失败,尽管根据文档它应该有效.任何人都知道这个问题是什么或有其他插入式解决方案?
为什么该traceback
参数有一个format_exception
方法就像跟踪模块中的函数一样,它的名称是篡夺的,如果有一个方法,为什么该方法需要调用它的同一个对象作为最后一个参数传入?
我怀疑你只是想给第三个参数一个不同的名字,以免隐藏回溯模块,说:
import sys
import traceback
def logexception(type, value, tb):
print traceback.format_exception(type, value, tb)
sys.excepthook = logexception
Run Code Online (Sandbox Code Playgroud)
而事情应该会好得多.
归档时间: |
|
查看次数: |
3322 次 |
最近记录: |