package log import ( "errors" "log/slog" ) var AuditLogger Logger = &SlogLogger{logger: slog.Default()} type Logger interface { Debug(msg string, err ...error) Info(msg string, err ...error) Warn(msg string, err ...error) Error(msg string, err ...error) } func wrapErr(err []error) error { var e error switch { case len(err) == 0: e = nil case len(err) == 1: e = err[0] default: e = errors.Join(err...) } return e }