Ingest

Send analytics events to Redis Streams via ingest channels

Single Event
Batch Events (max 50)
Each item in the array is stamped individually with org, app, sub, ts, ip_hash, ua_class and written as a separate Redis Stream entry.
Quick Events
How Ingest Works

1. Clients publish to ingest:{stream} channels — these are write-only (clients may NOT subscribe to ingest channels).

2. Server validates, stamps each event with org, app, sub, ts, ip_hash, ua_class, and XADDs to Redis Stream sock:stream:{org}:{app}:ingest:{stream} with MAXLEN ~ 100k.

3. Batch mode: data as JSON array (max 50 items, still max 16 KB frame). Each item stamped individually.

4. Backends consume with XREAD or XREADGROUP at their own pace. The socket server never writes to SQL.

5. Optional: backends subscribed to the same channel as role=backend receive the live fan-out mirror too.

Ingest Events
0 messages