Flujo: Métricas
¿Quién lo usa?
| Rol | Vista disponible | URL |
|---|---|---|
ADMIN (equipo Rial) | Dashboard admin — todas las compañías y marcas | /admin/dashboard |
BRAND_ADMIN / COMPANY_ADMIN | Métricas de su propia compañía | /metrics |
¿Por qué importa?
Calcular métricas sobre miles de casos y SKUs en tiempo real sería demasiado costoso en cada petición. Por eso, Rial usa una arquitectura de caché precomputada: un Cloud Scheduler dispara el worker admin-metrics dos veces al día, que calcula todo y guarda el resultado en Redis con un TTL. El API sirve este caché directamente.
Vista admin — Dashboard
El admin ve una tabla con todos los casos activos, filtrable por compañía y estado. Columnas principales:
| Columna | Descripción |
|---|---|
| Caso | Nombre del ProjectFolder |
| Compañía | Compañía cliente |
| Marcas | Número de marcas involucradas |
| Estado | Estado actual del caso |
| Creado | Hace cuánto se creó |
| Última generación | Cuándo se subieron imágenes por última vez |
| Por generar | SKUs pendientes / total |
| Rechazadas | Imágenes rechazadas sin corregir |
Tabs disponibles: Casos / Proyectos / Marcas / Compañías
Endpoints:
GET /metrics/admin-projects
— Retorna el Job con las métricas de proyectos desde Redis
GET /metrics/admin-project-folders
— Retorna el Job con las métricas de carpetas (casos) desde RedisVista cliente — Métricas de marca
El cliente ve sus propios casos con columnas orientadas al seguimiento de su proceso:
| Columna | Descripción |
|---|---|
| Caso | Nombre del proyecto |
| Marcas | Marcas involucradas |
| Estado | Estado visible para el cliente |
| Creado | Cuándo se inició el caso |
| Por revisar | Imágenes pendientes de su aprobación |
| Rechazadas | Imágenes que rechazó y están en corrección |
Tabs disponibles: Casos / Proyectos
Arquitectura del flujo de métricas admin
Endpoint interno del worker
POST /cache/admin-metrics
Header: ADMIN_METRICS_BRANDS_REFRESH_SECRET: <secret>
Body: { jobId: "uuid", query: { ... } }
— Solo accesible desde el worker. Autenticado con un secret por header.
— Actualiza el caché en Redis con las métricas calculadas.Tipos de métricas disponibles
| Endpoint | Secreto requerido | Descripción |
|---|---|---|
POST /cache/admin-metrics (brands) | ADMIN_METRICS_BRANDS_REFRESH_SECRET | Métricas por marca |
POST /cache/admin-metrics (companies) | ADMIN_METRICS_COMPANIES_REFRESH_SECRET | Métricas por compañía |
POST /cache/admin-metrics (projects) | ADMIN_METRICS_PROJECTS_REFRESH_SECRET | Métricas por proyecto |
POST /cache/admin-metrics (folders) | ADMIN_METRICS_PROJECT_FOLDERS_REFRESH_SECRET | Métricas por carpeta/caso |
Notas importantes
- Las métricas admin se calculan máximo 2 veces al día. Si están desactualizadas, se puede re-disparar el worker manualmente desde Cloud Tasks o Cloud Scheduler en la consola de GCP.
- Las métricas del cliente se calculan en tiempo real (no pasan por Redis) porque el volumen de datos es menor y la precisión es más importante para el cliente.
- El TTL de Redis garantiza que no se sirvan métricas con más de 12 horas de antigüedad.
Last updated on