Python Logging

import logging, os, re
from logging.handlers import TimedRotatingFileHandler
"""
日志练习

"""

def setLog(logname):
    # 创建日志对象
    logger = logging.getLogger(logname)
    # 设置 日志等级
    logger.setLevel(level=logging.INFO)
    # 设置日志 存储 路径
    log_path = os.path.join(r"C:\Users\zxyyf_2\PycharmProjects\music\test", logname)
    # 设置 函数  MIDNIGHT 表示 每天 零点进行更新 每天生成一个新的文件

    """" 接下来 设置 Handler 最后将设置好的 Handler 加入到 logger 中 """
    file_handler = TimedRotatingFileHandler(filename=log_path, when="MIDNIGHT", interval=1, backupCount=30)
    # 设置文件名 到时候会根据文件名固定删除
    file_handler.suffix = "%Y-%m-%d.log"
    # 设置 匹配的文件名字 与 suffix 进行匹配  用于删除 30天的文件
    file_handler.extMatch = re.compile(r"^/d{4}-/d{2}-/d{2}.log$")
    # 设置日志输出格式
    file_handler.setFormatter(
        logging.Formatter(
            "[%(asctime)s] [%(process)d] [%(levelname)s] - %(module)s.%(funcName)s (%(filename)s:%(lineno)d) - %(message)s"
        )
    )
    # 将定义好的 handle 注入到 logger 中
    logger.addHandler(file_handler)
    return logger

if __name__ == "__main__":
    s = setLog("a")
    s.info("aaaaaaaaaaaaa")

 

 

转载地址:https://www.cnblogs.com/xujunkai/p/12364619.html

 

posted @ 2020-08-11 10:11  Black_Climber  阅读(121)  评论(0编辑  收藏  举报