封神旧事,海廷加,丁 香 五 月 大色窝
talk is cheap
和java一样,python也提供了对于checked exception和unchecked exception. 对于checked exception,我们通常使用try except可以显示解决,对于unchecked 异常,其实也是提供回调或者是钩子来帮助我们处理的,我们可以在钩子里面记录崩溃栈追踪或者发送崩溃数据.
下面代码可以实现python unchecked exception回调,并输出日志信息.
show me the code
def handle_exception(exc_type, exc_value, exc_traceback):
if issubclass(exc_type, keyboardinterrupt):
sys.__excepthook__(exc_type, exc_value, exc_traceback)
return
logger.error("uncaught exception", exc_info=(exc_type, exc_value, exc_traceback))
sys.excepthook = handle_exception
if __name__ == "__main__":
raise runtimeerror("test unhandled exception")
相关解释
1.上述忽略处理终端下键盘按ctrl + c 终止异常.
2.上述使用python的日志管理模块输出格式化的异常信息.
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
新手学习Python2和Python3中print不同的用法
Python基于os.environ从windows获取环境变量
网友评论