如何仅打印给定记录器的日志消息?

cam*_*mil 5 python logging python-2.7

目前我在我的代码中这样做:

logger = logging.getLogger(__name__)
logger.info("something happened")
Run Code Online (Sandbox Code Playgroud)

然后在我的主要脚本的顶部我这样做:

logging.basicConfig(level=logging.INFO)
Run Code Online (Sandbox Code Playgroud)

问题是消息太多了.有没有办法将它限制在一个或几个不同的记录器?

Art*_*wri 2

您可以按名称控制各个记录器。(在您的示例中,您使用了name,它将是模块名称,因此每个记录器将具有不同的名称,逐个模块)。您可以使用日志记录配置文件来单独控制每个记录器的日志记录级别。看看 PEP: http://www.python.org/dev/peps/pep-0282/