Hi Yeikel,

Connector configurations are represented as String key-value pairs
throughout Kafka Connect, including during the creation of connectors
(regardless of whether or not any config providers are configured),
configuration updates etc. The Javadoc for the Connector class [1] and the
connector development guide [2] also demonstrate this constraint. Connector
plugin implementations should be handling any required parsing on their end
(ideally by leveraging the ConfigDef class [3]). Do let me know in case you
have any further questions!

Thanks,
Yash

[1] -
https://kafka.apache.org/35/javadoc/org/apache/kafka/connect/connector/Connector.html

[2] - https://kafka.apache.org/documentation/#connect_developing
[3] -
https://kafka.apache.org/35/javadoc/org/apache/kafka/common/config/ConfigDef.html


On Mon, Sep 18, 2023 at 7:20 PM Yeikel Santana <em...@yeikel.com> wrote:

> Hello all,
>
> From what I've seen so far, with
> https://cwiki.apache.org/confluence/display/KAFKA/KIP-297%3A+Externalizing+Secrets+for+Connect+Configurations,
> Kafka provides a mechanism to externalize secrets, which was later extended
> with
> https://cwiki.apache.org/confluence/display/KAFKA/KIP-887%3A+Add+ConfigProvider+to+make+use+of+environment+variables,
> and possibly others.
>
> The challenge that I am facing at the moment is that ConfigData is
> configured as a Map<String, String>, whereas my values are of other types
> that are not Strings, such as floats and integers.
>
> To give a more concrete example, some kafka-connectors allow me to
> configure values such as timeouts that I'd like to control per environment
> using externalization systems. Since these values are numeric, they fail to
> be read with parsing exceptions.
>
> Is the expectation that connectors handle this on their end, or what
> options do we have to externalize values so that they are read back using a
> different type other than Strings?
>
> Thank you!

Reply via email to