dead-letter-queues
Installation
SKILL.md
Dead Letter Queues
Comparable to: SQS DLQ, RabbitMQ dead-letter exchanges
Key Concepts
Use the concepts below when they fit the task. Not every queue failure needs manual DLQ intervention.
- Jobs move to a DLQ after exhausting
max_retrieswith exponential backoff (backoff_ms * 2^attempt) - Each DLQ entry preserves the original payload, last error, timestamp, and job metadata
- Redrive via the built-in
iii::queue::redrivefunction or theiii triggerCLI command - Redriving resets attempt counters to zero, giving jobs a fresh retry cycle
- Always investigate and deploy fixes before redriving — blindly redriving repeats failures
- DLQ support available on Builtin and RabbitMQ adapters
Architecture
A queue consumer fails processing a job. The engine retries with exponential backoff up to max_retries. Once exhausted, the message moves to the DLQ. An operator inspects the failure, deploys a fix, then redrives the DLQ to replay all failed jobs.
Related skills