以下代码导致相同的日志消息被输出两次:
log1 = logging.getLogger('foo')
log1.addHandler(logging.FileHandler('log.txt'))
log2 = logging.getLogger('foo.bar')
log2.addHandler(logging.FileHandler('log.txt'))
log2.warn("test message")
我意识到这是因为 'foo.bar' 匹配 'foo' 和 'foo.bar' 路径,所以两个记录器都会收到消息。我的问题是:除了确保我永远不会有两个记录器指向同一个日志路径中的同一个文件之外,还有什么方法可以防止这种行为?