Vectry Analytics
← Blog
Producto 2 min lectura

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í.

  • #hilos-causales
  • #traces
  • #sistemas-distribuidos
  • #producto

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.

Deja de adivinar. Empieza a explicar.

Lleva infraestructura causal a tu operación — o empieza a instrumentar hoy con los SDKs open source.