如何在Python中为特定模块实现不同的级别

par*_*axi 14 logging module python-2.x

从这个stackoverflow问题,如何实现以下配置文件?

[logger_qpid]
level=NOTSET
handlers=nullHandler
qualname=qpid
propagate=0
Run Code Online (Sandbox Code Playgroud)

我正在使用logging.basicConfig:

# Configure parser.
parser = argparse.ArgumentParser(description = 'Allow for debug logging mode.')
parser.add_argument('--debug', action = 'store_true',
                    help = 'Outputs additional information to log.')
c_args = parser.parse_args()
# Configure logging mode.
if c_args.debug:
    # Enable debug level of logging.
    print "Logging level set to debug."
    logging.basicConfig(filename = LOG_FILENAME, format = '%(asctime)s %(message)s',
                        level = logging.DEBUG)
else:
    logging.basicConfig(filename = LOG_FILENAME, format = '%(asctime)s %(message)s',
                        level = logging.INFO)
Run Code Online (Sandbox Code Playgroud)

par*_*axi 26

在suds包的文档站点中,您可以使用setLevel方法设置特定包的级别.例如,以下是如何设置记录到INFO级别的所有suds的级别(在logging.basicConfig()代码之后):

logging.getLogger('suds').setLevel(logging.INFO)
Run Code Online (Sandbox Code Playgroud)