1.logging使用
logging的入门使用
代码如下:
import logging
"""输出日志到控制台和文件"""
def printlog(logFilename):
"""输出到文件的设置"""
logging.basicConfig(
level=logging.DEBUG, # 定义输出到文件的log级别,大于此级别的都被输出
format='%(asctime)s %(filename)s : %(levelname)s %(message)s', # 定义输出log的格式
datefmt='%Y-%m-%d %A %H:%M:%S', # 时间
filename='./log/'+logFilename, # log文件存储位置+文件名
filemode='a+') # 文件读写模式
"""输出到控制台的句柄"""
console = logging.StreamHandler()
console.setLevel(logging.DEBUG) # 定义输出到文件的log级别,大于此级别的都被输出
formatter = logging.Formatter('%(asctime)s %(filename)s : %(levelname)s %(message)s') # 定义输出log的格式
console.setFormatter(formatter)
logging.getLogger().addHandler(console)
if __name__ == '__main__':
printlog('1.log')
logging.info('1234')
logging.info('123')
logging.debug('ssad')
控制台输出结果:
2020-04-14 10:10:36,851 test.py : INFO 1234
2020-04-14 10:10:36,852 test.py : INFO 123
2020-04-14 10:10:36,852 test.py : DEBUG ssad
日志文件内容:
2020-04-14 Tuesday 10:13:07 test.py : INFO 1234
2020-04-14 Tuesday 10:13:07 test.py : INFO 123
2020-04-14 Tuesday 10:13:07 test.py : DEBUG ssad
2.logging日志记录level:
定义输出到文件的log级别时会用到logging的level:
级别 | 描述 |
---|---|
ALL | 最低等级的,用于打开所有日志记录。 |
DEBUG | 应用程序的调试信息 |
INFO | 应用程序的运行过程 |
WARN | 潜在错误 |
ERROR | 发生错误,但不影响系统的继续运行,用于一般异常处理 |
FATAL | 严重错误,导致程序退出 |
OFF | 最高等级的,用于关闭所有日志记录 |
3.Python文件读写模式:
在把日志写入文件时会用到文件读写模式:
读写模式 | 是否可读 | 是否可写 | 文件不存在时 |
---|---|---|---|
r | 是 | 否 | 报错 |
r+ | 是 | 是,覆盖写 | 报错 |
w | 否 | 是,清空原内容 | 创建新文件 |
w+ | 是 | 是,清空原内容 | 创建新文件 |
a | 否 | 是,追加写 | 创建新文件 |
a+ | 是 | 是,追加写 | 创建新文件 |
本文仅适用于着急使用logging的小白,比如我,欲详细学习了解可移步博文:[基础]-Python3 日志入门(最全)
感谢:
记录Python脚本的运行日志
Python-文件读写及修改