1
我有內部get_logger_setup
2個伐木者記錄器正在改變後初始化如果我叫logging.config.dictConfig
logger = logger_setup.get_logger_setup(env, logger_name = 'root', report_to_logging_service=report_to_logging_service)
print len(logger.handlers) # =3
auditor = logger_setup.get_logger_setup(env, logger_name = 'audit')
print len(logger.handlers) # =2
有
logging.config.dictConfig(my_logging_configs)
如果我不把它叫做第二次len(logger.handlers)
仍然是3.
我必須在每次啓動新的記錄器時調用它以防設置不同。
嘗試深度複製copy.deepcopy(logger)
以創建一個不會耦合到logging.config.dictConfig
的單獨對象,但由於它是一個複雜的對象,所以它是錯誤的。
想法?
get_logger_setup是什麼?它似乎不是官方的功能,你可以在這裏粘貼def部分 – linpingta
hi @linpingta,我已經解釋了引起問題的get_logger_setup裏面的部分。它是'logging.config.dictConfig' – WebQube
'dictConfig'的意思是一次調用*來配置所有記錄器和處理程序,而不是多次。 –