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 que se despliega 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 components/tracer de Midaz contiene las siguientes definiciones verificadas. Todas las 12 definiciones tienen llamadores de producción que no son de prueba. Ninguna es solo de catálogo. Midaz no inicializa un consumidor de lib-streaming para estos hechos.

Envelope de CloudEvents

Todo hecho JSON público usa el envelope compartido que aparece a continuación. Los headers transportan la información de enrutamiento y de esquema. El valor de Kafka transporta el objeto data en JSON.

Temas, manifiesto y enrutamiento

El tema de la aplicación identifica a Midaz Tracer, no a 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
  • Ruta DLQ: lerian.streaming.tracer.dlq
  • Manifiesto: GET /v1/streaming/manifest expone el catálogo JSON público y el mapeo de temas, incluso mientras la publicación está desactivada.

Semántica de entrega y fallos

La publicación se inicia solo cuando STREAMING_ENABLED=true y la configuración del broker tiene éxito. Cuando está habilitada, Midaz emite después del cambio de estado de negocio. No conecta un outbox writer, un outbox repository, un transactional outbox ni un outbox relay de lib-streaming.
  • Política: toda definición JSON pública es un fact con entrega directa, manejo de DLQ on_routable_failure y fallback_on_circuit_open configurados por lib-streaming v3.
  • Límite real de Midaz: como no hay un outbox writer conectado, el fallback de circuito abierto no puede persistir un evento. Las rutas de emisión registran y absorben los errores de publicación en lugar de devolverlos al comando de negocio. Esto no es un contrato de outbox atómico.
  • Límite del consumidor: Midaz no conecta ningún consumidor para estos hechos, y la política de productor directo no establece una garantía de entrega transaccional. Se recomienda que los consumidores hagan que los handlers sean idempotentes y deduplicar con (ce-source, ce-id).

Contratos completos de data

Estas declaraciones al 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 es nullable y nunca está ausente. Un comentario de tipo de origen conserva exactamente el tipo del inventario. Todos los campos de estos 12 payloads de Tracer están presentes (omitempty: false). Los campos nullable siguen llevando null cuando están ausentes.
Clave de definición: limit.activated (LimitActivatedDefinition)Evento: studio.lerian.tracer.limit.activatedTema: lerian.streaming.tracerRuta DLQ: lerian.streaming.tracer.dlqEsquema: 1.0.0 (application/json)Se dispara cuando: ActivateLimitCommand activa un límite con éxito.Asunto: p.ID
Clave de definición: limit.created (LimitCreatedDefinition)Evento: studio.lerian.tracer.limit.createdTema: lerian.streaming.tracerRuta DLQ: lerian.streaming.tracer.dlqEsquema: 1.0.0 (application/json)Se dispara cuando: CreateLimitCommand crea un límite con éxito.Asunto: p.ID
Clave de definición: limit.deactivated (LimitDeactivatedDefinition)Evento: studio.lerian.tracer.limit.deactivatedTema: lerian.streaming.tracerRuta DLQ: lerian.streaming.tracer.dlqEsquema: 1.0.0 (application/json)Se dispara cuando: DeactivateLimitCommand desactiva un límite con éxito.Asunto: p.ID
Clave de definición: limit.deleted (LimitDeletedDefinition)Evento: studio.lerian.tracer.limit.deletedTema: lerian.streaming.tracerRuta DLQ: lerian.streaming.tracer.dlqEsquema: 1.0.0 (application/json)Se dispara cuando: DeleteLimitCommand elimina un límite con éxito.Asunto: p.ID
Clave de definición: limit.drafted (LimitDraftedDefinition)Evento: studio.lerian.tracer.limit.draftedTema: lerian.streaming.tracerRuta DLQ: lerian.streaming.tracer.dlqEsquema: 1.0.0 (application/json)Se dispara cuando: DraftLimitCommand mueve un límite a DRAFT con éxito.Asunto: p.ID
Clave de definición: limit.updated (LimitUpdatedDefinition)Evento: studio.lerian.tracer.limit.updatedTema: lerian.streaming.tracerRuta DLQ: lerian.streaming.tracer.dlqEsquema: 1.0.0 (application/json)Se dispara cuando: UpdateLimitCommand actualiza un límite con éxito.Asunto: p.ID
Clave de definición: rule.activated (RuleActivatedDefinition)Evento: studio.lerian.tracer.rule.activatedTema: lerian.streaming.tracerRuta DLQ: lerian.streaming.tracer.dlqEsquema: 1.0.0 (application/json)Se dispara cuando: ActivateRuleService activa una regla con éxito.Asunto: p.ID
Clave de definición: rule.created (RuleCreatedDefinition)Evento: studio.lerian.tracer.rule.createdTema: lerian.streaming.tracerRuta DLQ: lerian.streaming.tracer.dlqEsquema: 1.0.0 (application/json)Se dispara cuando: CreateRuleCommand crea una regla con éxito.Asunto: p.ID
Clave de definición: rule.deactivated (RuleDeactivatedDefinition)Evento: studio.lerian.tracer.rule.deactivatedTema: lerian.streaming.tracerRuta DLQ: lerian.streaming.tracer.dlqEsquema: 1.0.0 (application/json)Se dispara cuando: DeactivateRuleService desactiva una regla con éxito.Asunto: p.ID
Clave de definición: rule.deleted (RuleDeletedDefinition)Evento: studio.lerian.tracer.rule.deletedTema: lerian.streaming.tracerRuta DLQ: lerian.streaming.tracer.dlqEsquema: 1.0.0 (application/json)Se dispara cuando: DeleteRuleService elimina una regla con éxito.Asunto: p.ID
Clave de definición: rule.drafted (RuleDraftedDefinition)Evento: studio.lerian.tracer.rule.draftedTema: lerian.streaming.tracerRuta DLQ: lerian.streaming.tracer.dlqEsquema: 1.0.0 (application/json)Se dispara cuando: DraftRuleService mueve una regla a DRAFT con éxito.Asunto: p.ID
Clave de definición: rule.updated (RuleUpdatedDefinition)Evento: studio.lerian.tracer.rule.updatedTema: lerian.streaming.tracerRuta DLQ: lerian.streaming.tracer.dlqEsquema: 1.0.0 (application/json)Se dispara cuando: UpdateRuleCommand actualiza una regla con éxito.Asunto: p.ID

Índice de eventos emitidos