import logging class SimpleLogger(logging.getLoggerClass()): def __init__(self, name='SimpleLogger', level=logging.NOTSET): super().__init__(name, level) _handler = logging.StreamHandler() _handler.setLevel(level) self.addHandler(_handler) if __name__ == '__main__': logger = SimpleLogger() logger.setLevel('DEBUG') logger.debug('testing debug') logger.info('testing info') logger.warning('%s', 'testing warning') logger.error('testing error') logger.debug('-----------') logger.setLevel('INFO') logger._cache.clear() logger.debug('testing debug') logger.info('testing info') logger.warning('%s', 'testing warning') logger.error('testing error')