一.日志概述
日志作用
在项目开发或测试过程中,项目运行一旦出现问题,记录日志信息就显得尤为重要。主要通过日志来定位问题,就好比侦探人员要根据现场留下的线索来推断案情。
日志级别
级别 | 使用情况 |
DEBUG | 调试信息,也是最详细的日志信息 |
INFO | 证明事情按预期工作 |
WARNING | 表明发生了一些意外,或不久的将来会发生问题(如 磁盘满了),软件还是正常工作 |
ERROR | 由于更严重的问题,软件已经不能执行一些工作了 |
CRITICAL | 严重错误,表明软件已经不能继续运行了 |
- 日志级别排序为:CRITICAL > ERROR > WARNING > INFO > DEBUG
- 日志采集时设置低级别的日志,能采集到更高级别的日志,但不能采集到更低级别的日志
日志格式
- 时间+模块+行数+日志级别+日志具体信息
- 2020-09-30 10:45:05,119 logging_test.py[line:7] DEBUG this is debug message.
二.日志模块
描述
logging为python自带的日志模块,提供了通用的日志系统,包括不同的日志级别。logging可使用不同的方式记录日志,如使用文件,HTTP GET/POST,SMTP,Socket等方式记录。通常情况下使用文件记录日志信息,文件格式一般为.txt或.log文件。
导入模块
import logging
用法和参数
logging.basicConfig(**kwargs)
- filename:指定日志名称或完整路径,如:E:/app-ui-autotest/log/log.txt
- filemode:指定打开文件的模式(如果文件打开模式未指定,则默认为’a’)
- format:指定日志输出格式
- level:将根记录器级别设置为指定级别
import logging
logging.basicConfig(
level=logging.DEBUG
)
logging.debug('This is debug message') # DEBUG:root:This is debug message
logging.info('This is info message') # INFO:root:This is info message
logging.warning('This is warning message') # WARNING:root:This is warning message
logging.error('This is error message') # ERROR:root:This is error message
logging.critical('This is critical message') # CRITICAL:root:This is critical message