[ https://issues.apache.org/jira/browse/KAFKA-6675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16811926#comment-16811926 ]
Randall Hauch commented on KAFKA-6675: -------------------------------------- [~nimfadora], I guess my proposition is that the existing log is simply not clear enough and requires the user to look very closely at multiple lines in the log to really understand what's going on. I'm not that set on my specific proposal in the description, but it would be nice to see a single log message for each connector, converter, and transform class that is a lot more clear as to which are available, where it were found (e.g., classpath vs plugin location), the component version, the aliases if any that were defined, and ideally even warn whether multiple versions were found for a particular connector, converter, or transform. It might also be nice if they were interspersed with the various scan/search log messages, so perhaps I'm asking for _additional_ INFO level log messages after all scanning has been done. Having said this, I don't think these changes should be that invasive. IOW, let's try to add the above log messages without changing what information is collected and minimizing changes to the existing code. > 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)