擅长:python、mysql、java
<p>您应该有一个全局记录器和处理程序:</p>
<pre><code>logger= logging.getLogger("myapp")
#configure handlers
</code></pre>
<p>然后,在每个模块上:</p>
<p><code>logger= logging.getLogger("myapp."+__name__)</code></p>
<p>是否需要每个类的记录器取决于您-我看到的大多数项目(最多)每个模块都有一个记录器。我的建议是,如果不同的类不需要不同的处理程序,那么请坚持每个模块使用一个记录器,或者甚至每个项目使用一个记录器—如果项目很小。</p>
<p>如果日志中需要更多上下文,请注意,可以在格式化程序上使用<code>%(funcName)s</code>打印当前函数名</p>