debug, 调试时用
info, 输出普通的信息(程序按照预期执行)
warning, 警告信息
error, 程序出现的一些错误
critical,程序无法执行的错误。
设置级别为info时,只会输出info及更高的级别的信息。
import logging
logging.basicConfig(level=logging.INFO,
format="%(asctime)s-%(levelname)s-%(message)s-%(name)s-%(filename)s-%(pathname)s-%(funcName)s-%(lineno)s")
# 输出信息到控制台
logging.info("测试logging...")# 在debug时,设置为debug级别,以下信息全部输出
logging.debug("这里是正常执行的...")
logging.info("测试logging...")
logging.warning("警告信息...")
logging.error("错误信息...")
logging.critical("严重错误...")
2. 输出日志到文件中
# 配置只能写一行,多行则第一行生效
logging.basicConfig(level=logging.INFO, format="%(asctime)s %(message)s", filename="./test.log", filemode="a")# 追加到文件中
logging.info("输出日志到文件中")
步骤:
案例:
# 实例化日志记录器
myLogger = logging.Logger("laufing") # give a name
# myLogger2 = logging.getLogger(__name__)# 实例化日志处理器
handler = logging.FileHandler("test.log", mode="a", encoding="gbk") # output to test.log windows use gbk
# handler2 = logging.StreamHandler() # output to console# 日志处理器 添加 级别、格式
handler.setLevel(logging.INFO)
handler.setFormatter(logging.Formatter("%(asctime)s %(message)s"))# 日志记录器 添加处理器
myLogger.addHandler(handler)# 输出信息
myLogger.info("自定义日志记录器...")
一个日志记录器还可以添加多个日志处理器