|
23 | 23 |
|
24 | 24 |
|
25 | 25 | # function produce_msgs starts producing messages with Faker
|
26 |
| -def produce_msgs(cert_folder = '~/kafka-pizza/', |
| 26 | +def produce_msgs(security_protocol='SSL', |
| 27 | + cert_folder = '~/kafka-pizza/', |
27 | 28 | hostname = 'hostname',
|
28 | 29 | port = '1234',
|
29 | 30 | topic_name = 'pizza-orders',
|
30 | 31 | nr_messages = -1,
|
31 | 32 | max_waiting_time_in_sec = 5,
|
32 | 33 | subject = 'pizza'):
|
33 |
| - if cert_folder.lower() == 'plaintext': |
| 34 | + if security_protocol.upper() == 'PLAINTEXT': |
34 | 35 | producer = KafkaProducer(
|
35 | 36 | bootstrap_servers=hostname + ':' + port,
|
36 | 37 | security_protocol='PLAINTEXT',
|
@@ -92,20 +93,23 @@ def produce_msgs(cert_folder = '~/kafka-pizza/',
|
92 | 93 |
|
93 | 94 | def main():
|
94 | 95 | parser = argparse.ArgumentParser()
|
95 |
| - parser.add_argument('--cert-folder', help='Path to folder containing required Kafka certificates or use plaintext to work with unsecure Kafka', required=True) |
| 96 | + parser.add_argument('--security-protocol', help='Security protocol for Kafka (PLAINTEXT, SSL)', required=True) |
| 97 | + parser.add_argument('--cert-folder', help='Path to folder containing required Kafka certificates. Required --security-protocol equal SSL', required=False) |
96 | 98 | parser.add_argument('--host', help='Kafka Host (obtained from Aiven console)', required=True)
|
97 | 99 | parser.add_argument('--port', help='Kafka Port (obtained from Aiven console)', required=True)
|
98 | 100 | parser.add_argument('--topic-name', help='Topic Name', required=True)
|
99 | 101 | parser.add_argument('--nr-messages', help='Number of messages to produce (0 for unlimited)', required=True)
|
100 | 102 | parser.add_argument('--max-waiting-time', help='Max waiting time between messages (0 for none)', required=True)
|
101 | 103 | parser.add_argument('--subject', help='What type of content to produce (possible choices are [pizza, userbehaviour, stock, realstock, metric] pizza is the default', required=False)
|
102 | 104 | args = parser.parse_args()
|
| 105 | + p_security_protocol = args.security_protocol |
103 | 106 | p_cert_folder =args.cert_folder
|
104 | 107 | p_hostname =args.host
|
105 | 108 | p_port =args.port
|
106 | 109 | p_topic_name=args.topic_name
|
107 | 110 | p_subject=args.subject
|
108 |
| - produce_msgs(cert_folder=p_cert_folder, |
| 111 | + produce_msgs(security_protocol=p_security_protocol, |
| 112 | + cert_folder=p_cert_folder, |
109 | 113 | hostname=p_hostname,
|
110 | 114 | port=p_port,
|
111 | 115 | topic_name=p_topic_name,
|
|
0 commit comments