jenkins中的kafka生产者代码无法将数据发送到融合的kafka主题

n1bvdmb6  于 2021-08-20  发布在  Java
关注(0)|答案(0)|浏览(242)

我在maven项目中有一个java文件,其中包含kafka生产者代码,用于向主题发送数据。

Producer.java
// some code

KafkaProducer<String, String> producer = new KafkaProducer<String, String>(props);

JSONObject jsonRecord = new JSONObject();
jsonRecord.put("integer", 1);
producer.send(new ProducerRecord<String, String>(topicName, null, mapper.writeValueAsString(jsonRecord)));

// some code

我使用命令运行这个文件

mvn exec:java -Dexec.mainClass=Producer

这些物业包括:

public static final String JAAS_SASL_TEMPLATE =
            "org.apache.kafka.common.security.plain.PlainLoginModule required username=\"%s\" %s=\"%s\";"
props.put(CommonClientConfigs.SECURITY_PROTOCOL_CONFIG, "SASL_SSL");
String jaasCfg = String.format(JAAS_SASL_TEMPLATE, "username", "auth_secret_key", "kafka_secret");
props.put(SaslConfigs.SASL_MECHANISM, "PLAIN");
props.put(SaslConfigs.SASL_JAAS_CONFIG, jaasCfg);
props.put(CommonClientConfigs.BOOTSTRAP_SERVERS_CONFIG, "example.aws.confluent.cloud:9092");       
props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, IntegerSerializer.class.getName());
props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, StringSerializer.class.getName());

当我在本地运行时,这段代码能够将数据发送到合流的Kafka主题
现在,我在jenkins管道中添加了一个阶段,在shell脚本中运行java文件

stage('Send data') {
            steps {
                sh '''
                  mvn exec:java -Dexec.mainClass=Producer
                  '''
                }
            }

所有其他功能都可以工作,但Kafka制作人无法将数据发送到合流的Kafka主题。也不会抛出错误。有人能帮我解决我所缺少的吗??

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题