python中logging模块的使用
博客专区 > klaus丶 的博客 > 博客详情
python中logging模块的使用
klaus丶 发表于2年前
python中logging模块的使用
  • 发表于 2年前
  • 阅读 23
  • 收藏 4
  • 点赞 0
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

#coding=utf8
import logging, os, sys, time
from logging import Logger
from logging.handlers import TimedRotatingFileHandler

def script_path():
    path = os.path.realpath(sys.argv[0])
    if os.path.isfile(path):
     path = os.path.dirname(path)
    return os.path.abspath(path)

def init_logger(logger_name):
    if logger_name not in Logger.manager.loggerDict:
        logger = logging.getLogger(logger_name)
        logger.setLevel(logging.DEBUG)
        # handler all
        log_path = os.path.join(script_path(),'logs')
        if not os.path.exists(log_path):
            os.makedirs(log_path)
        log_file = os.path.join(log_path,'all.log')
        handler = TimedRotatingFileHandler(log_file, when='midnight',backupCount=7)
        datefmt = '%Y-%m-%d %H:%M:%S'
        format_str = '[%(asctime)s]: %(name)s %(levelname)s %(lineno)s %(message)s'
        formatter = logging.Formatter(format_str, datefmt)
        handler.setFormatter(formatter)
        handler.setLevel(logging.INFO)
        logger.addHandler(handler)
        # handler error
        logerr_file = os.path.join(log_path,'error.log')
        handler = TimedRotatingFileHandler(logerr_file, when='midnight',backupCount=7)
        datefmt = '%Y-%m-%d %H:%M:%S'
        format_str = '[%(asctime)s]: %(name)s %(levelname)s %(lineno)s %(message)s'
        formatter = logging.Formatter(format_str, datefmt)
        handler.setFormatter(formatter)
        handler.setLevel(logging.ERROR)
        logger.addHandler(handler)


    logger = logging.getLogger(logger_name)
    return logger

logger = init_logger('cash')

if __name__ == '__main__':
    logger = init_logger('cash')
    logger.error('test-error')
    logger.info('test-info')
    logger.warn('test-warn')

 

共有 人打赏支持
粉丝 0
博文 46
码字总数 10229
×
klaus丶
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: