An open API service indexing awesome lists of open source software.

https://github.com/f-squirrel/mrcond

Production-ready system for streaming MongoDB change events to RabbitMQ, featuring a robust library and a CLI daemon for deployment.
https://github.com/f-squirrel/mrcond

cdc connector mongo rabbitmq rust

Last synced: 3 months ago
JSON representation

Production-ready system for streaming MongoDB change events to RabbitMQ, featuring a robust library and a CLI daemon for deployment.

Awesome Lists containing this project

README

          

[![Test Suite](https://github.com/f-squirrel/mrcond/actions/workflows/ci.yml/badge.svg)](https://github.com/f-squirrel/mrcond/actions/workflows/ci.yml)
[![Audit](https://github.com/f-squirrel/mrcond/actions/workflows/audit.yml/badge.svg?branch=master)](https://github.com/f-squirrel/mrcond/actions/workflows/audit.yml)
[![Semver](https://github.com/f-squirrel/mrcond/actions/workflows/semver.yml/badge.svg?branch=master)](https://github.com/f-squirrel/mrcond/actions/workflows/semver.yml)
[![Dependency status](https://deps.rs/crate/mrcond/latest/status.svg)](https://deps.rs/crate/mrcond)
[![LICENSE](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)

# MongoDB-RabbitMQ Connector

This repository contains a production-ready system for streaming MongoDB change events to RabbitMQ, featuring a robust library and a CLI daemon for deployment.

## Crates

- [`mrcon`](./crates/mrcon/README.md): Core library for MongoDB-to-RabbitMQ streaming, resume tokens, and connector logic.
- [`mrcond`](./mrcond/README.md): CLI daemon for running the connector as a supervised service, with healthcheck and Docker support.

## Quick Start

1. See [`mrcond/README.md`](./mrcond/README.md) for CLI usage, configuration, and deployment instructions.
2. See [`mrcon/README.md`](./crates/mrcon/README.md) for library API documentation and integration details.

## Development

- Use the provided `Makefile` for building, testing, and running integration tests with Docker Compose.
- To run with a custom config: `make run-with-config MRCON_CONFIG_PATH=path/to/config.yaml`
- Each crate is self-documented; see their respective README files for details.

## License

Licensed under the MIT License. See each crate for details.