5 files changed,
19 insertions(+),
24 deletions(-)
Author:
Smirnov Oleksandr
ss2316544@gmail.com
Committed by:
GitHub
noreply@github.com
Committed at:
2025-06-09 18:11:44 +0300
Parent:
060f2e6
jump to
| M | cmd/api/main.go |
| M | cmd/seed/main.go |
| M | e2e/e2e_test.go |
| M | internal/logger/logger.go |
| M | mailer/main.go |
M
cmd/api/main.go
@@ -49,12 +49,9 @@
cfg := config.NewConfig() // logger - logger, err := logger.NewCustomLogger(cfg.LogLevel, cfg.LogFormat, cfg.LogShowLine) - if err != nil { + if err := logger.SetDefault(cfg.LogLevel, cfg.LogFormat, cfg.LogShowLine); err != nil { return err } - - slog.SetDefault(logger) // semi dev mode if !cfg.AppEnv.IsDevMode() {
M
cmd/seed/main.go
@@ -22,11 +22,9 @@
func run(ctx context.Context) error { cfg := config.NewConfig() - logger, err := logger.NewCustomLogger(cfg.LogLevel, cfg.LogFormat, cfg.LogShowLine) - if err != nil { + if err := logger.SetDefault(cfg.LogLevel, cfg.LogFormat, cfg.LogShowLine); err != nil { return err } - slog.SetDefault(logger) psql, err := psqlutil.Connect(ctx, cfg.PostgresDSN) if err != nil {
M
e2e/e2e_test.go
@@ -3,7 +3,6 @@
import ( "context" "fmt" - "log/slog" "net/http" "testing" "time"@@ -94,10 +93,8 @@ // and sets up the router for tests
func (e *AppTestSuite) initDeps() { cfg := e.getConfig() - logger, err := logger.NewCustomLogger(cfg.LogLevel, cfg.LogFormat, cfg.LogShowLine) + err := logger.SetDefault(cfg.LogLevel, cfg.LogFormat, cfg.LogShowLine) e.require.NoError(err) - - slog.SetDefault(logger) e.hasher = hasher.NewSHA256Hasher(cfg.PasswordSalt) e.jwtTokenizer = jwtutil.NewJWTUtil(cfg.JwtSigningKey, time.Hour)@@ -106,7 +103,7 @@ sessionrepo := sessionrepo.New(e.postgresDB)
vertokrepo := vertokrepo.New(e.postgresDB) pwdtokrepo := passwordtokrepo.NewPasswordResetTokenRepo(e.postgresDB) - oauthProvider := newOauthProviderMock() + stubOAuthProvider := newOauthProviderMock() userepo := userepo.New(e.postgresDB) usercache := usercache.New(e.redisDB, cfg.CacheUsersTTL)@@ -119,8 +116,8 @@ e.hasher,
e.jwtTokenizer, newMailerMockService(), usercache, - oauthProvider, - oauthProvider, + stubOAuthProvider, + stubOAuthProvider, cfg.JwtRefreshTokenTTL, cfg.VerificationTokenTTL, cfg.ResetPasswordTokenTTL,
M
internal/logger/logger.go
@@ -9,10 +9,13 @@
"github.com/olexsmir/onasty/internal/transport/http/reqid" ) -type CustomLogger struct{ slog.Handler } +var ( + ErrUnknownLevel = errors.New("unknown log level") + ErrUnknownFormat = errors.New("unknown log format") +) -//nolint:err113 -func NewCustomLogger(lvl, format string, showLine bool) (*slog.Logger, error) { +// SetDefault configures and set default [slog.Logger] +func SetDefault(lvl, format string, showLine bool) error { loggerLevels := map[string]slog.Level{ "info": slog.LevelInfo, "debug": slog.LevelDebug,@@ -22,7 +25,7 @@ }
logLevel, ok := loggerLevels[lvl] if !ok { - return nil, errors.New("unknown log level") + return ErrUnknownLevel } handlerOptions := &slog.HandlerOptions{@@ -37,11 +40,14 @@ slogHandler = slog.NewJSONHandler(os.Stdout, handlerOptions)
case "text", "txt": slogHandler = slog.NewTextHandler(os.Stdout, handlerOptions) default: - return nil, errors.New("unknown log format") + return ErrUnknownFormat } - return slog.New(&CustomLogger{Handler: slogHandler}), nil + slog.SetDefault(slog.New(&CustomLogger{Handler: slogHandler})) + return nil } + +type CustomLogger struct{ slog.Handler } func (l *CustomLogger) Handle(ctx context.Context, r slog.Record) error { if requestID := reqid.GetContext(ctx); requestID != "" {
M
mailer/main.go
@@ -38,12 +38,9 @@ if err != nil {
return err } - logger, err := logger.NewCustomLogger(cfg.LogLevel, cfg.LogFormat, cfg.LogShowLine) - if err != nil { + if err = logger.SetDefault(cfg.LogLevel, cfg.LogFormat, cfg.LogShowLine); err != nil { return err } - - slog.SetDefault(logger) //nolint:exhaustruct svc, err := micro.AddService(nc, micro.Config{