logging.basicConfig做了什么?

时间:2016-08-30 19:00:30

标签: python logging

我在python中读取记录器并且与logging.basicConfig()方法混淆。正如python文档中提到的那样,它为root logger设置了许多配置,这是否意味着它只为root logger设置配置,或者它是否也为用户创建的记录器设置它?

另一个疑问是,每当我们创建用户定义的记录器时,它是否会成为root logger的子记录器?

1 个答案:

答案 0 :(得分:1)

回答你的第二部分:

    # Pass no arguments to get the root logger
    root_logger = logging.getLogger()
    # This logger is a child of the root logger
    logger_a = logging.getLogger('foo')
    # Configure logger_a here e.g. change threshold level to logging.DEBUG
    # This is a child of logger_a
    logger_b = logging.getLogger('foo.bar')

logger_alogger_b都是用户定义的,但只有logger_a才会继承root_logger的默认配置。如果在第4行和第4行之间上述6,您要配置logger_a,以便它与root_logger具有不同的设置,logger_b默认为logger_a的设置,而不是{{ 1}},因为它是root_logger的直接后代,而不是logger_a