Python日志库logging的使用 发表于 2024-12-17 | 分类于 python Python日志库logging的使用 只写入文件12345678910111213141516import logginglog_directory = "logs"if not os.path.exists(log_directory): os.makedirs(log_directory)# 生成日志文件名(使用当前时间戳)current_time = datetime.now().strftime("%Y%m%d_%H%M%S")log_filename = os.path.join(log_directory, f"scan_log_{current_time}.log")# 配置日志logging.basicConfig( level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s', filename=log_filename, filemode='w') 使用 1logging.info("开始扫描过程") 写入控制台和文件utils/zlog.py 12345678910111213141516171819202122232425262728import loggingimport osfrom datetime import datetime# 配置 logginglogger = logging.getLogger('my_app_logger')logger.setLevel(logging.DEBUG) # 设置日志级别# 创建一个 formatter,格式化日志信息formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')# 创建一个控制台 handler,输出日志到控制台console_handler = logging.StreamHandler()console_handler.setLevel(logging.DEBUG) # 设置控制台 handler 的日志级别console_handler.setFormatter(formatter)# 将 handler 添加到 loggerlogger.addHandler(console_handler)# 创建一个文件 handler,写入日志到指定文件log_directory = "logs"if not os.path.exists(log_directory): os.makedirs(log_directory)current_time = datetime.now().strftime("%Y%m%d_%H%M%S")log_filename = os.path.join(log_directory, f"log_{current_time}.log")file_handler = logging.FileHandler(log_filename, encoding='utf-8')file_handler.setLevel(logging.DEBUG) # 设置文件 handler 的日志级别file_handler.setFormatter(formatter)# 将 handler 添加到 loggerlogger.addHandler(file_handler) 使用 12345from utils.zlog import loggerlogger.info("info")logger.warning("warning")logger.error("error")