diff --git a/backend/internal/session/redis.go b/backend/internal/session/redis.go index c698502..4a28bb9 100644 --- a/backend/internal/session/redis.go +++ b/backend/internal/session/redis.go @@ -10,8 +10,8 @@ import ( "github.com/google/uuid" "github.com/redis/go-redis/v9" - "github.com/hhs/camtalk/internal/logger" "github.com/hhs/camtalk/internal/models" + "github.com/hhs/camtalk/internal/trace" "github.com/hhs/camtalk/internal/util" ) @@ -88,7 +88,8 @@ func (m *RedisManager) CreateWithID(ctx context.Context, id string, userID strin return "", fmt.Errorf("redis create session: %w", err) } - logger.Log.Debugw("redis session created", "session", id, "user_id", userID) + log := trace.FromContext(ctx) + log.Debugw("redis session created", "session_id", id, "user_id", userID) return id, nil } @@ -97,8 +98,11 @@ const placeholderHistoryMark = "__placeholder__" // Get 获取会话。 func (m *RedisManager) Get(ctx context.Context, sessionID string) (*models.Session, error) { + log := trace.FromContext(ctx) + vals, err := m.rdb.HGetAll(ctx, metaKey(sessionID)).Result() if err != nil { + log.Errorw("redis get session failed", "session_id", sessionID, "error", err) return nil, fmt.Errorf("redis get session: %w", err) } if len(vals) == 0 { @@ -116,6 +120,7 @@ func (m *RedisManager) Get(ctx context.Context, sessionID string) (*models.Sessi sess.Config.DetailLevel = vals["config.detail_level"] sess.Config.Language = vals["config.language"] + log.Debugw("redis session retrieved", "session_id", sessionID) return sess, nil } @@ -151,7 +156,9 @@ func (m *RedisManager) UpdateConfig(ctx context.Context, sessionID string, patch // 刷新 TTL m.rdb.Expire(ctx, metaKey(sessionID), m.ttl) - logger.Log.Debugw("redis session config updated", "session", sessionID) + + log := trace.FromContext(ctx) + log.Debugw("redis session config updated", "session_id", sessionID) return nil } @@ -171,7 +178,9 @@ func (m *RedisManager) UpdateTitle(ctx context.Context, sessionID string, title } m.rdb.Expire(ctx, metaKey(sessionID), m.ttl) - logger.Log.Debugw("redis session title updated", "session", sessionID, "title", title) + + log := trace.FromContext(ctx) + log.Debugw("redis session title updated", "session_id", sessionID, "title", title) return nil } @@ -286,8 +295,9 @@ func (m *RedisManager) GetHistory(ctx context.Context, sessionID string, limit i } var msg models.Message if err := json.Unmarshal([]byte(raw), &msg); err != nil { - logger.Log.Warnw("invalid history entry", - "session", sessionID, + log := trace.FromContext(ctx) + log.Warnw("invalid history entry", + "session_id", sessionID, "raw_len", len(raw), "raw_preview", util.Truncate(raw, 100)) continue @@ -440,7 +450,8 @@ func (m *RedisManager) Destroy(ctx context.Context, sessionID string) error { m.rdb.SRem(ctx, userSessKey(userID), sessionID) } - logger.Log.Debugw("redis session destroyed", "session", sessionID) + log := trace.FromContext(ctx) + log.Debugw("redis session destroyed", "session_id", sessionID) return nil }