1. 日志的相关概念:
(1)日志的作用:
a. 开发人员进行程序调试
b. 开发人员定位程序故障的位置
c. 运维人员观察应用运行是否正常
(2)日志的等级
a. DEBUG 最详细的日志,用于问题诊断
b. INFO 详细程度仅次于DEBUG,用于只记录关键信息,观察程序是否按照我们预期的情况运行, 用户调试
c. NOTICE
d. WARNING 程序能运行,但是可能出现不稳定的情况
e. ERROR 严重问题导致某些功能无法正常工作
f. CRITICAL 非常严重的问题,导致程序无法运行
g. ALERT
h. EMERGENCY
(3)日志字段及格式:
a. 时间
b. 位置
c. 日志级别
d. 日志内容
(4)日志功能实现
例如:log4j, log4php, logging
2. logger使用日志核心函数记录日志
(1)最简单的日志输出
import logging logging.debug("This is a debug log.") logging.info("This is a info log.") logging.warning("This is a warning log.") logging.error("This is a error log.") logging.critical("This is a critical log.")
(2)对日志进行配置,修改配置信息
配置参数如下:
filename 设置了此项则日志将输出到文件中保存
filemode 设置日志文件的打开方式,只有设置了filename此项才有效
format 设置日志格式
dateformat 设置时间格式
level 设置日志级别,则低于此级别的日志不再输出或保存
stream 设置日志输出目标, 例如sys.stdout, sys.stderr
handlers 设置handlers可迭代对象,注意:filename和stream和handlers只能有一个出现
logging.basicConfig(**kwargs)
3. logging模块4大核心组件
Logger 日志器
Handler 处理器
Filter 过滤器
Formatter 格式器
说明:一个Logger可以设置多个Handler进行处理日志,一个Handler可以设置多个Filter和Formatter
参考:https://www.cnblogs.com/yyds/p/6901864.html