python - Python:如何将所有记录器的日志记录级别设置为 INFO
问题描述
我正在使用以下配置
import logging
FORMAT = '%(levelname)s: %(asctime)-15s: %(filename)s: %(funcName)s: %(module)s: %(message)s'
logging.basicConfig(filename="/var/log/out.log", level=logging.INFO, format=FORMAT)
LOGGER = logging.getLogger("Customer")
然后是我导入的一些库。这些库具有调试日志记录语句,例如
LOGGER = logging.getLogger(__name__)
LOGGER.debug('add_timeout: added timeout %s; deadline=%s at %s',
timeout_id, deadline, timeout_at)
当我运行我的程序时,它也会打印内部库的调试日志。我想完全避免调试日志。
解决方案
下面的代码应该可以解决问题。
loggers = [logging.getLogger(name) for name in logging.root.manager.loggerDict]
for logger in loggers:
logger.setLevel(logging.INFO)
第一行返回实例化的日志列表。for 循环只是将级别设置为所有日志。
推荐阅读
- r - R:如何根据某些条件将值从多个数据帧传输到另一个数据帧?
- python - 使用 Plotly Graph 对象按中值对箱线图进行排序
- android - Expo Push Notifications 在生产中不起作用
- mongodb - 在 mongoDB 中按 _id 搜索是否更有效?
- javascript - 如何在 d3.format 中添加任何字符串作为数字的后缀?
- r - 从命令提示符执行 R 脚本时出错
- mongodb - 在 MongoDB 5.0.1 中创建时序集合会引发错误时序集合未启用
- laravel-7 - 在 Finder.php 第 590 行:“”目录不退出。在生产中运行 php artisan optimize:clear 后
- javascript - 属性或方法“foo”未在实例上定义,但在渲染期间被引用
- android-studio - Android Studio Git 合并显示空白屏幕,冲突无法解决