feat(api): add log_request_body_enabled feature flag support

Add runtime feature flag to control whether request bodies are stored
in logs. The Handler now accepts a Redis client to check the
log_request_body_enabled feature flag before persisting log records.

- Add logRequestBodyFeatureKey constant for feature flag
- Inject Redis client into Handler for feature flag lookups
- Strip request body from log records when feature is disabled
- Update tests to pass Redis client to NewHandler
This commit is contained in:
zenfun
2025-12-21 13:26:16 +08:00
parent 1089f9490e
commit 00192f937e
5 changed files with 31 additions and 9 deletions

View File

@@ -33,7 +33,7 @@ func newTestHandlerWithRedis(t *testing.T) (*Handler, *gorm.DB, *miniredis.Minir
mr := miniredis.RunT(t)
rdb := redis.NewClient(&redis.Options{Addr: mr.Addr()})
sync := service.NewSyncService(rdb)
return NewHandler(db, sync, nil), db, mr
return NewHandler(db, sync, nil, rdb), db, mr
}
func TestCreateModel_DefaultsKindChat_AndWritesModelsMeta(t *testing.T) {