赞
踩
本文是本人以前的学习笔记,仅供参考
日志是一种可以追踪某些软件运行时所发生事件的方法。软件开发人员可以向他们的代码中调用日志记录相关的方法来表明发生了某些事情。一个事件可以用一个可包含可选变量数据的消息来描述。此外,事件也有重要性的概念,这个重要性也可以被称为严重性级别(level)。
可以快速的通过日志定位到问题的根源。可见,日志的重要性不可小觑。日志的作用可以简单总结为以下3点:
如果应用的日志信息足够详细和丰富,还可以用来做用户行为分析,如:分析用户的操作行为、类型洗好、地域分布以及其它更多的信息,由此可以实现改进业务、提高商业利益。
默认生成的root logger的level是logging.WARNING,低于该级别的就不输出了
开发应用程序或部署开发环境时,可以使用DEBUG或INFO级别的日志获取尽可能详细的日志信息来进行开发或部署调试;应用上线或部署生产环境时,应该使用WARNING或ERROR或CRITICAL级别的日志来降低机器的I/O压力和提高获取错误日志信息的效率。日志级别的指定通常都是在应用程序的配置文件中进行指定的。
- # 如果设置了日志级别为NOTSET,那么这里可以采取debug、info的级别的内容也可以显示在控制台上了
- l=logging.NOTSET
- logging.debug("this is debug info")
- logging.info("this is debug info")
- logging.warning("this is debug info")
- logging.error("this is debug info")
- logging.critical("this is debug")
- >>输出
- DEBUG:root:this is debug info
- INFO:root:this is debug info
- WARNING:root:this is debug info
- ERROR:root:this is debug info
- CRITICAL:root:this is debug info
- import logging # 引入logging模块
- logging.basicConfig(level=logging.NOTSET) # 设置日志级别
- logging.debug(u"如果设置了日志级别为NOTSET,那么这里可以采取debug、info的级别的内容也可以显示在控制台上了")
Logging.Formatter:这个类配置了日志的格式,在里面自定义设置日期和时间,输出日志的时候将会按照设置的格式显示内容。
Logging.Logger:Logger是Logging模块的主体,进行以下三项工作:
1. 为程序提供记录日志的接口
2. 判断日志所处级别,并判断是否要过滤
3. 根据其日志级别将该条日志分发给不同handler
Logger.setLevel() 设置日志级别
Logger.addHandler() 和 Logger.removeHandler() 添加和删除一个Handler
Logger.addFilter() 添加一个Filter,过滤作用
Logging.Handler:Handler基于日志级别对日志进行分发,如设置为WARNING级别的Handler只会处理WARNING及以上级别的日志。
常用函数有:
setLevel() 设置级别
setFormatter() 设置Formatter
- import logging # 引入logging模块
- logging.basicConfig(level=logging.DEBUG,
- format='%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。