文章目录
前言
在软件开发中,日志记录是一项重要的任务,它可以帮助我们跟踪应用程序的行为、故障排查和性能分析。为了简化日志记录的过程并提供更多的灵活性,下面介绍一个名为 LogUtil 的实用日志类。
该日志类能够将信息输出到终端,同时存储到指定的log文件中。
一、LogUtil 类提供了以下功能
LogUtil 类提供了以下功能:
初始化函数:构造函数接受参数 log_path(日志文件路径)、log_name(日志文件名)、clear_content(是否清空日志文件内容,默认为 False)、no_level(是否禁用日志级别,默认为 False)、no_time(是否禁用时间戳,默认为 False)和 cmd_print(是否在命令行打印日志,默认为 True)。
日志文件处理:在初始化时,LogUtil 类会检查并创建日志文件路径,如果指定了清空日志文件内容选项,将清空日志文件的内容。日志文件的路径和名称由 log_path 和 log_name 参数确定。
日志级别和格式:LogUtil 类使用 logging 模块创建一个日志记录器(logger),并设置日志级别为 DEBUG。根据传入的参数,可以选择是否在日志记录中包含日志级别和时间戳。日志格式根据设置的参数动态生成。
文件处理器:LogUtil 类使用 logging 模块的 FileHandler 创建一个文件处理器(file_handler),用于将日志记录写入日志文件。文件处理器的级别也设置为 DEBUG,并使用上述定义的日志格式进行格式化。
日志记录方法:LogUtil 类提供了四种日志记录方法:info、debug、error 和 warning。这些方法将消息记录到日志文件中,并根据 cmd_print 参数决定是否在命令行打印相应的日志消息。
二、代码
import os
import logging
class LogUtil:
def __init__(self, log_path, log_name, clear_content=False, no_level=False, no_time=False, cmd_print=True):
if not