Skip to main content

Python MAPR Kafka REST wrapper

Project description

pymapr-kafkarest

Introduction

The aim of the project is to create a super-simple wrapper for MAPR Kafka REST proxy. We're trying to allow users to interact with MAPR Kafka in an elementary way and writing less code as possible.

The original documentation of the REST calls can be found here.

Installation

Soon available via pip:

pip install pymapr-kafkarest

Runtime configurations

  • KAFKAREST_LOG_LEVEL: allows to set the log level... default to DEBUG

TBC

Usage

Import the lib

from pymapr_kafkarest import MaprKlient

Define basic attributes

base_url = 'http://my-endopoint:8082'
user_group = 'foo'
topics = ['/streams/foo:bar']

and instantiate the client

mk = MaprKlient(base_url, user_group, topics=topics)

Connect, subscribe and consume messages as follows:

base_url = 'http://my-endopoint:8082'

if __name__ == '__main__':
    mk = MaprKlient(base_url, user_group, headers=headers, topics=topics)
    mk.connect(clear=True)
    mk.subscribe()
    
    messages = mk.consume()
    
    print(messages)

Connect and produce messages:

from pymapr_kafkarest import MaprKlient
from pymapr_kafkarest.kafkarest import MaprKProducer

base_url = 'https://localhost:8082'
headers = {}
user_group = 'me'

if __name__ == '__main__':

    # producing
    mp = MaprKProducer(base_url, user_group, headers=headers)

    msgs = [dict(key='0099', value=dict(color='red', shape='square'))]

    mp.produce(messages=msgs, topic='/streams/foo')

TODO

  • a lot of methods are not yet implemented
  • full read the docs
  • chain connect, subscribe and consume in a new method named stream

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pymapr-kafkarest-0.1.1.tar.gz (5.3 kB view hashes)

Uploaded Source

Built Distribution

pymapr_kafkarest-0.1.1-py3-none-any.whl (5.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page