微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python logging 模块-PlaceHolder() 实例源码

Python logging 模块,PlaceHolder() 实例源码

我们从Python开源项目中,提取了以下4代码示例,用于说明如何使用logging.PlaceHolder()

项目:microcosm-flask    作者:globality-corp    | 项目源码 | 文件源码
def make_logger_node(name, logger, parent=None):
    if isinstance(logger, PlaceHolder):
        # some loggers are instances of logging.PlaceHolder
        level = parent.level
    else:
        level = humanize_level(logger.getEffectiveLevel())

    node = Logger(name, level, [])
    if parent is not None:
        parent.children.append(node)
    return node
项目:PyDevNS    作者:daveisadork    | 项目源码 | 文件源码
def log_level(self, level):
        logger.debug("Setting config.log_level to %r", level)
        logging.getLogger().setLevel(level)
        logging._acquireLock()
        for name, _logger in iteritems(logging.Logger.manager.loggerDict):
            if isinstance(_logger, logging.PlaceHolder):
                continue
            _logger.setLevel(level)
        logging._releaseLock()
项目:pyethereum    作者:ethereumproject    | 项目源码 | 文件源码
def configure(config_string=None, log_json=False, log_file=None):
    if not config_string:
        config_string = ":{}".format(DEFAULT_LOGLEVEL)

    if log_json:
        SLogger.manager.log_json = True
        log_format = JSON_FORMAT
    else:
        SLogger.manager.log_json = False
        log_format = PRINT_FORMAT

    if len(rootLogger.handlers) == 0:
        handler = StreamHandler()
        formatter = Formatter(log_format)
        handler.setFormatter(formatter)
        rootLogger.addHandler(handler)
    if log_file:
        if not any(isinstance(hndlr, FileHandler) for hndlr in rootLogger.handlers):
            handler = FileHandler(log_file)
            formatter = Formatter("{} {}".format(FILE_PREFIX, log_format))
            handler.setFormatter(formatter)
            rootLogger.addHandler(handler)

    # Reset logging levels before applying new config below
    for name, logger in SLogger.manager.loggerDict.items():
        if hasattr(logger, 'setLevel'):
            # Guard against `logging.PlaceHolder` instances
            logger.setLevel(logging.NOTSET)
            logger.propagate = True

    for name_levels in config_string.split(','):
        name, _, level = name_levels.partition(':')
        logger = getLogger(name)
        logger.setLevel(level.upper())
项目:blockhooks    作者:EthereumWebhooks    | 项目源码 | 文件源码
def configure(config_string=None, level = name_levels.partition(':')
        logger = getLogger(name)
        logger.setLevel(level.upper())

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐