ankusa_kafka
Kafka sink adapter for the Ankusa webhook ingestion framework.
This package exists so ankusa core stays free of the :brod dependency (and
the crc32cer NIF it pulls in). Only deployments that opt into a Kafka sink
need this package.
Installation
def deps do
[
{:ankusa, "~> 0.6"},
{:ankusa_kafka, "~> 0.6"}
]
end
Usage
See Ankusa.Sink.Kafka moduledoc for configuration and semantics.
config :ankusa,
sources: %{
"orders" => [
sinks: [
{Ankusa.Sink.Kafka,
brokers: ["localhost:9092"],
topic: "ankusa.events"}
]
]
}
Sinks belong to a source. Ankusa.Config.new/1 takes the same sources for a
non-default instance.
Testing
Requires a live Redpanda/Kafka broker:
docker compose up -d --wait
mix test
docker compose down -v