KCL

A library that implements the API for the Amazon Kinesis Client Library Multilang Daemon. This allows you to write your kinesis message processing logic in Elxiir while taking advantage of the Java Kinesis Client Library's ability to handle shards automatically.

Install

Add this to your dependencies

    {:kinesis_client, "~> 0.1.0"},

and run mix deps.get

Usage

This is a library, so the best way to use it is with another elixir app that is configured to run as an Escript, that can then be started by the Multilang Daemon. Here's an example of very basic usage:

  defmodule MyProcessor do
    use KinesisClient.RecordProcessor

    def process_record(data), do: "I got #{data}"
  end

Here, data is an array of arbitrary bytes. You can read more about the Multilang API here.

NOTE: This project doesn't include the multilang Java library. I suggest you take a look at my Kinesis Multilang project, as it provides an easy way to get the java client and it's dependencies.

Roadmap

The list right now is:

I don't foresee the API changing much going forward, but I'm reserving that right until I feel that it's solid enough to be 1.0.

Contributions

Much of this work was take from the amazon-kinesis-client-elixir. The author was generous enough to put it under the Apache 2.0 License.