Most CDC platforms expect you to bend your architecture around them — a managed service, a proprietary message bus, a heavyweight agent. Log Ripper is designed to drop into the architecture you already have.
The same capture core ships as the standalone oni_ripper daemon and as a shared library, liboni_ripper.so, with a public C API. The daemon mode handles the standard "run it next to Informix and ship changes somewhere" pattern. The library mode lets you embed the same pipeline inside a long-running host application — a Java service via JNI, a Python pipeline, another C daemon — and receive captured changes synchronously through a per-transaction callback. No signal handlers installed, no hidden threads outside the engine, you stay in control of the process.
A single capture path feeds multiple sinks: SQL files for replay-style integration, RFC 8259 JSON or RFC 4180 CSV for streaming and ETL, native PostgreSQL / MySQL / MariaDB / Db2 connectors via dlopen against the vendor client libraries, ODBC for any other target, and Kafka via librdkafka for event-driven architectures. You pick the integration pattern that fits the consumer; the source side doesn't change.
Captured Informix-flavoured SQL is rewritten per target dialect at output time — INTERVAL syntax, BOOLEAN literals, DATETIME format, DECIMAL precision wrap, embedded NUL splice, BLOB hex form, identifier quoting, MDY / TODAY built-ins. The per-dialect rewrite forms are listed on the SQL Mapping page. New target dialects plug in as additional formatter functions; the walker generalises across them.
Per-table threading bounds blast radius — one slow target doesn't stall the rest. LSN checkpointing into a state file means recovery is deterministic. Schema drift is detected at three layers, with archive-layout swap available on drift events and synthetic ALTER TABLE emission so the migration replays at the target. A single table can be released for online ALTER without touching the rest of the pipeline. Lag is observable via the [LSN] log line; DISCARD events are exposed through a configurable shell hook so they can flow into whatever observability stack you already run. Target-offline buffering keeps captures flowing through brief destination outages.
Output is open formats (SQL, JSON, CSV) or open protocols (libpq, libmysqlclient, libmariadb, libdb2, ODBC, Kafka). The library exposes a documented C API. Configuration is file-based with a SIGHUP reload contract. RPM and DEB packaging integrates with standard Linux deployment tooling — systemd unit, sysusers, tmpfiles, EnvironmentFile — so it fits any reasonable platform standard without bespoke runbooks.
If you're designing the path off, around, or alongside an Informix database, Log Ripper is the component that turns the logical log into a first-class data source.
The Embed Ripper / Library Overview covers the C API surface; the SQL Mapping page lists the per-target rewrite forms.
To discuss how Oninit ® can assist please call on +1-913-732-8892 or alternatively just send an email specifying your requirements.
You get all this for free.. think about what you get if you pay us