Python 禁用所有子记录器
因此,我有一个运行的python脚本,它使用Python 禁用所有子记录器,python,python-2.7,logging,Python,Python 2.7,Logging,因此,我有一个运行的python脚本,它使用日志记录和一个顶级日志记录程序,简单地说: logging.basicConfig(level=logging.DEBUG) 然后这个脚本导入了一堆其他的东西,也使用了日志记录,结果我得到了大量的输出,因为这些其他脚本也在调试级别进行日志记录。我希望只能从我的顶级记录器获取日志记录输出,而不能从模块的任何子记录器获取 是否有一种方法可以禁用所有子记录器,而无需手动命名和配置每个子记录器?为了更好地控制日志记录,不要将根记录器用作默认的日志记录对象-只
日志记录
和一个顶级日志记录程序,简单地说:
logging.basicConfig(level=logging.DEBUG)
然后这个脚本导入了一堆其他的东西,也使用了日志记录
,结果我得到了大量的输出,因为这些其他脚本也在调试
级别进行日志记录。我希望只能从我的顶级记录器获取日志记录
输出,而不能从模块的任何子记录器获取
是否有一种方法可以禁用所有子记录器,而无需手动命名和配置每个子记录器?为了更好地控制日志记录,不要将根记录器用作默认的日志记录对象-只需将其用于处理程序(以便所有子记录器都继承添加到根记录器的处理程序),并将其级别保持在
警告
(默认设置)。在所有模块中,登录到通过执行以下操作获得的记录器
logger = logging.getLogger(__name__)
在if uuuu name uuuu='.\uuuuu main uuu'
子句中,在特定记录器上设置除警告
之外的级别