Niezgodność logowania w Pythonie między 2.5 a 2.6
Czy mógłbyś pomóc mi rozwiązać następujący problem niezgodności między Pythonem 2.5 a 2.6?
logger.conf:
<code>[loggers] keys=root,aLogger,bLogger [handlers] keys=consoleHandler [formatters] keys= [logger_root] level=NOTSET handlers=consoleHandler [logger_aLogger] level=DEBUG handlers=consoleHandler propagate=0 qualname=a [logger_bLogger] level=INFO handlers=consoleHandler propagate=0 qualname=b [handler_consoleHandler] class=StreamHandler args=(sys.stderr,) </code>
module_one.py:
<code>import logging import logging.config logging.config.fileConfig('logger.conf') a_log = logging.getLogger('a.submod') b_log = logging.getLogger('b.submod') def function_one(): b_log.info("function_one() called.") </code>
module_two.py:
<code>import logging import logging.config logging.config.fileConfig('logger.conf') a_log = logging.getLogger('a.submod') b_log = logging.getLogger('b.submod') def function_two(): a_log.info("function_two() called.") </code>
logger.py:
<code>from module_one import function_one from module_two import function_two function_one() function_two() </code>
Wyjście wywołania logger.py w Ubuntu 9.04:
<code>$ python2.5 logger.py $ $ python2.6 logger.py function_one() called. function_two() called. $ </code>