[python]python中,使用traceback处理异常信息
2019-07-19 21:26
543 查看
原文链接:http://www.cnblogs.com/CaDevil/p/6043135.html
近来编写一个程序,该程序可以在设定时间内,获取指定文件夹更新的文件夹和文件列表,并根据获取到的更新列表,做一些操作。由于所写程序是放在服务器上运行,为了保证程序在运行的过程中,不时不时跳出些异常信息出来吓其他用户,就在程序中添加了异常处理。将网上的资料整理下,试着将sys.exce_info()和traceback搭配一起使用。效果还算不错,以下信息是我当前处理异常的方式,其中type是异常的类型,value是出现异常的原因,traceback则是通过traceback追中到的异常信息,能够定位到造成异常的代码。
2016-11-07 22:07:56 ------------------------------- type: <type 'exceptions.TypeError'> value: string indices must be integers, not str traceback: [('文件名', 行号, '函数名', '出现异常的代码行')]
在try...except中,使用下述两行记录异常情况。针对出现异常之后如何程序如何继续之后的工作,则需要看具体要求。
tp,val,td = sys.exc_info() Log.logerexception(tp,val,td)
具体代码如下
1 import os 2 import time 3 import traceback 4 import sys 5 6 def logerexception(tp,val,td): 7 etype = str(tp) 8 evalue = str(val) 9 etb = traceback.extract_tb(td) 10 errormsg = "type: " + etype + "\n" 11 errormsg += "value: " + evalue + "\n" 12 errormsg += "traceback: " + str(etb) + "\n" 13 writetofile(errormsg) 14 15 def writetofile(errormsg): 16 logfilepath = os.path.abspath('.') + "/log" 17 if not os.path.exists(logfilepath): 18 os.mkdir(logfilepath) 19 20 logfile = time.strftime("%Y%m%d", time.localtime()) + ".txt" 21 fp = open(logfilepath + "/" + logfile,"a") 22 ISOTIMEFORMAT= "%Y-%m-%d %X" 23 happeningtime = time.strftime(ISOTIMEFORMAT, time.localtime()) 24 usermsg = "" 25 usermsg += happeningtime + "\n-------------------------------\n" 26 usermsg += errormsg 27 fp.write(usermsg + "\n") 28 fp.close()View Code
转载于:https://www.cnblogs.com/CaDevil/p/6043135.html
相关文章推荐
- Python使用traceback.print_exc()来代替print e 来输出详细的异常信息
- python使用traceback获取详细的异常信息
- Python语言学习讲解七:使用traceback获取详细的异常信息
- python - 使用traceback获取详细的异常信息
- Python语言学习讲解七:使用traceback获取详细的异常信息
- traceback的使用--异常的获取与处理--Python笔记
- 飘逸的python - 使用traceback获取详细的异常信息
- python中使用traceback来追踪异常
- javaweb异常提示信息统一处理(使用springmvc,附源码)
- python异常处理之 traceback 解析示例
- javaweb异常提示信息统一处理(使用springmvc,附源码)
- 未经处理的异常在 System.Data.dll 中发生。其它信息:在应使用条件的上下文(在 '***' 附近)中指定了非布尔类型的表达式。
- python中异常处理--raise的使用
- python中异常处理--raise的使用
- python2.7图像处理相关模块安装使用异常
- python错误处理记录完整的异常堆栈信息
- python中异常处理--raise的使用
- Python中使用logging和traceback模块记录日志和跟踪异常
- 使用 traceback 获取详细的异常信息
- PHP 错误与异常 笔记与总结(15 )使用观察者模式处理异常信息