четверг, 12 марта 2009 г.

Проблема использования RotatingFileHandler & TimedRotatingFileHandler в конфигурационном файле logging и ее решение

При использовании FileHandler или StreamHandler все работает замечательно, как и описано в примерах из документации, но при использовании RotatingFileHandler или TimedRotatingFileHandler, выполняя командуlogging.config.fileConfig("logging.conf") получаем exception типа:

File "rss2lj.py", line 275, in <module>
   main()
 File "rss2lj.py", line 261, in main
   logging.config.fileConfig(config.getLogFileName())
 File "/usr/lib/python2.5/logging/config.py", line 84, in fileConfig
   handlers = _install_handlers(cp, formatters)
 File "/usr/lib/python2.5/logging/config.py", line 149, in _install_handlers
   klass = eval(klass, vars(logging))
 File "<string>", line 1, in <module>
NameError: name 'RotatingFileHandler' is not defined

Поискав на гугле пришел к выводу, что проблема известная, но никаких решений не нашел
Нашел такое вот решение:

logging.TimedRotatingFileHandler=logging.handlers.TimedRotatingFileHandler
logging.RotatingFileHandler=logging.handlers.RotatingFileHandler
logging.config.fileConfig("logging.conf")

0 comments:

Отправить комментарий