diff --git a/logger/slog.go b/logger/slog.go index 53eb0828..a1633e19 100644 --- a/logger/slog.go +++ b/logger/slog.go @@ -60,10 +60,16 @@ func (l *slogLogger) Trace(ctx context.Context, begin time.Time, fc func() (sql sql, rows := fc() fields := []slog.Attr{ slog.String("duration", fmt.Sprintf("%.3fms", float64(elapsed.Nanoseconds())/1e6)), - slog.Int64("rows", rows), slog.String("sql", sql), } + if rows != -1 { + fields = append(fields, slog.Int64("rows", rows)) + } + if err != nil { + fields = append(fields, slog.String("error", err.Error())) + } + switch { case err != nil && (!l.IgnoreRecordNotFoundError || !errors.Is(err, ErrRecordNotFound)): l.Logger.ErrorContext(ctx, "SQL executed", slog.Attr{