Skip to main content

Crate outbox_core

Crate outbox_core 

Source
Expand description

Transactional outbox primitives shared by every storage and transport adapter in the workspace.

The crate is split into two sides:

Storage and transport backends live in sibling crates (outbox-postgres, outbox-redis, outbox-kafka). This crate only defines the traits they must satisfy.

§Features

  • sqlx — derives sqlx::Type / sqlx::FromRow on the domain types so storage adapters can map rows without manual conversion.
  • dlq — enables the dead-letter-queue heap (see DlqHeap); the worker then tracks per-event failure counts on every publish attempt.
  • metrics — emits outbox.events_total and outbox.publish_duration_seconds via the metrics crate.
  • full — turns on sqlx, dlq, and metrics together.

§Getting started

Import the common types via the prelude module:

use outbox_core::prelude::*;

Modules§

prelude
Curated set of re-exports for typical integrator code.