python 日志滚动 分文件

import logging
from logging.handlers import RotatingFileHandler
import datetime
import  os

def main():
    logger = logging.getLogger(__name__)
    logger.setLevel(level=logging.INFO)
    # 定义一个RotatingFileHandler,最多备份3个日志文件,每个日志文件最大1K
    dir=str(datetime.date.today())
    rHandler =RotatingFileHandler(dir+"log.txt", maxBytes=1 * 1024*30, backupCount=1024)
    rHandler.setLevel(logging.INFO)
    log_fmt = '%(asctime)s\tFile \"%(filename)s\",line %(lineno)s\t%(levelname)s: %(message)s'
    log_fmt ='%(asctime)s - %(name)s - %(levelname)s - %(message)s'

    formatter = logging.Formatter('%(asctime)s|%(name)-12s: %(levelname)-8s %(message)s')
    rHandler.setFormatter(log_fmt)
    rHandler.suffix = "%Y-%m-%d_%H-%M-%S.log"
    console = logging.StreamHandler()
    console.setLevel(logging.INFO)
    console.setFormatter(formatter)

    logger.addHandler(rHandler)
    logger.addHandler(console)

    for i in range(1024):
        logger.info("Start print log")
        logger.debug("Do something")
        logger.warning("Something maybe fail.")
        logger.info("Finish")


if __name__ == '__main__':
    main()

猜你喜欢

转载自www.cnblogs.com/kexb/p/9970687.html