"""Code snippet showing that close is not called on python >=2.7""" import logging import os import tempfile class MyHandler(logging.Handler): def close(self): logging.Handler.close(self) print 'in MyHandler.close' def main(): logger = logging.getLogger("example") my_handler = MyHandler() logger.addHandler(my_handler) try: raise ValueError except ValueError: pass finally: logger.removeHandler(my_handler) if __name__ == '__main__': main()