我正在尝试记录导致我的进程关闭的错误,但traceback.print_tb似乎traceback.print_exc没有意识到引发的错误是什么。
换句话说,为什么下面会打印 'None\n' 而不是 'DivisionByZero .. etc ..'?(编辑:..以及如何从 exit_fn 中访问引发/处理的错误?)
import traceback, atexit
def exit_fn():
print 'exiting'
if traceback.format_exc().startswith('None'):
print 'why is this None?'
atexit.register(exit_fn)
x = 1/0