expanso-dead-letter-queue

Route failed Kafka messages to a dead-letter topic after retries with exponential backoff.

1|Updated Feb 1, 2026
One-click install
npx skills add https://github.com/expanso-io/expanso-skills --skill expanso-dead-letter-queue
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: expanso-dead-letter-queue
Source: https://github.com/expanso-io/expanso-skills/tree/main/skills/recipes/dead-letter-queue
Command: npx skills add https://github.com/expanso-io/expanso-skills --skill expanso-dead-letter-queue

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

This Skill addresses the critical issue of handling messages that fail processing in a message queue system, preventing data loss and enabling robust error management.

Core Features & Use Cases

  • Dead-Letter Queueing: Automatically routes failed messages to a designated DLQ topic.
  • Retry Logic: Implements exponential backoff for retrying failed messages up to a configurable limit.
  • Error Metadata Enrichment: Adds detailed error information to failed messages for easier debugging.
  • Use Case: In a high-throughput event processing system, messages that fail validation or processing can be sent to a DLQ for later analysis, while transient errors are retried automatically.

Quick Start

Run the dead-letter-queue skill using the default Kafka brokers and input topic.

Frequently Asked Questions about expanso-dead-letter-queue

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I handle failed messages in Kafka without losing data?

To handle failed messages in Kafka without data loss, you can implement a dead-letter queue pattern that routes unprocessable messages to a designated DLQ topic after exhausting automated retries, preserving them for later analysis.

What is the best way to retry failed Kafka messages with exponential backoff?

The best way to retry failed Kafka messages with exponential backoff is to use a dead-letter queue pattern that automatically re-attempts processing up to a configurable limit before permanently routing the message to a DLQ topic.

How does a dead-letter queue improve error handling in message processing systems?

A dead-letter queue improves error handling in message processing systems by isolating permanently failed messages, enriching them with detailed error metadata for easier debugging, and preventing data loss while maintaining high-throughput processing.

Can I add error metadata to failed messages routed to a Kafka DLQ?

Yes, you can add error metadata to failed messages routed to a Kafka DLQ. This dead-letter queue implementation enriches failed messages with detailed error categorization and contextual information to simplify troubleshooting.

When should I route Kafka messages to a DLQ instead of discarding them?

You should route Kafka messages to a DLQ instead of discarding them when messages fail validation or processing in a high-throughput event system, ensuring transient errors are retried while permanently failed data remains accessible for later analysis.

Does this dead-letter queue pattern require additional dependencies to process Kafka topics?

No, this dead-letter queue pattern requires no additional dependencies to process Kafka topics. It operates independently using built-in scripts to manage message routing, exponential backoff retries, and error metadata enrichment.