【AI大模型应用开发】【项目实战】15.RAG智慧问答项目-(三)基于MySql库的问答系统(FQA模块)之Python日志记录Redis数据库简介与使用
2026/7/8 7:42:07
网站开发
(一).Python日志记录(Logging)简介与应用目标理解日志记录的作用及其在程序开发中的重要性掌握Pythonlogging模块的基本用法学会通过示例配置日志级别、格式,并将日志存储到文件中在工程化项目中应用日志记录,追踪程序运行状态一、日志记录概述1.概述日志(Logging)是程序运行时记录关键信息的一种方式,例如操作成功、错误发生或调试信息。它在开发和维护中非常重要,因为:调试:帮助找到代码中的问题监控:记录程序的运行状态审计:追踪用户或系统的行为publiclog日志:后端产生的有价值,但是价值没有特别高的数据(没必要存到mysql),会被大数据采集到大数据的数据仓库里面Python的logging模块是一个内置工具,提供灵活的日志记录功能,比简单的print语句更强大2.核心概念(1).日志级别:表示日志的重要性,常见级别从低到高:DEBUG:调试信息(最低),eg:某个方法的入参xxxx;进入了某个分支xxxxxINFO:一般信息,eg:mysql服务启动成功;用户调用了xx某功能,参数:xxxxWARNING:警告,可能有问题, eg:某个api将在xxx版本废除ERROR:错误,已影响程序, eg:redis连接失败;调用服务502;空指针NoneCRITICAL:严重错误(最高),eg:配置文件找不到.极少使用该级别日志(2).日志处理器(Handler):决定日志输出到哪里(如控制台或文件)(3).日志格式(Formatter):定义日志的显示样式(如时间、级别、消息)二、基础日志记录logger的结构:1.目标通过简单示例展示如何记录日志到控制台2.代码import logging # 配置基本的日志设置 logging.basicConfig(level=logging.INFO) # level:显示日志级别大于等于level的日志 # 获取日志记录器: 一般一个项目一个日志记录器的名称 logger = logging.getLogger("Example1") # 记录不同级别的日志 logger.debug("这是调试信息,通常用于开发") logger.info("程序运行正常") logger.warning("注意,可能有小问题") logger.error("发生错误") logger.critical("严重错误,程序可能崩溃")3.运行结果4.分析basicConfig(level=logging.INFO)设置最低记录级别为INFO,因此DEBUG信息未显示日志默认输出到控制台,格式为级别 名称: 消息三、自定义日志格式1.目标自定义日志输出格式,添加时间和级别2.代码import logging # 配置日志格式 logging.basicConfig( level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(name)s - %(module)s - %(lineno)d - %(message)s' ) # 获取日志记录器Example2 logger = logging.getLogger("EDU_RAG") # 记录日志 logger.debug("调试模式已开启") logger.info("正在处理数据") logger.error("数据处理失败")3.运行结果4.分析format参数使用占位符:%(asctime)s:记录时间%(levelname)s:日志级别%(message)s:日志消息级别设为DEBUG,所有日志都显示四、将日志存储到文件1.目标/