Legman-Kafka
Legman for Kafka is a simple library build for streaming in strictly object mode with Legman. You can consumer Kafka messages as a stream and write it as objects into a Legman stream or produce message objects from a Legman stream into Kafka.
How to use
At first you have to install this module and Legman into your application:
npm i --save legman legman-kafka# OR yarn add legman legman-kafka
After that you can import and use Legman in your code.
Using Legman Kafka as a consumer in typescript
;; ;;kafkaLeg.connect .thenconsole.log"connected to Kafka" .catchconsole.error"error while connecting", err;; kafkaLeg .filtermessage.action === "create" .on"data", ;
Using Legman Kafka as a consumer in JavaScript
const Legman = ;const LegmanKafkaConsumer = ; const loggerLeg = app: "Identifier for my application";const kafkaLeg = "my_kafka_topic" "another_kafka_topic" noptions: "group.id": "example-consumer" "metadata.broker.list": "kafka:9092" ;kafkaLeg ;const processLog = loggerLeg; kafkaLeg ;
Using Legman Kafka as a producer in TypeScript
;; ;;; createLeg.pipekafkaProducerLeg;deleteLeg.pipekafkaProducerLeg; kafkaProducerLeg.connect .thenconsole.log"connected to Kafka" .catchconsole.error"error while connecting", err;
Using Legman Kafka as a producer in JavaScript
const Legman = ;const LegmanKafkaProducer = ; const kafkaProducerLeg = "my_kafka_topic" noptions: "client.id": "example-producer" "metadata.broker.list": "kafka:9092" ;const createLeg = action: "create";const deleteLeg = action: "delete"; createLeg;deleteLeg; kafkaProducerLeg ;
Script tasks
transpile
: Transpiles the library from TypeScript into JavaScript with type declarationslint
: Lints your code against the recommend TSLint ruleset.test
: Transpiles, lints and runs software-tests with coverage.leakage
: Transpiles, lints and runs software-tests with leakage tests.docker:lint
: Runs thelint
task in a docker environment.docker:test
: Runs thetest
task in a docker environment.docker:leakage
: Runs theleakage
task in a docker environment.docker:example
: Runs a simple example in a docker environment.
License
This module is under ISC license copyright 2018 by Arne Schubert