Evening, I have an application that is running in an endless loop processing an incoming queue. Every run is supposed to write a log file about the run and then close it again. While the 'logging' module is generally working well (even though the documentation makes me miss some proper examples how everything works together) I can't seem to close the log file again to open a new one.
This is basically what I'm doing: log = logging.getLogger("myapplication") log.addHandler(logging.FileHandler("/tmp/testfile")) log.setLevel(logging.INFO) log.info("foo") Now I'm missing a way to tell this handler to go away. Through 'ipython' I found out there is a log.handlers array that contains all the handlers. Perhaps I could delete all of them but I'm sure there is a more proper way to close files again. Googling found me: .>>> logging._handlers.clear() .>>> logging.root.handlers = [] .>>> for l in logging.Logger.manager.loggerDict.values(): .>>> l.handlers = [] But this looks really really ugly. I don't like to mess with the gears in the 'logging' module. Ideas? Kindly Christoph -- http://mail.python.org/mailman/listinfo/python-list