diff --git a/client-adapter/elasticsearch/src/main/java/com/alibaba/otter/canal/client/adapter/es/ESAdapter.java b/client-adapter/elasticsearch/src/main/java/com/alibaba/otter/canal/client/adapter/es/ESAdapter.java index b41b857b..1c505cc9 100644 --- a/client-adapter/elasticsearch/src/main/java/com/alibaba/otter/canal/client/adapter/es/ESAdapter.java +++ b/client-adapter/elasticsearch/src/main/java/com/alibaba/otter/canal/client/adapter/es/ESAdapter.java @@ -30,7 +30,6 @@ import com.alibaba.otter.canal.client.adapter.es.service.ESEtlService; import com.alibaba.otter.canal.client.adapter.es.service.ESSyncService; import com.alibaba.otter.canal.client.adapter.es.support.ESTemplate; import com.alibaba.otter.canal.client.adapter.support.*; -import org.slf4j.MDC; /** * ES外部适配器 @@ -71,7 +70,6 @@ public class ESAdapter implements OuterAdapter { @Override public void init(OuterAdapterConfig configuration, Properties envProperties) { try { - MDC.put("adapter", "es"); this.envProperties = envProperties; Map esSyncConfigTmp = ESSyncConfigLoader.load(envProperties); // 过滤不匹配的key的配置 @@ -141,6 +139,7 @@ public class ESAdapter implements OuterAdapter { } } + @Override public void sync(List dmls) { if (dmls == null || dmls.isEmpty()) { return; @@ -151,6 +150,7 @@ public class ESAdapter implements OuterAdapter { } } esSyncService.commit(); // 批次统一提交 + } private void sync(Dml dml) { @@ -241,7 +241,6 @@ public class ESAdapter implements OuterAdapter { if (transportClient != null) { transportClient.close(); } - MDC.remove("adapter"); } @Override diff --git a/client-adapter/hbase/src/main/java/com/alibaba/otter/canal/client/adapter/hbase/HbaseAdapter.java b/client-adapter/hbase/src/main/java/com/alibaba/otter/canal/client/adapter/hbase/HbaseAdapter.java index 9429817b..be84daf3 100644 --- a/client-adapter/hbase/src/main/java/com/alibaba/otter/canal/client/adapter/hbase/HbaseAdapter.java +++ b/client-adapter/hbase/src/main/java/com/alibaba/otter/canal/client/adapter/hbase/HbaseAdapter.java @@ -26,7 +26,6 @@ import com.alibaba.otter.canal.client.adapter.hbase.service.HbaseEtlService; import com.alibaba.otter.canal.client.adapter.hbase.service.HbaseSyncService; import com.alibaba.otter.canal.client.adapter.hbase.support.HbaseTemplate; import com.alibaba.otter.canal.client.adapter.support.*; -import org.slf4j.MDC; /** * HBase外部适配器 @@ -60,7 +59,6 @@ public class HbaseAdapter implements OuterAdapter { @Override public void init(OuterAdapterConfig configuration, Properties envProperties) { try { - MDC.put("adapter", "hbase"); this.envProperties = envProperties; Map hbaseMappingTmp = MappingConfigLoader.load(envProperties); // 过滤不匹配的key的配置 @@ -104,6 +102,7 @@ public class HbaseAdapter implements OuterAdapter { } } + @Override public void sync(List dmls) { if (dmls == null || dmls.isEmpty()) { return; @@ -113,7 +112,7 @@ public class HbaseAdapter implements OuterAdapter { } } - public void sync(Dml dml) { + private void sync(Dml dml) { if (dml == null) { return; } @@ -224,7 +223,6 @@ public class HbaseAdapter implements OuterAdapter { } catch (IOException e) { throw new RuntimeException(e); } - MDC.remove("adapter"); } @Override diff --git a/client-adapter/launcher/src/main/bin/startup.sh b/client-adapter/launcher/src/main/bin/startup.sh index 649292aa..bd97b2fd 100644 --- a/client-adapter/launcher/src/main/bin/startup.sh +++ b/client-adapter/launcher/src/main/bin/startup.sh @@ -40,11 +40,11 @@ if [ -z "$JAVA" ]; then fi fi -case "$#" +case "$#" in -0 ) +0 ) ;; -2 ) +2 ) if [ "$1" = "debug" ]; then DEBUG_PORT=$2 DEBUG_SUSPEND="n" @@ -76,8 +76,8 @@ echo "cd to $bin_abs_path for workaround relative path" cd $bin_abs_path echo CLASSPATH :$CLASSPATH -$JAVA $JAVA_OPTS $JAVA_DEBUG_OPT $ADAPTER_OPTS -classpath .:$CLASSPATH com.alibaba.otter.canal.adapter.launcher.CanalAdapterApplication 1>>$base/logs/adapter.log 2>&1 & +$JAVA $JAVA_OPTS $JAVA_DEBUG_OPT $ADAPTER_OPTS -classpath .:$CLASSPATH com.alibaba.otter.canal.adapter.launcher.CanalAdapterApplication 1>>/dev/null 2>&1 & echo $! > $base/bin/adapter.pid echo "cd to $current_path for continue" -cd $current_path \ No newline at end of file +cd $current_path diff --git a/client-adapter/launcher/src/main/resources/logback.xml b/client-adapter/launcher/src/main/resources/logback.xml index 80765f80..4092e221 100644 --- a/client-adapter/launcher/src/main/resources/logback.xml +++ b/client-adapter/launcher/src/main/resources/logback.xml @@ -8,17 +8,17 @@ - - adapter - adapter - + + adapter + adapter + - - ../logs/${adapter}/${adapter}.log + + ../logs/adapter/adapter.log - ../logs/${adapter}/%d{yyyy-MM-dd}/${adapter}-%d{yyyy-MM-dd}-%i.log.gz + ../logs/adapter/%d{yyyy-MM-dd}/adapter-%d{yyyy-MM-dd}-%i.log.gz 512MB @@ -36,14 +36,22 @@ + + + + + + + + diff --git a/client-adapter/logger/src/main/java/com/alibaba/otter/canal/client/adapter/logger/LoggerAdapterExample.java b/client-adapter/logger/src/main/java/com/alibaba/otter/canal/client/adapter/logger/LoggerAdapterExample.java index 46b344ac..8a195d65 100644 --- a/client-adapter/logger/src/main/java/com/alibaba/otter/canal/client/adapter/logger/LoggerAdapterExample.java +++ b/client-adapter/logger/src/main/java/com/alibaba/otter/canal/client/adapter/logger/LoggerAdapterExample.java @@ -5,7 +5,6 @@ import java.util.Properties; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.slf4j.MDC; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.serializer.SerializerFeature; @@ -28,7 +27,6 @@ public class LoggerAdapterExample implements OuterAdapter { @Override public void init(OuterAdapterConfig configuration, Properties envProperties) { - MDC.put("adapter", "logger"); } public void sync(List dmls) { @@ -43,6 +41,5 @@ public class LoggerAdapterExample implements OuterAdapter { @Override public void destroy() { - MDC.remove("adapter"); } } diff --git a/client-adapter/rdb/src/main/java/com/alibaba/otter/canal/client/adapter/rdb/RdbAdapter.java b/client-adapter/rdb/src/main/java/com/alibaba/otter/canal/client/adapter/rdb/RdbAdapter.java index 99e4ebd7..7cbc3587 100644 --- a/client-adapter/rdb/src/main/java/com/alibaba/otter/canal/client/adapter/rdb/RdbAdapter.java +++ b/client-adapter/rdb/src/main/java/com/alibaba/otter/canal/client/adapter/rdb/RdbAdapter.java @@ -14,7 +14,6 @@ import org.apache.commons.lang.BooleanUtils; import org.apache.commons.lang.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.slf4j.MDC; import com.alibaba.druid.pool.DruidDataSource; import com.alibaba.otter.canal.client.adapter.OuterAdapter; @@ -26,12 +25,7 @@ import com.alibaba.otter.canal.client.adapter.rdb.service.RdbEtlService; import com.alibaba.otter.canal.client.adapter.rdb.service.RdbMirrorDbSyncService; import com.alibaba.otter.canal.client.adapter.rdb.service.RdbSyncService; import com.alibaba.otter.canal.client.adapter.rdb.support.SyncUtil; -import com.alibaba.otter.canal.client.adapter.support.DatasourceConfig; -import com.alibaba.otter.canal.client.adapter.support.Dml; -import com.alibaba.otter.canal.client.adapter.support.EtlResult; -import com.alibaba.otter.canal.client.adapter.support.OuterAdapterConfig; -import com.alibaba.otter.canal.client.adapter.support.SPI; -import com.alibaba.otter.canal.client.adapter.support.Util; +import com.alibaba.otter.canal.client.adapter.support.*; /** * RDB适配器实现类 @@ -76,14 +70,13 @@ public class RdbAdapter implements OuterAdapter { */ @Override public void init(OuterAdapterConfig configuration, Properties envProperties) { - MDC.put("adapter", "rdb"); this.envProperties = envProperties; Map rdbMappingTmp = ConfigLoader.load(envProperties); // 过滤不匹配的key的配置 rdbMappingTmp.forEach((key, mappingConfig) -> { if ((mappingConfig.getOuterAdapterKey() == null && configuration.getKey() == null) - || (mappingConfig.getOuterAdapterKey() != null && mappingConfig.getOuterAdapterKey() - .equalsIgnoreCase(configuration.getKey()))) { + || (mappingConfig.getOuterAdapterKey() != null + && mappingConfig.getOuterAdapterKey().equalsIgnoreCase(configuration.getKey()))) { rdbMapping.put(key, mappingConfig); } }); @@ -143,8 +136,8 @@ public class RdbAdapter implements OuterAdapter { String threads = properties.get("threads"); // String commitSize = properties.get("commitSize"); - boolean skipDupException = BooleanUtils.toBoolean(configuration.getProperties() - .getOrDefault("skipDupException", "true")); + boolean skipDupException = BooleanUtils + .toBoolean(configuration.getProperties().getOrDefault("skipDupException", "true")); rdbSyncService = new RdbSyncService(dataSource, threads != null ? Integer.valueOf(threads) : null, skipDupException); @@ -304,6 +297,5 @@ public class RdbAdapter implements OuterAdapter { if (dataSource != null) { dataSource.close(); } - MDC.remove("adapter"); } }