初学Python:logging模块(logging.handlers.RotatingFileHandler)

# /usr/bin/python
# -*- coding:utf8 -*-

import os
import logging
import sys
from logging.handlers import RotatingFileHandler

reload(sys)
sys.setdefaultencoding('utf8') #修改系统的默认编码

def create_logger(log_file):

    formatter = logging.Formatter('[%(levelname)s - %(asctime)s - %(name)s - %(filename)s] %(message)s')

    fh = RotatingFileHandler(log_file, maxBytes=100 * 1024 * 1024, backupCount=2)
    fh.setLevel(logging.INFO)
    fh.setFormatter(formatter)

    ch = logging.StreamHandler()
    ch.setLevel(logging.INFO)
    ch.setFormatter(formatter)

    logger = logging.getLogger(__name__)
    logger.setLevel(logging.INFO)

    logger.addHandler(fh)
    logger.addHandler(ch)

    return logger


def ensure_dir_exists(path):
    try: 
        os.makedirs(path)
    except OSError:
        if not os.path.isdir(path):
            raise

发布了37 篇原创文章 · 获赞 2 · 访问量 7600

猜你喜欢

转载自blog.csdn.net/bingozb/article/details/103964795