Skip to main content
El components/tracer actual de Midaz emite sus hechos de negocio JSON públicos como CloudEvents 1.0 en modo de contenido binario sobre Kafka mediante lib-streaming. Este es el productor del contrato studio.lerian.tracer.* de esta página. Tracer es el componente de Midaz desplegado por separado y el único productor documentado aquí; no atribuyas estos eventos a un repositorio separado.

Catálogo JSON público de Tracer

El manifiesto de Midaz components/tracer contiene las siguientes definiciones verificadas. Las 12 definiciones tienen emisores de producción no test; ninguna está solo en el catálogo. Midaz no inicializa un consumidor lib-streaming para estos hechos.

Sobre CloudEvents

Cada hecho JSON público utiliza el sobre compartido siguiente. Las cabeceras llevan la información de enrutamiento y schema; el valor de Kafka lleva el objeto JSON data.

Temas, manifiesto y enrutamiento

El tema de aplicación identifica el Tracer de Midaz, no un evento individual. Enruta un registro por ce-resourcetype y ce-eventtype, y valida ce-schemaversion antes de decodificar su valor data.
  • Hechos: lerian.streaming.tracer
  • DLQ de ruta: lerian.streaming.tracer.dlq
  • Manifiesto: GET /v1/streaming/manifest expone el catálogo JSON público y el mapeo de temas, incluso cuando la publicación está deshabilitada.

Semántica de entrega y fallo

La publicación está deshabilitada hasta que STREAMING_ENABLED=true y la configuración del broker tenga éxito. Cuando está habilitado, Midaz emite después del cambio de estado de negocio. No conecta un writer de outbox, repositorio de outbox, outbox transaccional ni relay de outbox de lib-streaming.
  • Política: cada definición JSON pública es un fact con entrega directa, gestión de DLQ on_routable_failure y fallback_on_circuit_open configurado por lib-streaming v3.
  • Límite real de Midaz: como no hay un writer de outbox conectado, el fallback de circuito abierto no puede persistir un evento. Las rutas de emisión registran e ignoran los errores de publicación en lugar de devolverlos al comando de negocio. Este no es un contrato de outbox atómico.
  • Límite del consumidor: Midaz no conecta un consumidor para estos hechos, y la política directa del productor no establece una garantía transaccional de entrega. Los consumidores deben mantener los handlers idempotentes y deduplicar con (ce-source, ce-id).

Contratos completos de data

Estas declaraciones estilo TypeScript reflejan las etiquetas JSON de data del CloudEvent en Midaz. Cada nombre de campo es su nombre JSON. ? significa que el campo tiene omitempty; | null significa que el campo admite nulos sin omitirse. Un comentario de tipo fuente conserva exactamente el tipo del inventario. Todos los campos de estos 12 payloads de Tracer están presentes (omitempty: false); los campos anulables se emiten igualmente con null cuando faltan.
Clave de definición: limit.activated (LimitActivatedDefinition)Evento: studio.lerian.tracer.limit.activatedTema: lerian.streaming.tracerDLQ de ruta: lerian.streaming.tracer.dlqSchema: 1.0.0 (application/json)Se emite cuando: ActivateLimitCommand activa un límite correctamente.Subject: p.ID
Clave de definición: limit.created (LimitCreatedDefinition)Evento: studio.lerian.tracer.limit.createdTema: lerian.streaming.tracerDLQ de ruta: lerian.streaming.tracer.dlqSchema: 1.0.0 (application/json)Se emite cuando: CreateLimitCommand crea un límite correctamente.Subject: p.ID
Clave de definición: limit.deactivated (LimitDeactivatedDefinition)Evento: studio.lerian.tracer.limit.deactivatedTema: lerian.streaming.tracerDLQ de ruta: lerian.streaming.tracer.dlqSchema: 1.0.0 (application/json)Se emite cuando: DeactivateLimitCommand desactiva un límite correctamente.Subject: p.ID
Clave de definición: limit.deleted (LimitDeletedDefinition)Evento: studio.lerian.tracer.limit.deletedTema: lerian.streaming.tracerDLQ de ruta: lerian.streaming.tracer.dlqSchema: 1.0.0 (application/json)Se emite cuando: DeleteLimitCommand elimina un límite correctamente.Subject: p.ID
Clave de definición: limit.drafted (LimitDraftedDefinition)Evento: studio.lerian.tracer.limit.draftedTema: lerian.streaming.tracerDLQ de ruta: lerian.streaming.tracer.dlqSchema: 1.0.0 (application/json)Se emite cuando: DraftLimitCommand mueve a DRAFT un límite correctamente.Subject: p.ID
Clave de definición: limit.updated (LimitUpdatedDefinition)Evento: studio.lerian.tracer.limit.updatedTema: lerian.streaming.tracerDLQ de ruta: lerian.streaming.tracer.dlqSchema: 1.0.0 (application/json)Se emite cuando: UpdateLimitCommand actualiza un límite correctamente.Subject: p.ID
Clave de definición: rule.activated (RuleActivatedDefinition)Evento: studio.lerian.tracer.rule.activatedTema: lerian.streaming.tracerDLQ de ruta: lerian.streaming.tracer.dlqSchema: 1.0.0 (application/json)Se emite cuando: ActivateRuleService activa una regla correctamente.Subject: p.ID
Clave de definición: rule.created (RuleCreatedDefinition)Evento: studio.lerian.tracer.rule.createdTema: lerian.streaming.tracerDLQ de ruta: lerian.streaming.tracer.dlqSchema: 1.0.0 (application/json)Se emite cuando: CreateRuleCommand crea una regla correctamente.Subject: p.ID
Clave de definición: rule.deactivated (RuleDeactivatedDefinition)Evento: studio.lerian.tracer.rule.deactivatedTema: lerian.streaming.tracerDLQ de ruta: lerian.streaming.tracer.dlqSchema: 1.0.0 (application/json)Se emite cuando: DeactivateRuleService desactiva una regla correctamente.Subject: p.ID
Clave de definición: rule.deleted (RuleDeletedDefinition)Evento: studio.lerian.tracer.rule.deletedTema: lerian.streaming.tracerDLQ de ruta: lerian.streaming.tracer.dlqSchema: 1.0.0 (application/json)Se emite cuando: DeleteRuleService elimina una regla correctamente.Subject: p.ID
Clave de definición: rule.drafted (RuleDraftedDefinition)Evento: studio.lerian.tracer.rule.draftedTema: lerian.streaming.tracerDLQ de ruta: lerian.streaming.tracer.dlqSchema: 1.0.0 (application/json)Se emite cuando: DraftRuleService mueve a DRAFT una regla correctamente.Subject: p.ID
Clave de definición: rule.updated (RuleUpdatedDefinition)Evento: studio.lerian.tracer.rule.updatedTema: lerian.streaming.tracerDLQ de ruta: lerian.streaming.tracer.dlqSchema: 1.0.0 (application/json)Se emite cuando: UpdateRuleCommand actualiza una regla correctamente.Subject: p.ID

Índice de eventos emitidos