python-日志模块
1.日志的作用:
在软件或者系统发生错误时可以通过日志快速定位到错误,从而定位问题,解决问题。
2.日志的等级:
- DEBUG 最详细的日志信息,典型应用场景是 问题诊断
- INFO 信息详细程度仅次于DEBUG,通常只记录关键节点信息,用于确认一切都是按照我们预期的那样进行工作
- WARNING 当某些不期望的事情发生时记录的信息(如,磁盘可用空间较低),但是此时应用程序还是正常运行的
- ERROR 由于一个更严重的问题导致某些功能不能正常运行时记录的信息
- CRITICAL 当发生严重错误,导致应用程序不能继续运行时记录的信息
3.日志字段信息与日志格式
- 事件发生时间
- 事件发生位置
- 事件的严重程度--日志级别
- 事件内容
4.logging模块
logging模块提供的日志记录函数所使用的日志器设置的日志级别是WARNING
,因此只有WARNING
级别的日志记录以及大于它的ERROR
和CRITICAL
级别的日志记录被输出了,而小于它的DEBUG
和INFO
级别的日志记录被丢弃了。
>>>:logging.warning('warning bug')
输出:WARNING:root:warning bug
日志级别:日志器名称:日志内容
5. logging.basicConfig()函数
该方法用于为logging日志系统做一些基本配置
sys.stdout 标准输出
sys.stderr 标准错误
filename、stream和handlers这三个配置项只能有一个存在,不能同时出现2个或3个,否则会引发ValueError异常。
import logging # logging.basicConfig(level=logging.DEBUG) #指定日志级别 # LOG_FORMAT = "%(asctime)s - %(levelname)s - %(message)s" # 指定发生时间,级别名字,日志信息 # logging.basicConfig(filename='log.log',level=logging.DEBUG,format=LOG_FORMAT) LOG_FORMAT = "%(asctime)s - %(levelname)s - %(message)s" DATE_FORMAT = "%Y/%m/%d %H:%M:%S %p" logging.basicConfig(filename='log.log', level=logging.DEBUG, format=LOG_FORMAT, datefmt=DATE_FORMAT) logging.debug('debug log') logging.warning('warning bug')
07/23/2018 21:51:32 PM - DEBUG - debug log 07/23/2018 21:51:32 PM - WARNING - warning bug 2018/07/23 21:52:54 PM - DEBUG - debug log 2018/07/23 21:52:54 PM - WARNING - warning bug