python 日志模块-logging使用教程,将日志输出到控制台与文件中
代码:
import logging def log(): # 创建一个logger logger = logging.getLogger() # Log等级总开关,低于此级别的都不会记录 logger.setLevel(logging.DEBUG) # 自定义log目录 logfile = r'C:\Users\Administrator\Desktop\logs.log' # 创建一个handler,用于写入日志文件 filehandler=logging.FileHandler(filename=logfile,encoding='utf-8') # 用于写到file的等级开关 filehandler.setLevel(logging.DEBUG) # 再创建一个handler,用于输出到控制台 consolehandler=logging.StreamHandler() # 输出到console的log等级的开关 consolehandler.setLevel(logging.INFO) # 定义handler的输出格式 formatter = logging.Formatter('%(asctime)s - %(thread)s - %(levelname)s - %(message)s') filehandler.setFormatter(formatter) consolehandler.setFormatter(formatter) # 将logger添加到handler里面 logger.addHandler(filehandler) logger.addHandler(consolehandler) return logger
调用:
logger=log() logger.debug("this is debug") logger.info("this is info") logger.warning("this is warning") logger.error("this is error")
控制台定义的日记级别是INFO所以此处只显示INFO及以上日志

日志文件定义的是DEBUG,所以记录的是DEBUG及以上的日志


浙公网安备 33010602011771号