Back to Catalog
Integration
System Management
Message History
Every component stamps itself on the message — full processing trail baked into the payload.
Intent & Description
Real-world Use Case
Integration pipeline audit — an InvoiceMessage passes through 6 steps (validation, enrichment, translation, routing, transformation, delivery). Each step appends its ID and timestamp to the message history array. Support team can read the message history to reconstruct exactly what happened to any specific invoice, when, and in what order.
Source
📌 TL;DR
Message History = each hop stamps the message with its fingerprint. Full processing trail in the payload. Simple to implement, grows message size. Consider OpenTelemetry for modern distributed tracing instead.
Advantages
- Self-contained tracing — no external tracing infrastructure required
- History travels with the message — always available at any point in the pipeline
- Simple to implement — just an append to an array field
- Enables post-mortem analysis by examining message history
Disadvantages
- Message size grows with each processing step — long pipelines create large messages
- History in the message can be tampered with — not suitable as a security audit trail
- Does not capture failed steps (message did not make it there to stamp history)
- Replaced in modern systems by distributed tracing (OpenTelemetry, Jaeger) which does not pollute message payloads