Flujo de Tracking (Tagging Events)
Cómo viaja un evento desde el browser del usuario final hasta ClickHouse.
Pipeline completo
gtm-proxy: decisión async vs sync
Event ID — deduplicación
gtm-fabric Worker — configuración
tagging:
worker:
max-concurrent-requests: 100
rate-limit:
events-per-second: 15
max-concurrent: 10 # conexiones por container
timeout-ms: 5000
retry:
max-attempts: 100
initial-delay-seconds: 10
max-delay-seconds: 300
analytics:
clickhouse:
batch-size: 1000
batch-timeout-seconds: 10
Circuit breaker por container
Timing
| Momento | Acción |
|---|---|
t=0ms | Browser envía POST |
t=1-3ms | gtm-proxy intercepta, genera event_id, publica a Pub/Sub |
t=3ms | 202 Accepted al browser |
t=50ms | TaggingEventWorker consume de Pub/Sub |
t=100ms | HTTP forward al Docker container |
t=150ms | Container procesa tags, retorna 200 |
t=151ms+ | Parse + Enrich + Buffer (async) |
t≤10s | Batch flush a ClickHouse |