简单运用logging模块定位代码错误
程序员文章站
2022-07-03 19:29:17
近年来不管是开发还是测试,企业对其的代码能力的要求在逐渐提高,编写与调试是必不可少的工作内容。本文针对如何运用python的logging模块定位错误坐标做出演示,希望能够帮助到大家。非常简单清晰的两个例子。案例一:import logginglogging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s:...
近年来不管是开发还是测试,企业对其的代码能力的要求在逐渐提高,编写与调试是必不可少的工作内容。本文针对如何运用python的logging模块定位错误坐标做出演示,希望能够帮助到大家。
非常简单清晰的两个例子。
案例一:
import logging
logging.basicConfig(level=logging.DEBUG,
format='%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s',
filename='log.txt', filemode='w')
'''
%(asctime)s是创建日志记录时的时间
%(filename)s是报错的程序名
%(lineno)d是出错坐标
%(levelname)s是错误级别
%(message)s是日志内容
filename='log.txt',在当前目录下生成log.txt记录日志内容
'''
def logging_test():
logging.info('实验开始')
try:
assert 1 == 1 #因为是正确的,不报错,直接跳入else
except Exception as e:
logging.info('这个地方有错误')
else:
logging.info('正确')
logging.info('实验结束')
if __name__ == '__main__':
logging_test()
日志内容:
2020-12-30 20:59:53,641 - main.py[line:8] - INFO: 实验开始
2020-12-30 20:59:53,641 - main.py[line:14] - INFO: 正确
2020-12-30 20:59:53,641 - main.py[line:15] - INFO: 实验结束
案例二:
import logging
logging.basicConfig(level=logging.DEBUG,
format='%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s',
filename='log.txt', filemode='w')
def logging_test():
logging.info('实验开始')
try:
assert 1 == 2
except:
logging.info('这个地方有错误')
else:
logging.info('正确')
logging.info('实验结束')
if __name__ == '__main__':
logging_test()
日志内容:
2020-12-30 21:03:42,492 - main.py[line:8] - INFO: 实验开始
2020-12-30 21:03:42,492 - main.py[line:12] - INFO: 这个地方有错误
2020-12-30 21:03:42,493 - main.py[line:15] - INFO: 实验结束
案例二的错误日志中可以清晰地看到,mian.py中第12行有错误,可以直接去该坐标附近排查问题,节约调试时间。当然这种方法是建立在你大约知道错误出在哪块区域,但又不确定,那么就可以用此方法进行地毯式排查。
又是快乐的一天!希望大家也能够做一个快乐的打工人。
本文地址:https://blog.csdn.net/sjx1111111/article/details/111998083
上一篇: shiro授权的实现原理
下一篇: 机械键盘怎么选 机械键盘挑选技巧分享