aboutsummaryrefslogtreecommitdiff
path: root/order-service/app/kafka_producer.py
diff options
context:
space:
mode:
Diffstat (limited to 'order-service/app/kafka_producer.py')
-rw-r--r--order-service/app/kafka_producer.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/order-service/app/kafka_producer.py b/order-service/app/kafka_producer.py
new file mode 100644
index 0000000..6b24395
--- /dev/null
+++ b/order-service/app/kafka_producer.py
@@ -0,0 +1,20 @@
+import json
+from confluent_kafka import Producer
+
+conf = {"bootstrap.servers": "localhost:9092"}
+producer = Producer(conf)
+
+
+def delivery_report(err, msg):
+ if err is not None:
+ print(f"Message delivery failed: {err}")
+ else:
+ print(f"Message delivered to {msg.topic()} [{msg.partition()}]")
+
+
+def send_order_created_event(order_data: dict):
+ data_str = json.dumps(order_data)
+
+ producer.produce("orders", value=data_str.encode("utf-8"), callback=delivery_report)
+
+ producer.flush()