dictconfig中的根记录器

时间:2013-11-28 06:14:57

标签: python django logging sentry

我想为Django项目设置一个Sentry记录器。我将定义一个sentry处理程序,并将该处理程序放在具有error级别的根记录器中。

根据logging模块的文档,有一个特殊的root密钥:

  

root - 这将是根记录器的配置。除了propagate设置不适用之外,配置的处理与任何记录器一样。

同时在other个地方,使用名称为''的记录器来包含根记录器的配置。

这有同样的效果吗?什么是可取的?

>>> import logging
>>> logging.getLogger('') is logging.root
True
>>> 

1 个答案:

答案 0 :(得分:10)

无论哪种方式都可行,因为名为''的记录器是根记录器。如果您正在配置大量记录器,则指定顶级键root可以更清楚地了解您正在执行的操作 - ''记录器配置可能会在其他组中丢失,而{root记录器配置可能会丢失1}}键与loggers键相邻,因此(理论上)应该更突出。

重申一下,名为root的密钥是顶级密钥;它不在loggers下。