| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 | package logimport (	"fmt"	"os")type MultiLogger []Loggerfunc (l MultiLogger) Error(f string, v ...any) {	for _, logger := range l {		logger.Error(f, v...)	}}func (l MultiLogger) Warn(f string, v ...any) {	for _, logger := range l {		logger.Warn(f, v...)	}}func (l MultiLogger) Info(f string, v ...any) {	for _, logger := range l {		logger.Info(f, v...)	}}func (l MultiLogger) Debug(f string, v ...any) {	for _, logger := range l {		logger.Debug(f, v...)	}}func (l MultiLogger) CallDepthPlus() {	for _, logger := range l {		logger.CallDepthPlus()	}}func (l MultiLogger) CallDepthMinus() {	for _, logger := range l {		logger.CallDepthMinus()	}}var (	// gLog are global default LevelLogger	gLog = MultiLogger{ConsoleWith(LevelDebug, 4)})func SetDefault(logger MultiLogger) {	gLog = logger}func Default() MultiLogger {	return gLog}func Debug(f string, v ...any) {	gLog.Debug(f, v...)}func Info(f string, v ...any) {	gLog.Info(f, v...)}func Warn(f string, v ...any) {	gLog.Warn(f, v...)}func Error(f string, v ...any) {	gLog.Error(f, v...)}func Panic(f string, v ...any) {	gLog.Error(f, v...)	panic(fmt.Sprintf(f, v...))}func Fatal(f string, v ...any) {	gLog.Error(f, v...)	os.Exit(1)}
 |