func (b *Base) RemoveLogger(logger Logger) error {
	for idx, rLogger := range b.loggers {
		if rLogger == logger {
			err := rLogger.ShutdownLogger()
			if err != nil {
				return err
			}
			b.loggers[idx] = b.loggers[len(b.loggers)-1]
			b.loggers[len(b.loggers)-1] = nil
			b.loggers = b.loggers[:len(b.loggers)-1]
			return nil
		}
	}

	// Remove any hook instances the logger has
	for idx, hookLogger := range b.hookPreQueue {
		if hookLogger == logger {
			b.hookPreQueue[idx] = b.hookPreQueue[len(b.hookPreQueue)-1]
			b.hookPreQueue[len(b.hookPreQueue)-1] = nil
			b.hookPreQueue = b.hookPreQueue[:len(b.hookPreQueue)-1]
		}
	}

	return nil
}
func (b *Base) RemoveLogger(logger Logger) error {
	for idx, rLogger := range b.loggers {
		if rLogger == logger {
			err := rLogger.ShutdownLogger()
			if err != nil {
				return err
			}
			b.loggers[idx] = b.loggers[len(b.loggers)-1]
			b.loggers[len(b.loggers)-1] = nil
			b.loggers = b.loggers[:len(b.loggers)-1]
			return nil
		}
	}

	
	for idx, hookLogger := range b.hookPreQueue {
		if hookLogger == logger {
			b.hookPreQueue[idx] = b.hookPreQueue[len(b.hookPreQueue)-1]
			b.hookPreQueue[len(b.hookPreQueue)-1] = nil
			b.hookPreQueue = b.hookPreQueue[:len(b.hookPreQueue)-1]
		}
	}

	return nil
}
func ( b * Base ) RemoveLogger ( logger Logger ) error { for idx , rLogger := range b . loggers { if rLogger == logger { err := rLogger . ShutdownLogger ( ) if err != nil { return err } b . loggers [ idx ] = b . loggers [ len ( b . loggers ) - 1 ] b . loggers [ len ( b . loggers ) - 1 ] = nil b . loggers = b . loggers [ : len ( b . loggers ) - 1 ] return nil } } // Remove any hook instances the logger has for idx , hookLogger := range b . hookPreQueue { if hookLogger == logger { b . hookPreQueue [ idx ] = b . hookPreQueue [ len ( b . hookPreQueue ) - 1 ] b . hookPreQueue [ len ( b . hookPreQueue ) - 1 ] = nil b . hookPreQueue = b . hookPreQueue [ : len ( b . hookPreQueue ) - 1 ] } } return nil }
/*
RemoveLogger will run ShutdownLogger on the given logger and then remove the given
Logger from the list in Base
*/
/ * RemoveLogger will run ShutdownLogger on the given logger and then remove the given Logger from the list in Base