一次更改所有Connexion记录器的日志记录级别



有办法停止或减少日志记录吗?

你可以选择

  • 将所有应用程序日志记录限制在特定级别(DEBUG、INFO、WARNING…)-这太宽泛了,不适合
  • 将具体的连接记录器(即connexion.operations.abstract)限制在一定的级别-这太窄了,并且连接有很多不同的记录器,这可能有利于连接本身的发展,但在其他方面很麻烦
    • 通过这种方式,我成功地创建了许多connexion.*记录器的列表,并将日志记录减少到一定数量(使用structlog.get_logger(logger_name).setLevel(logging.WARNING)),但在DEBUG级别上仍然有一些巨大的日志,以
      • Attaching x-scope to {
      • Ref #/components/
      • Dereferencing {

有什么方法可以清除这些日志吗?或者更好地通过通配符选择记录器?即connexion.*

谢谢你的回答。

Michal

PS:在Connexion Github上被问到同样的问题:https://github.com/zalando/connexion/issues/1417

AFAIKconnexion不使用structlog,因此在混凝土记录器上设置级别对您没有多大好处。

您将不得不使用stdlib的全局配置。类似于:

[loggers]
keys = root, connexion, ...
[handlers]
keys = console
[formatters]
keys = generic
[handler_console]
class = StreamHandler
args = (sys.stdout,)
level = NOTSET
formatter = generic
[formatter_generic]
format = %(message)s
[logger_root]
level = INFO
handlers = console
[logger_connexion]
level = WARN
handlers =
qualname = connexion

然后使用logging.config.fileConfig()加载

相关内容

  • 没有找到相关文章

最新更新