博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python logging 模块
阅读量:6333 次
发布时间:2019-06-22

本文共 1691 字,大约阅读时间需要 5 分钟。

logging

日志是我们排查问题的关键利器,写好日志记录,当我们发生问题时,可以快速定位代码范围进行修改

logging将日志打印到屏幕,日志级别大小关系为:

CRITICAL > ERROR > WARNING > INFO > DEBUG > NOTSET,

当然也可以自己定义日志级别

DEBUG:详细的信息,通常只出现在诊断问题上。INFO:确认一切按预期运行WARNING:一个警告,可能会有一些意想不到的事情发生了,或表明一些问题在不久的将来(例如。磁盘空间低”)。这个软件还能按预期工作ERROR:个更严重的问题,软件没能执行一些功能CRITICAL:一个严重的错误,这表明程序本身可能无法继续运行

默认logging默认的日志级别是info

日志的输出格式及方式 logging.basicConfig

import logginglogging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',datefmt=' %Y/%m/%d %H:%M:%S', filename='myapp.log', filemode='w')logger = logging.getLogger(__name__)logging.debug('This is debug message')logging.info('This is info message')logging.warning('This is warning message')

运行结果:

在当前文件新增了一个myapp.log文件,文件的内容如下:2017/11/10 12:43:26 logging.py[line:10] DEBUG This is debug message2017/11/10 12:43:26 logging.py[line:11] INFO This is info message2017/11/10 12:43:26 logging.py[line:12] WARNING This is warning message
logging.basicConfig函数参数
level: 设置日志级别,默认为logging.WARNINGfilename: 指定日志文件名。filemode: 和file函数意义相同,指定日志文件的打开模式,'w'或'a'format: 指定输出的格式和内容,format可以输出很多有用信息,如上例所示:%(levelname)s: 打印日志级别名称%(filename)s: 打印当前执行程序名%(funcName)s: 打印日志的当前函数%(lineno)d: 打印日志的当前行号%(asctime)s: 打印日志的时间%(thread)d: 打印线程ID%(process)d: 打印进程ID%(message)s: 打印日志信息datefmt: 指定时间格式,同time.strftime()stream: 指定将日志的输出流,可以指定输出到sys.stderr,sys.stdout或者文件,默认输出到sys.stderr,当stream和filename同时指定时,stream被忽略

logging.getLogger([name]):创建一个日志对象

返回一个logger实例,如果没有指定name,返回root

logger。只要name相同,返回的logger实例都是同一个而且只有一个,即name和logger实例是一一对应的。这意味着,无需把logger实例在各个模块中传递。只要知道name,就能得到同一个logger实例。

logging.getLogger(name) 在上述实例中__name__就指的是__main__。

转载于:https://www.cnblogs.com/lijunjiang2015/p/7814028.html

你可能感兴趣的文章
Android 中 View 炸裂特效的实现分析 <IT蓝豹>
查看>>
将三个数由大到小输出
查看>>
ES6 结构和扩展运算符
查看>>
王利阳:电商大促 决战6.18
查看>>
kafka消息传输的事务定义
查看>>
JAVA 后台数据校验
查看>>
实现LNMMP
查看>>
mysql的pid文件出现问题
查看>>
计算rem单位
查看>>
第七章 大网高级 ASA
查看>>
rsync+inotify触发式远程同步
查看>>
优秀设计师应当知道的几大UI设计原则(一)
查看>>
mongodb高级查询
查看>>
struts2.1 struts.devMode BUG解决方案
查看>>
日本法院裁定三星诉苹果专利侵权案败诉
查看>>
Windows Server 2012R2 桌面体验问题直通车
查看>>
桌面支持--复印证件技巧
查看>>
Silverlight实用窍门系列:50.InkPresenter涂鸦板的基本使用,以及将效果保存为Png图片【附带源码实例】...
查看>>
MySQL数据库经典书籍share
查看>>
给出三个数,要求输出 最大的一个
查看>>