Теоретически это должно быть просто. Возьмем пример из поваренной книги регистрации здесь:
https://docs.python.org/3/howto/logging-cookbook.html#sending и получение событий регистрации по сети
Я хочу добавить возможность изменить конфигурацию регистрации на лету. Я просто добавил:
logging.config.dictConfig(...) # setup the root logger
config_thread = logging.config.listen()
config_thread.start()
tcpserver = LogRecordSocketReceiver()
и при запуске это прекрасно работает с предоставленным примером отправки событий журнала по сети на приемник сокета.
Однако проблема возникает после отправки в новой конфигурации. После этого сервер журналов не будет выдавать больше сообщений. Это происходит, даже если каждый handleLogRecord()
вызов получает новый экземпляр регистратора через logging.getLogger()
.
Есть какие-нибудь идеи относительно того, что мне не хватает?