You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Register a recurring task in the Flagsmith task processor that, on each tick, iterates over active warehouse connections, logs a metrics row with started_at, and invokes the Lambda loader (#7292) with that run's ID. The Lambda updates the same row on completion via #7293.
Summary
Register a recurring task in the Flagsmith task processor that, on each tick, iterates over active warehouse connections, logs a metrics row with
started_at, and invokes the Lambda loader (#7292) with that run's ID. The Lambda updates the same row on completion via #7293.Depends on: #7292 (Lambda loader), #7276 (connection model), #7293 (metrics endpoint)
Scope
Recurring task
Register in the warehouse-connections app (same pattern as
organisations/tasks.py):Task body
For each active connection (
status IN ('connected', 'error'), skippingpending_customer_setupandrotating):{ connection_id, started_at: now, completed_at: null, events_delivered: null, batches_dlq: null, error: null }— returns arun_id{ "connection_id": "<id>", "run_id": "<run_id>" }run_id, which updates the rowA single failed Lambda invocation must not prevent fan-out to the remaining connections.
Why pre-create the row
Interval
Default
run_every=timedelta(hours=1)— matches the PRD's "within 1 hour" latency target.Acceptance criteria
run_id