Python logging日志模块:分级日志、文件输出、完整工程配置

发布时间:2026/6/24 5:22:44
Python logging日志模块:分级日志、文件输出、完整工程配置
博客导语print 只能临时调试线上项目绝对禁止用print。logging 是Python官方日志模块支持日志分级、时间记录、文件持久化、按大小/时间切割是排查BUG、记录运行状态、线上运维的核心工具。一、日志五大级别优先级递增DEBUG调试信息开发阶段使用INFO正常运行信息WARNING警告信息不影响程序运行ERROR错误信息功能异常CRITICAL致命错误程序终止二、基础日志输出import logging # 设置全局日志级别 logging.basicConfig(levellogging.INFO) logging.debug(调试信息) logging.info(正常信息) logging.warning(警告信息) logging.error(错误信息)三、工程级配置控制台文件双输出生产标配同时打印控制台、保存日志文件、带时间、行号、级别。import logging # 1. 创建日志对象 logger logging.getLogger() logger.setLevel(logging.DEBUG) # 2. 日志格式 formatter logging.Formatter(%(asctime)s - %(levelname)s - %(filename)s - %(lineno)d - %(message)s) # 3. 控制台输出 ch logging.StreamHandler() ch.setFormatter(formatter) # 4. 文件输出 fh logging.FileHandler(run.log, encodingutf-8) fh.setFormatter(formatter) # 5. 添加处理器 logger.addHandler(ch) logger.addHandler(fh) # 测试 logger.info(程序启动成功) logger.error(测试错误日志)四、日志轮转防止日志文件过大企业项目使用按时间切割日志自动归档、自动清理。from logging.handlers import TimedRotatingFileHandler五、使用规范开发调试用DEBUG线上环境用INFO级别所有异常捕获必须记录error日志禁止线上使用print输出