confluentinc / kafka-rest

Confluent REST Proxy for Kafka
https://docs.confluent.io/current/kafka-rest/docs/index.html
Other
31 stars 642 forks source link

Annoyning warn messages: Property [...] is not valid (kafka.utils.VerifiableProperties:70) #741

Open akrava opened 4 years ago

akrava commented 4 years ago

Hi all! I have some issue in kafka-rest v4.1 and idea how to resolve it.

Description:

There are WARN messages in log file, that repeats in some time, about not valid properties, but such properties are present in documentation.

Version 4.1.4

Steps to reproduce:

Add to kafka-rest config file config/kafka-rest.properties such properties:

ssl.keystore.location=...
ssl.keystore.password=...
ssl.key.password=...

Then, restart kafka-rest service and keep it running for a couple of minutes

Actual result:

In log file we can see warn messages:

$ grep Property logs/kafka-rest.log
[2020-08-28 10:06:43,534] INFO Property zookeeper.connect is overridden to (kafka.utils.VerifiableProperties:66)
[2020-08-28 10:06:43,547] INFO Property group.id is overridden to (kafka.utils.VerifiableProperties:66)
[2020-08-28 10:06:43,547] WARN Property listeners is not valid (kafka.utils.VerifiableProperties:70)
[2020-08-28 10:06:43,547] WARN Property ssl.key.password is not valid (kafka.utils.VerifiableProperties:70)
[2020-08-28 10:06:43,547] WARN Property ssl.keystore.location is not valid (kafka.utils.VerifiableProperties:70)
[2020-08-28 10:06:43,547] WARN Property ssl.keystore.password is not valid (kafka.utils.VerifiableProperties:70)

Expected result:

No WARN messages about not valid properties, because this options are present in documentation so it could not be valid

akrava commented 4 years ago

After debugging a couple of times, I realized, that issue is in line in file: https://github.com/confluentinc/kafka-rest/blob/1bfea41f7cd8aa5ffc4abef248f9c44eab510806/kafka-rest/src/main/java/io/confluent/kafkarest/SimpleConsumerFactory.java#L38

It seems that we should pass only client and consumer properties in such way, isn't it?

simpleConsumerConfig = new SimpleConsumerConfig(config.getConsumerProperties());

Created PR #742, who can review it? Thanks.