我将在Python2(Ubuntu 16.04上默认为2.7.12)和Pyton 3.5(Ubuntu 16.04上默认为3.5.2)中查看python日志模块的代码。
问题是 - 如果我们查看最终调用def _log
的{{1}}的实施,则self.handle
方法中的self.disabled
检查实际完成,但是它没有在handle
方法中完成。
同意,在_log
中再次检查它可能有意义,但为什么不在self.handle
中首先检查它,或者在self._log
中更好地检查它,以避免做大量的工作在self.isEnabledFor
方法中。
我错过了什么?
更新:在禁用记录器时进行了一些分析 - 代码为in the following gist。
以下要点有实际的cprofile数据,表明logger is disabled和logger is enabled时的效果影响。
看来,禁用记录器会对性能产生相当大的影响。
可能值得考虑吗?
答案 0 :(得分:0)