Python中处理unchecked未捕获异常实例
TalkIsCheap
和Java一样,python也提供了对于checkedexception和uncheckedexception.对于checkedexception,我们通常使用tryexcept可以显示解决,对于unchecked异常,其实也是提供回调或者是钩子来帮助我们处理的,我们可以在钩子里面记录崩溃栈追踪或者发送崩溃数据.
下面代码可以实现pythonuncheckedexception回调,并输出日志信息.
ShowMeTheCode
#!/usr/bin/envpython #coding=utf-8 importos,sys importlogging logger=logging.getLogger(__name__) handler=logging.StreamHandler(stream=sys.stdout) logger.addHandler(handler)
defhandle_exception(exc_type,exc_value,exc_traceback): ifissubclass(exc_type,KeyboardInterrupt): sys.__excepthook__(exc_type,exc_value,exc_traceback) return logger.error("Uncaughtexception",exc_info=(exc_type,exc_value,exc_traceback))
sys.excepthook=handle_exception if__name__=="__main__": raiseRuntimeError("TestunhandledException")
热门推荐
10 同事换单位简短祝福语
11 谢谢朋友的祝福语简短
12 立秋节气简短祝福语
13 新房祝福语简短10字
14 长辈新年祝福语大全简短
15 新年给大家简短祝福语
16 生日祝福语简短独特姑姑
17 芭比的婚礼祝福语简短
18 邀请新人祝福语简短英文