Un hilo a través de seis servicios
Cómo los CausalThreads reconstruyen una historia entre sistemas — del primer evento al desenlace final — sin pedirle a tus servicios que se conozcan entre sí.
Una reserva nace en el servicio de booking. Identidad verifica al huésped. Billing autoriza la tarjeta. Un dispositivo de acceso corta la llave digital. Sale una notificación. Un workflow cierra el ciclo. Seis servicios hicieron su trabajo — y cuando algo falla tres días después, seis equipos abren seis dashboards.
Esta es la brecha que cierran los CausalThreads.
Traces: la historia local
La actividad de cada servicio alrededor de la reserva cae en un Trace — el flujo localizado de eventos ligado a una entidad:
system_domain: 'booking',system_entity: 'reservation',system_entity_id: 'resv-011'- timestamp de inicio y fin
- el actor principal que lo condujo
Un trace responde la pregunta local: ¿qué le pasó a esta reserva dentro de este proceso? Es la unidad con la que un equipo depura.
Hilos: la historia completa
Un CausalThread enlaza esos traces en una sola narrativa. El trace de booking, la verificación de identidad, la autorización de pago, la señal del dispositivo — cada uno mantiene su frontera, pero comparten un causal_thread_id. El hilo lleva las coordenadas de la entidad y, crucialmente, un desenlace:
outcome: 'approved' | 'error' | 'abandoned' | ...
El desenlace es lo que convierte telemetría en operación. “Este hilo terminó en abandoned” es un hecho de negocio, no una métrica. Puedes contar hilos abandonados por dominio, recorrer cualquiera de punta a punta, y ver exactamente en qué trace murió la historia.
Nadie tuvo que integrarse con nadie
La parte importante: el servicio de booking nunca importó el tracer del servicio de billing. Cada servicio emite sus propios eventos con sus propias coordenadas de entidad; Vectry ensambla el hilo en la capa de datos. Los sistemas siguen desacoplados — la historia queda acoplada, que es lo que realmente querías.
Cómo se ve en un incidente
En vez de correlacionar timestamps en seis almacenes de logs, resuelves el hilo de resv-011 y lo lees como una transcripción: cada trace, cada evento, cada actor, en orden causal, cerrando con el desenlace. Si en el camino se generó una EventExplanation, el “porqué” está a una consulta de distancia.
Seis servicios. Un hilo. Una respuesta.