【问题标题】:How to change python log level for unnamed logger?如何更改未命名记录器的 python 日志级别?
【发布时间】:2016-03-08 14:12:19
【问题描述】:

要更改正确命名其记录器log = logging.getLogger(__name__) 的依赖包的日志记录级别很简单:logging.getLogger("name.of.package").setLevel(logging.WARNING)

但是如果第 3 方包没有命名他们的记录器并且只使用 logging.info("A super loud annoying message!") 记录消息,我该如何更改该级别?添加 getLogger(...).setLevel(..) 似乎不起作用,因为未命名记录器。是否可以只更改一个包的日志级别输出而不更改整个日志模块的级别?

【问题讨论】:

    标签: python logging


    【解决方案1】:

    如果没有命名记录器,它只是意味着它是默认记录器。您可以拨打logging.getLogger()获取它

    所以要设置日志级别,请执行以下操作:

    logging.getLogger.setLevel(logging.INFO)

    【讨论】:

    • 谢谢。这将改变所有使用默认记录器的模块的行为,对吗?因此,如果我只想更改一个使用默认记录器的模块的日志记录,那么如果不更改所有使用默认记录器的模块,我就无法这样做,对吗?
    • 仅供参考,如果您使用 Python 的日志记录 dictConfig 并在那里设置根记录器的级别,此解决方案可能没有任何效果
    猜你喜欢
    • 2020-11-19
    • 2016-02-20
    • 1970-01-01
    • 2014-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-01
    • 2023-04-11
    相关资源
    最近更新 更多