python log配置

def log_record(log_filename):
    """
        日志模块配置
        CRITICAL > ERROR > WARNING > INFO > DEBUG > NOTSET
    """
    dir_path = os.path.split(__file__)[0]
    logdir = os.path.join(dir_path, 'log')
    try:
        os.makedirs(logdir, exist_ok=True)
    except FileExistsError:
        pass

    myapp = logging.getLogger(os.path.basename(log_filename))   #获得log实例
    myapp.setLevel(logging.DEBUG)   #设置log等级
    # 按照每天一个日志,保留最近14个
    filehandler = logging.handlers.TimedRotatingFileHandler(
        filename='%s/%s' % (logdir, os.path.basename(log_filename)),  #filename:文件前缀、when: 
        when='midnight', interval=1, backupCount=14)  #interval: 指等待多少个单位when的时间后,Logger会自动重建文件
    filehandler.suffix = '%Y%m%d.log'                 #backupCount: 保留最近多少天的日志
    filehandler.extMatch = re.compile(r'^\d{8}.log$')  # 只有填写了此变量才能删除旧日志
    filehandler.setFormatter(logging.Formatter('%(asctime)s %(message)s')) # 设置格式
    myapp.addHandler(filehandler)
    # 让日志输出到console
    console = logging.StreamHandler()
    console.setLevel(logging.INFO)
    console.setFormatter(logging.Formatter('%(asctime)s %(message)s'))
    myapp.addHandler(console)
    return myapp
Python中的logging模块是一种用于记录和输出日志信息的工具。通过引入logging模块,可以在代码中添加日志记录,以便于在程序运行时查看和分析程序的执行情况。 在使用logging模块时,可以设置不同的日志级别,包括DEBUG、INFO、WARNING、ERROR和CRITICAL等级别。默认情况下,日志级别为WARNING,只会输出WARNING级别及以上的日志信息。 可以通过配置logging模块的basicConfig函数来设置日志的输出方式,包括输出到控制台或者输出到文件。在输出到文件时,可以指定日志文件的名称、日志级别、文件打开模式和日志格式等参数。 下面是一个示例代码,展示了如何使用logging模块输出日志到文件,并设置日志的级别和格式: ```python import logging # 设置日志文件名 filename = "{}.log".format(__file__) # 设置***志格式 fmt = "%(asctime)s - %(filename)s[line:%(lineno)d - %(levelname)s: %(message)s" # 配置logging模块 logging.basicConfig( level=logging.DEBUG, filename=filename, filemode="w", format=fmt ) # 输出***志信息 logging.info("info") logging.debug("debug") logging.warning("warning") logging.error("error") logging.critical("critical") ``` 通过以上代码,可以将不同级别的日志信息输出到指定的日志文件中,并且在日志信息中包含了时间、文件名、行号、日志级别和具体的日志内容等信息。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Python编程:logging模块的简单使用](https://blog.csdn.net/mouday/article/details/80760343)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值