Python中处理unchecked未捕获异常实例


Posted in Python onJanuary 17, 2015

Talk Is Cheap

和Java一样,python也提供了对于checked exception和unchecked exception. 对于checked exception,我们通常使用try except可以显示解决,对于unchecked 异常,其实也是提供回调或者是钩子来帮助我们处理的,我们可以在钩子里面记录崩溃栈追踪或者发送崩溃数据.

下面代码可以实现python unchecked exception回调,并输出日志信息.

Show Me The Code

#!/usr/bin/env python

# coding=utf-8

import os, sys

import logging

logger = logging.getLogger(__name__)

handler = logging.StreamHandler(stream=sys.stdout)

logger.addHandler(handler)
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的日志管理模块输出格式化的异常信息.

Python 相关文章推荐
python中使用正则表达式的连接符示例代码
Oct 10 Python
对Python中range()函数和list的比较
Apr 19 Python
python3解析库BeautifulSoup4的安装配置与基本用法
Jun 26 Python
python pandas读取csv后,获取列标签的方法
Nov 12 Python
Python设计模式之解释器模式原理与用法实例分析
Jan 10 Python
Python制作微信好友背景墙教程(附完整代码)
Jul 17 Python
Python多重继承之菱形继承的实例详解
Feb 12 Python
python 基于卡方值分箱算法的实现示例
Jul 17 Python
8种常用的Python工具
Aug 05 Python
pandas处理csv文件的方法步骤
Oct 16 Python
Pycharm中使用git进行合作开发的教程详解
Nov 17 Python
python爬虫框架feapde的使用简介
Apr 20 Python
Python实现过滤单个Android程序日志脚本分享
Jan 16 #Python
Python中的对象,方法,类,实例,函数用法分析
Jan 15 #Python
Python转换HTML到Text纯文本的方法
Jan 15 #Python
python中os操作文件及文件路径实例汇总
Jan 15 #Python
python私有属性和方法实例分析
Jan 15 #Python
python实现堆栈与队列的方法
Jan 15 #Python
python多线程用法实例详解
Jan 15 #Python
You might like
php FPDF类库应用实现代码
2009/03/20 PHP
如何设置mysql允许外网访问
2013/06/04 PHP
判断php数组是否为索引数组的实现方法
2013/06/13 PHP
浅谈php fopen下载远程文件的函数
2016/11/18 PHP
PHP+fiddler抓包采集微信文章阅读数点赞数的思路详解
2019/12/20 PHP
jquery text()要注意啦
2009/10/30 Javascript
jQuery链式操作如何实现以及为什么要用链式操作
2013/01/17 Javascript
用js实现trim()的解决办法
2013/04/16 Javascript
Textarea根据内容自适应高度
2013/10/28 Javascript
浅谈JavaScript中的字符编码转换问题
2015/07/07 Javascript
js实现表单多按钮提交action的处理方法
2015/10/24 Javascript
让图片跳跃起来  javascript图片轮播特效
2016/02/16 Javascript
javascript中arguments,callee,caller详解
2016/03/16 Javascript
javascript弹出窗口中增加确定取消按钮
2016/06/24 Javascript
简单实现js间歇或无缝滚动效果
2016/06/29 Javascript
微信小程序 教程之引用
2016/10/18 Javascript
js实现消息滚动效果
2017/01/18 Javascript
详解前端路由实现与react-router使用姿势
2017/08/07 Javascript
详解js的作用域、预解析机制
2018/02/05 Javascript
vue脚手架搭建过程图解
2018/06/06 Javascript
Element输入框带历史查询记录的实现示例
2019/01/15 Javascript
elementUI多选框反选的实现代码
2019/04/03 Javascript
Layui实现带查询条件的分页
2019/07/27 Javascript
[39:21]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.24
2019/09/10 DOTA
Python打印斐波拉契数列实例
2015/07/07 Python
python使用xlrd和xlwt读写Excel文件的实例代码
2018/09/05 Python
Python使用matplotlib 画矩形的三种方式分析
2019/10/31 Python
使用Python开发个京东上抢口罩的小实例(仅作技术研究学习使用)
2020/03/10 Python
Python多线程正确用法实例解析
2020/05/30 Python
使用layui实现左侧菜单栏及动态操作tab项的方法
2020/11/10 HTML / CSS
荷兰睡眠专家:Beter Bed
2020/11/23 全球购物
组织关系转移介绍信
2014/01/16 职场文书
腾讯广告词
2014/03/19 职场文书
班主任对学生的评语
2014/04/26 职场文书
法制宣传标语
2014/06/23 职场文书
酒店周年庆活动方案
2014/08/21 职场文书