• python logger应用


    #!/usr/bin/env python
    # _*_ coding:utf-8 _*_
    # Author: Harvey Wang
    import logging
    from conf import settings


    def logger(log_type):
    # create logger
    logger = logging.getLogger(log_type)
    logger.setLevel(settings.LOG_LEVEL)

    # create console handler and set level to debug
    ch = logging.StreamHandler()
    ch.setLevel(settings.LOG_LEVEL)

    # create file handler and set level to warning
    log_file = "%s/log/%s" % (settings.BASE_DIR, settings.LOG_TYPES[log_type])
    fh = logging.FileHandler(log_file)
    fh.setLevel(settings.LOG_LEVEL)
    # create formatter
    formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

    # add formatter to ch and fh
    ch.setFormatter(formatter)
    fh.setFormatter(formatter)

    # add ch and fh to logger
    logger.addHandler(ch)
    logger.addHandler(fh)

    return logger, ch, fh


    def access_logger(message):
    acc_logger, ch, fh = logger('access')
    acc_logger.info(message)
    acc_logger.removeHandler(ch)
    acc_logger.removeHandler(fh)


    def transaction_logger(message):
    # acc_logger = logger('transaction')
    acc_logger, ch, fh = logger('transaction')
    acc_logger.info(message)
    acc_logger.removeHandler(ch)
    acc_logger.removeHandler(fh)
  • 相关阅读:
    【JZOJ5603】【NOI2018模拟3.27】Xjz
    【JZOJ5605】【NOI2018模拟3.26】Arg
    【agc004e】Salvage Robots
    【agc004c】AND Grid
    【agc004d】Teleporter
    【agc002f】Leftmost Ball
    【agc002d】Stamp Rally
    【arc068F】Solitaire
    51nod 1172 Partial Sums V2
    快速数论变换NTT模板
  • 原文地址:https://www.cnblogs.com/3one/p/8405034.html
Copyright © 2020-2023  润新知