Skip to main content

Python adapter for Kafka

Project description

NAAS-PYTHON-KAFKA

This is the Kafka adapter for Python: it allows you to easily connect Python services to Apache Kafka via Python.

The implementation is a wrapper around Confluent-Kafka-Python:

  • AVRO schema's and messages: both key's and values should have a schema. as explained here.
  • Kafka consumer and producer for the test-bed topics.
  • Management
    • Heartbeat (topic: system-heartbeat), so you know which clients are online. Each time the test-bed-adapter is executed, it starts a heartbeat process to notify the its activity to other clients.

Installation

You need to install Python 3+.

To run the examples you will need to install the dependencies specified on the file requirements.txt.

For that, run

python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt # Or instead of `pip`, use `pip3`

from the project folder.

Examples and usage

  • url_producer: creates a message with 4 URLs to RSS feeds on the topic ('system_rss_urls')
  • rss_producer: listens to url messages ('system_rss_urls') and produces RSS messages ('system_rss_urls')
  • rss_consumer: listens to RSS messages ('system_rss_urls') and prints them to console.

Uploading to PyPi

  1. Ensure you have the necessary tools installed: Make sure you have setuptools and wheel installed. You can install them using pip:
pip install setuptools wheel
Build the distribution files: In the root directory of your project, run the following command to build the distribution files (wheel and source distribution):
  1. Build the distribution files: In the root directory of your project, run the following command to build the distribution files (wheel and source distribution):
python setup.py sdist bdist_wheel
This command will generate the distribution files inside the dist directory.

This command will generate the distribution files inside the dist directory.

  1. Register an account on PyPI: If you haven't done so already, create an account on PyPI and verify your email address.

  2. Install and configure twine: Install twine, a tool used to upload packages to PyPI, using pip:

pip install twine
Upload the package to PyPI: Use twine to upload the distribution files to PyPI:
  1. Upload the package to PyPI: Use twine to upload the distribution files to PyPI:
twine upload dist/*
This command will prompt you to enter your PyPI username and password. Once provided, twine will upload the distribution files to PyPI.

This command will prompt you to enter your PyPI username and password. Once provided, twine will upload the distribution files to PyPI.

  1. Verify the package on PyPI: Visit your package page on PyPI to ensure that the package has been successfully uploaded and published.

Remember to update the version number in your setup.py file for each new release to avoid conflicts.

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

osint-python-test-bed-adapter-2.3.5.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file osint-python-test-bed-adapter-2.3.5.tar.gz.

File metadata

File hashes

Hashes for osint-python-test-bed-adapter-2.3.5.tar.gz
Algorithm Hash digest
SHA256 09d83d0eb3eb70deb77564bfd66a33d5b6382edbcfffe0c426781f0692fd9ca0
MD5 f40a08f33f3bf705369747d762ba588f
BLAKE2b-256 edcca6278381f71cc63f468be1b12861cd916d7cb42a19a7486ec75d45612b59

See more details on using hashes here.

File details

Details for the file osint_python_test_bed_adapter-2.3.5-py3-none-any.whl.

File metadata

File hashes

Hashes for osint_python_test_bed_adapter-2.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 b9b42d54465c293a1b2cec1a25a92a5246a9fbeeb4ed3ca6c2c8bdd09a2bd5fd
MD5 1279de00c3f5ba73ae1ba670f624867b
BLAKE2b-256 e0bfd1c406a1b274f59a37d28ee7be2736138cfe9da3bc528ccb8279c4297195

See more details on using hashes here.

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