如何为导入的模块配置日志记录?

How to configure logging for an imported module?

在我的Superset web application, I am interested in setting the level of logging in Flask-OAuthLib to DEBUG. We can see Flask-OAuthLib access its logger here on line 26 来自 Superset 网络应用程序。

Superset 是使用 Flask-AppBuilder 实现的 Web 应用程序。它 允许通过 Flask-OAuthLib 进行 OAuth2 身份验证。

我想从 custom_sso_security_manager.py 配置 Flask-OAuthLib 日志记录 ... the Superset docs on custom OAuth configuration.

您可以用完全相同的方式访问记录器。它们被添加到全局字典中,可以使用 getLogger(key) 从中获取项目。所以你需要做的就是在导入 oauth lib 之后将类似这样的东西放入你的文件中:

oauth_logger = logging.getLogger('flask_oauthlib')
oauth_logger.setLevel(logging.DEBUG)

# it is custom for libs to have no handler (except the NullHandler)
# so you may want to add one:
oauth_logger.addHandler(logging.StreamHandler()) # just an example