log.py 文件源码

python
阅读 29 收藏 0 点赞 0 评论 0

项目:bolero 作者: rock-learning 项目源码 文件源码
def get_logger(obj, log_to_file, log_to_stdout):
    """Get logger for given object.

    Removes all previously assigned handlers from the logger.

    Parameters
    ----------
    obj : Unknown
        Some object

    log_to_file: optional, boolean or string (default: False)
        Log results to given file, it will be located in the $BL_LOG_PATH

    log_to_stdout: optional, boolean (default: False)
        Log to standard output

    Returns
    -------
    logger : Logger
        Logger object
    """
    logger = logging.getLogger(type(obj).__name__)
    logger.handlers = []  # Remove all handlers
    logger.setLevel(logging.DEBUG)
    if log_to_file:
        bl_log_path = os.environ.get("BL_LOG_PATH", ".")
        log_file_name = "%s/%s" % (bl_log_path, log_to_file)
        handler = logging.FileHandler(log_file_name)
        handler.setLevel(logging.DEBUG)
        logger.addHandler(handler)
    if log_to_stdout:
        handler = logging.StreamHandler()
        handler.setLevel(logging.DEBUG)
        logger.addHandler(handler)
    if (not (log_to_file or log_to_stdout) and
            "NullHandler" in logging.__dict__):
        handler = logging.NullHandler()
        logger.addHandler(handler)
    return logger
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号