[ 
https://issues.apache.org/jira/browse/KAFKA-6675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16795993#comment-16795993
 ] 

Valeria Vasylieva commented on KAFKA-6675:
------------------------------------------

[~rhauch] I have investigated the actual log:

if we have such configuration:

 
{code:java}
plugin.path=/etc/kafka/kafka_2.11-2.1.0/connect-plugins, 
/etc/kafka/kafka_2.11-2.1.0/connect-plugins-debezium
{code}
then, we have such output for plugin.path plugins:

 

 
{code:java}
[2019-03-19 13:32:47,277] INFO Registered loader: 
PluginClassLoader{pluginLocation=file:/etc/kafka/kafka_2.11-2.1.0/connect-plugins/confluentinc-kafka-connect-cassandra-1.0.2/}
 (org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:243)
[2019-03-19 13:32:47,278] INFO Added plugin 
'io.confluent.connect.cassandra.CassandraSinkConnector' 
(org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:172)
[2019-03-19 13:32:47,279] INFO Loading plugin from: 
/etc/kafka/kafka_2.11-2.1.0/connect-plugins/confluentinc-kafka-connect-avro-converter-5.1.2
 (org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:220)
[2019-03-19 13:32:47,694] INFO Registered loader: 
PluginClassLoader{pluginLocation=file:/etc/kafka/kafka_2.11-2.1.0/connect-plugins/confluentinc-kafka-connect-avro-converter-5.1.2/}
 (org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:243)
[2019-03-19 13:32:47,694] INFO Added plugin 
'io.confluent.connect.avro.AvroConverter' 
(org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:172)
[2019-03-19 13:32:47,695] INFO Loading plugin from: 
/etc/kafka/kafka_2.11-2.1.0/connect-plugins-debezium/debezium-connector-mysql 
(org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:220)
[2019-03-19 13:32:48,083] INFO Registered loader: 
PluginClassLoader{pluginLocation=file:/etc/kafka/kafka_2.11-2.1.0/connect-plugins-debezium/debezium-connector-mysql/}
 (org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:243)
[2019-03-19 13:32:48,090] INFO Added plugin 
'io.debezium.connector.mysql.MySqlConnector' 
(org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:172)
[2019-03-19 13:32:50,128] INFO Registered loader: 
sun.misc.Launcher$AppClassLoader@764c12b6 
(org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:243)
[2019-03-19 13:32:50,131] INFO Added plugin 
'org.apache.kafka.connect.tools.MockSinkConnector' 
(org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:172)
...
[2019-03-19 13:32:50,161] INFO Added aliases 'CassandraSinkConnector' and 
'CassandraSink' to plugin 
'io.confluent.connect.cassandra.CassandraSinkConnector' 
(org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:390)
[2019-03-19 13:32:50,161] INFO Added aliases 'MySqlConnector' and 'MySql' to 
plugin 'io.debezium.connector.mysql.MySqlConnector' 
(org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:390){code}
and such output for classpath plugins:

 
{code:java}
[2019-03-19 13:32:50,131] INFO Added plugin 
'org.apache.kafka.connect.tools.MockSinkConnector' 
(org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:172)
[2019-03-19 13:32:50,132] INFO Added plugin 
'org.apache.kafka.connect.tools.MockConnector' 
(org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:172)
...
[2019-03-19 13:32:50,163] INFO Added aliases 'MockConnector' and 'Mock' to 
plugin 'org.apache.kafka.connect.tools.MockConnector' 
(org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:390)
[2019-03-19 13:32:50,164] INFO Added aliases 'MockSinkConnector' and 'MockSink' 
to plugin 'org.apache.kafka.connect.tools.MockSinkConnector' 
(org.apache.kafka.connect.runtime.isolation.DelegatingClassLoader:390)
{code}
 

What is the goal of this task, to make the output more clear and pretty? Almost 
all the information (including path), that you stated is already available in 
the log.

> Connect workers should log plugin path and available plugins more clearly
> -------------------------------------------------------------------------
>
>                 Key: KAFKA-6675
>                 URL: https://issues.apache.org/jira/browse/KAFKA-6675
>             Project: Kafka
>          Issue Type: Improvement
>          Components: KafkaConnect
>    Affects Versions: 0.11.0.1
>            Reporter: Randall Hauch
>            Assignee: Valeria Vasylieva
>            Priority: Minor
>
> Users struggle with setting the plugin path and properly installing plugins. 
> If users get any of this wrong, they get strange errors only after they run 
> the worker and attempt to deploy connectors or use transformations. 
> The Connect worker should more obviously output the plugin path directories 
> and the available plugins. For example, if the {{plugin.path}} were:
> {code}
> plugin.path=/usr/local/share/java,/usr/local/plugins
> {code}
> then the worker might output something like the following information in the 
> log:
> {noformat}
> Looking for plugins on classpath and inside plugin.path directories:
>   /usr/local/share/java
>   /usr/local/plugins
>  
> Source Connector(s):
>   FileStreamSource  (org.apache.kafka.connect.file.FileStreamSourceConnector) 
>       @ classpath
>   FileStreamSink    (org.apache.kafka.connect.file.FileStreamSinkConnector)   
>       @ classpath
>   JdbcSource        (io.confluent.connect.jdbc.JdbcSourceConnector)           
>       @ /usr/local/share/java/kafka-connect-jdbc
>   MySql             (io.debezium.connector.mysql.MySqlConnector)              
>       @ /usr/local/plugins/debezium-connector-mysql
> Converter(s):
>   JsonConverter         (org.apache.kafka.connect.json.JsonConverter)         
>       @ classpath
>   ByteArrayConverter    
> (org.apache.kafka.connect.converters.ByteArrayConverter)    @ classpath
>   SimpleHeaderConverter 
> (org.apache.kafka.connect.converters.SimpleHeaderConverter) @ classpath
>   AvroConverter         (io.confluent.connect.avro.AvroConverter)             
>       @ /usr/local/share/java/kafka-serde-tools
> Transformation(s):
>   InsertField       (org.apache.kafka.connect.transforms.InsertField)         
>       @ classpath
>   ReplaceField      (org.apache.kafka.connect.transforms.ReplaceField)        
>       @ classpath
>   MaskField         (org.apache.kafka.connect.transforms.MaskField)           
>       @ classpath
>   ValueToKey        (org.apache.kafka.connect.transforms.ValueToKey)          
>       @ classpath
>   HoistField        (org.apache.kafka.connect.transforms.HoistField)          
>       @ classpath
>   ExtractField      (org.apache.kafka.connect.transforms.ExtractField)        
>       @ classpath
>   SetSchemaMetadata (org.apache.kafka.connect.transforms.SetSchemaMetadata)   
>       @ classpath
>   RegexRouter       (org.apache.kafka.connect.transforms.RegexRouter)         
>       @ classpath
>   TimestampRouter   (org.apache.kafka.connect.transforms.TimestampRouter)     
>       @ classpath
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to