Skip to main content
Join the official Python Developers Survey 2018 and win valuable prizes: Start the survey!

An XO core utils project.

Project description

# xoc-utils-python

An XO core project in python that provides utils functionalities, including data processing and Kafka client.

----

## Kafka

### Producer

```
producer = KProducer('kafka_server_origin', 'service_name')
message = json.dumps({
'hello': 'world'
})
producer.produce('topic_name', message)
```
Example [here](examples/kafka_producer.py)

### Consumer

Consumer without retry
```
consumer = KConsumer('kafka_server_origin', 'group_id', 'service_name', poll_timeout=1, retries=0)

# Add handler for a topic
def printMsg(msg):
print('consuming message: ', msg)
raise Exception('I am Exception.')
consumer.add_handler('topic_name', printMsg)
consumer.consume()
```
Example [here](examples/kafka_consumer.py).
If you want to use retry feature, you can just set retries to the times you want it to retry, like 3.
Example [here](examples/kafka_consumer_retry.py)


## Others

### Singleton
This provide you a way to create a singleton instance.

```
from xoc_utils import Singleton

class YourClass(metaclass=Singleton):
pass
```


## Development
You get start from [here](https://packaging.python.org/tutorials/distributing-packages/#packages).

To debug your package, you don't have to release it, you can just run
```
python setup.py install
```
then it will be installed on your machine.

Project details


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
xoc_utils_python-0.0.2-py3.6.egg (9.7 kB) Copy SHA256 hash SHA256 Egg 3.6 May 31, 2018
xoc-utils-python-0.0.2.tar.gz (5.7 kB) Copy SHA256 hash SHA256 Source None May 31, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page