将库的NullHandler集成到我自己的项目记录器中

时间:2018-09-06 15:08:29

标签: python logging

我正在开发自己的库以及使用该库的应用。

我想在两个项目中都使用logging

阅读this后,我知道我在库中的root记录器应包含NullHandler。但是我对如何使用项目应该如何到达在该库中创建的LogRecrods的部分(这样,这些记录将与项目的记录一起处理)还不够清楚。

我应该将使用项目的处理程序添加到库主记录器中吗?

1 个答案:

答案 0 :(得分:2)

在您的库的顶级记录器中添加一个NullHandler,在您的应用程序中,您只需要向根记录器添加处理程序(假设两个库都未打开propagate标志离开他们的记录器)。然后,对任何一个日志的任何调用都应该传递给root logger中的处理程序。

This diagram说明了数据如何通过日志系统。根记录器是系统中所有记录器的祖先。