fvaleri commented on a change in pull request #193:
URL: 
https://github.com/apache/camel-kafka-connector/pull/193#discussion_r428256345



##########
File path: 
core/src/main/java/org/apache/camel/kafkaconnector/utils/TaskHelper.java
##########
@@ -93,4 +101,40 @@ private static Boolean stringStartWithOneOfPrefixes(String 
s, Set<String> prefix
         }
         return false;
     }
+
+    public static <CFG extends AbstractConfig> void logRecordContent(Logger 
logger, ConnectRecord<?> record, CFG config) {
+        if (logger != null && record != null && config != null) {
+            // do not log record's content by default, as it may contain 
sensitive information
+            LoggingLevel level = LoggingLevel.OFF;
+            try {
+                final String key = (record instanceof SourceRecord)
+                    ? 
CamelSourceConnectorConfig.CAMEL_SOURCE_CONTENT_LOG_LEVEL_CONF
+                    : 
CamelSinkConnectorConfig.CAMEL_SINK_CONTENT_LOG_LEVEL_CONF;
+                level = 
LoggingLevel.valueOf(config.getString(key).trim().toUpperCase());
+            } catch (Throwable e) {
+            }
+            if (level != LoggingLevel.OFF && 
Arrays.asList(LoggingLevel.values()).contains(level)) {

Review comment:
       Conflicts fixed.
   
   > is this `Arrays.asList(LoggingLevel.values()).contains(level)` check 
needed? or you can just log a warning in the `default` clasue of the `switch 
case`?
   
   Added a warning message in case of invalid level, thanks.
   
   > In the end have you decided to not use `CamelLogger`? I am not implying is 
wrong, I am just asking.
   
   We can use it, but, unless I'm missing something, it seems that it does not 
support string substitution, so we would be back to unnecessary object creation.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to