Skip to content

Getting Started

Server prerequisites

Your Postgres 14+ server must already have:

  • wal_level = logical set in postgresql.conf required for logical replication.
  • A role with the REPLICATION attribute (or superuser) for the connection string you give Wallaby.
  • Headroom in max_replication_slots and max_wal_senders (at least one slot/sender per Wallaby cluster).

Wallaby validates these on startup and fails fast with an actionable error if something is missing.

Choose your configuration

Wallaby is configured through AddWallaby, with a storage provider supplying the model of what to capture and a sink as an output destination. Pick the setup that fits your application. Optionally, if you don't want Wallaby to capture anything itself, let it provision and maintain publications and replication slots for an external pgoutput consumer:

providers
efcore provider
relational storage
EF Core Setup →
marten provider
document storage
Marten Setup →
external slots
provision publications + slots, no capture
External Slots →
sinks
meilisearch
search index
Meilisearch →
http
POST to any endpoint
HTTP →
opensearch
coming soon
custom
your own delivery target
Custom Sinks →
pgoutput consumer
Airbyte / Fivetran / etc
reads the slot directly

Mixing Providers

The EF Core and Marten providers can run side by side in one Wallaby instance, sharing a single replication slot - see the providers overview.

Deployment

It's highly recommended to deploy Wallaby as a separate service, not as an integrated part of your main application. This allows you to scale CDC operations independently as the need arises.

Next steps