import logging
__orig_getLogger=None
def release_getLogger(name):
    '''
    passing original handler with debug() method replaced to empty function
    '''
    def dummy(*k, **kw):
        pass
    global __orig_getLogger
    log = __orig_getLogger(name)
    setattr(log, 'debug', dummy)
    return log
def install_release_loggers():
    '''
    save original handler, install newer
    '''
    global __orig_getLogger
    __orig_getLogger = logging.getLogger
    setattr(logging, 'getLogger', release_getLogger)
def restore_getLogger():
    '''
    restore original handler
    '''
    global __orig_getLogger
    if __orig_getLogger:
        setattr(logging, 'getLogger', __orig_getLogger)
        
# sample code
import logging
logging.basicConfig(level=logging.DEBUG,
                    format='%(name)s %(levelname)s> %(message)s',
                    filename='./test.log',
                    filemode='w')
# start main program, install wrapper
install_release_loggers()
log = logging.getLogger('main')
log.info('=== start ===')
log.debug('hidden message ;)')
log.info('info')
log.error('mandatory error')
"""
Log will contain (without debug message):
main INFO> === start ===
main INFO> info
main ERROR> mandatory error
"""