diff --git a/apm-application-toolkit/apm-toolkit-log4j-1.x/pom.xml b/apm-application-toolkit/apm-toolkit-log4j-1.x/pom.xml
index a5dfb5220..46334d582 100644
--- a/apm-application-toolkit/apm-toolkit-log4j-1.x/pom.xml
+++ b/apm-application-toolkit/apm-toolkit-log4j-1.x/pom.xml
@@ -23,7 +23,7 @@
apm-application-toolkit
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-application-toolkit/apm-toolkit-log4j-2.x/pom.xml b/apm-application-toolkit/apm-toolkit-log4j-2.x/pom.xml
index 002d67dba..ab3778be8 100644
--- a/apm-application-toolkit/apm-toolkit-log4j-2.x/pom.xml
+++ b/apm-application-toolkit/apm-toolkit-log4j-2.x/pom.xml
@@ -23,7 +23,7 @@
apm-application-toolkit
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-application-toolkit/apm-toolkit-logback-1.x/pom.xml b/apm-application-toolkit/apm-toolkit-logback-1.x/pom.xml
index a5ea91e8a..e51649ba5 100644
--- a/apm-application-toolkit/apm-toolkit-logback-1.x/pom.xml
+++ b/apm-application-toolkit/apm-toolkit-logback-1.x/pom.xml
@@ -23,7 +23,7 @@
apm-application-toolkit
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-application-toolkit/apm-toolkit-logback-1.x/src/main/java/org/skywalking/apm/toolkit/log/logback/v1/x/mdc/LogbackMDCPatternConverter.java b/apm-application-toolkit/apm-toolkit-logback-1.x/src/main/java/org/skywalking/apm/toolkit/log/logback/v1/x/mdc/LogbackMDCPatternConverter.java
new file mode 100644
index 000000000..e1c8d7b08
--- /dev/null
+++ b/apm-application-toolkit/apm-toolkit-logback-1.x/src/main/java/org/skywalking/apm/toolkit/log/logback/v1/x/mdc/LogbackMDCPatternConverter.java
@@ -0,0 +1,48 @@
+/*
+ * Copyright 2017, OpenSkywalking Organization All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Project repository: https://github.com/OpenSkywalking/skywalking
+ */
+
+package org.skywalking.apm.toolkit.log.logback.v1.x.mdc;
+
+import ch.qos.logback.classic.pattern.MDCConverter;
+import ch.qos.logback.classic.spi.ILoggingEvent;
+import ch.qos.logback.core.util.OptionHelper;
+
+/**
+ * @author zhangkewei
+ */
+public class LogbackMDCPatternConverter extends MDCConverter {
+ private static final String CONVERT_KEY = "tid";
+
+ private boolean convert4TID = false;
+ @Override
+ public void start() {
+ super.start();
+ String[] key = OptionHelper.extractDefaultReplacement(getFirstOption());
+ if (null != key && key.length > 0 && CONVERT_KEY.equals(key[0])) {
+ convert4TID = true;
+ }
+ }
+ @Override
+ public String convert(ILoggingEvent iLoggingEvent) {
+ return convert4TID ? convertTID() : super.convert(iLoggingEvent);
+ }
+
+ public String convertTID() {
+ return "TID: N/A";
+ }
+}
diff --git a/apm-application-toolkit/apm-toolkit-logback-1.x/src/main/java/org/skywalking/apm/toolkit/log/logback/v1/x/mdc/TraceIdMDCPatternLogbackLayout.java b/apm-application-toolkit/apm-toolkit-logback-1.x/src/main/java/org/skywalking/apm/toolkit/log/logback/v1/x/mdc/TraceIdMDCPatternLogbackLayout.java
new file mode 100644
index 000000000..d67142578
--- /dev/null
+++ b/apm-application-toolkit/apm-toolkit-logback-1.x/src/main/java/org/skywalking/apm/toolkit/log/logback/v1/x/mdc/TraceIdMDCPatternLogbackLayout.java
@@ -0,0 +1,31 @@
+/*
+ * Copyright 2017, OpenSkywalking Organization All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Project repository: https://github.com/OpenSkywalking/skywalking
+ */
+
+package org.skywalking.apm.toolkit.log.logback.v1.x.mdc;
+
+import ch.qos.logback.classic.PatternLayout;
+
+/**
+ * Override "X",SuperClass run before Subclass.
+ * @author zhangkewei
+ */
+public class TraceIdMDCPatternLogbackLayout extends PatternLayout {
+ static {
+ defaultConverterMap.put("X", LogbackMDCPatternConverter.class.getName());
+ }
+}
diff --git a/apm-application-toolkit/apm-toolkit-opentracing/pom.xml b/apm-application-toolkit/apm-toolkit-opentracing/pom.xml
index ec4534b03..cb7f2e989 100644
--- a/apm-application-toolkit/apm-toolkit-opentracing/pom.xml
+++ b/apm-application-toolkit/apm-toolkit-opentracing/pom.xml
@@ -23,7 +23,7 @@
apm-application-toolkit
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-application-toolkit/apm-toolkit-trace/pom.xml b/apm-application-toolkit/apm-toolkit-trace/pom.xml
index edf30ac88..4489fd577 100644
--- a/apm-application-toolkit/apm-toolkit-trace/pom.xml
+++ b/apm-application-toolkit/apm-toolkit-trace/pom.xml
@@ -22,7 +22,7 @@
apm-application-toolkit
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-application-toolkit/pom.xml b/apm-application-toolkit/pom.xml
index 830919418..0d4ab34f7 100644
--- a/apm-application-toolkit/pom.xml
+++ b/apm-application-toolkit/pom.xml
@@ -21,7 +21,7 @@
apm
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
apm-application-toolkit
diff --git a/apm-collector-3.2.3/apm-collector-agentregister/pom.xml b/apm-collector-3.2.3/apm-collector-agentregister/pom.xml
index db44ba6ba..1e988fada 100644
--- a/apm-collector-3.2.3/apm-collector-agentregister/pom.xml
+++ b/apm-collector-3.2.3/apm-collector-agentregister/pom.xml
@@ -23,7 +23,7 @@
apm-collector-3.2.3
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-collector-3.2.3/apm-collector-agentstream/pom.xml b/apm-collector-3.2.3/apm-collector-agentstream/pom.xml
index cf9c317da..f709582d2 100644
--- a/apm-collector-3.2.3/apm-collector-agentstream/pom.xml
+++ b/apm-collector-3.2.3/apm-collector-agentstream/pom.xml
@@ -23,7 +23,7 @@
apm-collector-3.2.3
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/node/component/NodeComponentSpanListener.java b/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/node/component/NodeComponentSpanListener.java
index 01c98fa1c..26026dc09 100644
--- a/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/node/component/NodeComponentSpanListener.java
+++ b/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/node/component/NodeComponentSpanListener.java
@@ -60,6 +60,7 @@ public class NodeComponentSpanListener implements EntrySpanListener, ExitSpanLis
}
nodeComponent.setPeerId(spanDecorator.getPeerId());
+ nodeComponent.setPeer(Const.EMPTY_STRING);
id = id + Const.ID_SPLIT + nodeComponent.getPeerId();
nodeComponent.setId(id);
nodeComponents.add(nodeComponent);
@@ -81,6 +82,7 @@ public class NodeComponentSpanListener implements EntrySpanListener, ExitSpanLis
}
nodeComponent.setPeerId(applicationId);
+ nodeComponent.setPeer(Const.EMPTY_STRING);
id = id + Const.ID_SPLIT + String.valueOf(applicationId);
nodeComponent.setId(id);
diff --git a/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/node/mapping/NodeMappingSpanListener.java b/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/node/mapping/NodeMappingSpanListener.java
index 6cbe12ffa..d0b76fe34 100644
--- a/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/node/mapping/NodeMappingSpanListener.java
+++ b/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/node/mapping/NodeMappingSpanListener.java
@@ -51,6 +51,7 @@ public class NodeMappingSpanListener implements RefsListener, FirstSpanListener
NodeMappingDataDefine.NodeMapping nodeMapping = new NodeMappingDataDefine.NodeMapping();
nodeMapping.setApplicationId(applicationId);
nodeMapping.setAddressId(referenceDecorator.getNetworkAddressId());
+ nodeMapping.setAddress(Const.EMPTY_STRING);
String id = String.valueOf(applicationId) + Const.ID_SPLIT + String.valueOf(nodeMapping.getAddressId());
nodeMapping.setId(id);
nodeMappings.add(nodeMapping);
diff --git a/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/noderef/NodeReferenceSpanListener.java b/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/noderef/NodeReferenceSpanListener.java
index 8455922d0..8e309c69e 100644
--- a/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/noderef/NodeReferenceSpanListener.java
+++ b/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/noderef/NodeReferenceSpanListener.java
@@ -53,6 +53,7 @@ public class NodeReferenceSpanListener implements EntrySpanListener, ExitSpanLis
NodeReferenceDataDefine.NodeReference nodeReference = new NodeReferenceDataDefine.NodeReference();
nodeReference.setFrontApplicationId(applicationId);
nodeReference.setBehindApplicationId(spanDecorator.getPeerId());
+ nodeReference.setBehindPeer(Const.EMPTY_STRING);
nodeReference.setTimeBucket(TimeBucketUtils.INSTANCE.getMinuteTimeBucket(spanDecorator.getStartTime()));
StringBuilder idBuilder = new StringBuilder();
@@ -79,6 +80,7 @@ public class NodeReferenceSpanListener implements EntrySpanListener, ExitSpanLis
NodeReferenceDataDefine.NodeReference nodeReference = new NodeReferenceDataDefine.NodeReference();
nodeReference.setFrontApplicationId(Const.USER_ID);
nodeReference.setBehindApplicationId(applicationId);
+ nodeReference.setBehindPeer(Const.EMPTY_STRING);
nodeReference.setTimeBucket(TimeBucketUtils.INSTANCE.getMinuteTimeBucket(spanDecorator.getStartTime()));
String idBuilder = String.valueOf(nodeReference.getTimeBucket()) + Const.ID_SPLIT + nodeReference.getFrontApplicationId() +
@@ -96,6 +98,7 @@ public class NodeReferenceSpanListener implements EntrySpanListener, ExitSpanLis
NodeReferenceDataDefine.NodeReference referenceSum = new NodeReferenceDataDefine.NodeReference();
referenceSum.setFrontApplicationId(parentApplicationId);
referenceSum.setBehindApplicationId(applicationId);
+ referenceSum.setBehindPeer(Const.EMPTY_STRING);
references.add(referenceSum);
}
diff --git a/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/serviceref/ServiceReferenceSpanListener.java b/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/serviceref/ServiceReferenceSpanListener.java
index c25b66525..0115fc58e 100644
--- a/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/serviceref/ServiceReferenceSpanListener.java
+++ b/apm-collector-3.2.3/apm-collector-agentstream/src/main/java/org/skywalking/apm/collector/agentstream/worker/serviceref/ServiceReferenceSpanListener.java
@@ -127,12 +127,15 @@ public class ServiceReferenceSpanListener implements FirstSpanListener, EntrySpa
idBuilder.append(entryServiceId).append(Const.ID_SPLIT);
serviceReference.setEntryServiceId(entryServiceId);
+ serviceReference.setEntryServiceName(Const.EMPTY_STRING);
idBuilder.append(frontServiceId).append(Const.ID_SPLIT);
serviceReference.setFrontServiceId(frontServiceId);
+ serviceReference.setFrontServiceName(Const.EMPTY_STRING);
idBuilder.append(behindServiceId);
serviceReference.setBehindServiceId(behindServiceId);
+ serviceReference.setBehindServiceName(Const.EMPTY_STRING);
serviceReference.setId(idBuilder.toString());
serviceReference.setTimeBucket(timeBucket);
diff --git a/apm-collector-3.2.3/apm-collector-client/pom.xml b/apm-collector-3.2.3/apm-collector-client/pom.xml
index 9e7710c04..d6ea5c4f3 100644
--- a/apm-collector-3.2.3/apm-collector-client/pom.xml
+++ b/apm-collector-3.2.3/apm-collector-client/pom.xml
@@ -23,7 +23,7 @@
apm-collector-3.2.3
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-collector-3.2.3/apm-collector-queue/src/main/java/org/skywalking/apm/collector/queue/disruptor/DisruptorQueueCreator.java b/apm-collector-3.2.3/apm-collector-queue/src/main/java/org/skywalking/apm/collector/queue/disruptor/DisruptorQueueCreator.java
index 8cdca483b..320a22206 100644
--- a/apm-collector-3.2.3/apm-collector-queue/src/main/java/org/skywalking/apm/collector/queue/disruptor/DisruptorQueueCreator.java
+++ b/apm-collector-3.2.3/apm-collector-queue/src/main/java/org/skywalking/apm/collector/queue/disruptor/DisruptorQueueCreator.java
@@ -18,6 +18,7 @@
package org.skywalking.apm.collector.queue.disruptor;
+import com.lmax.disruptor.ExceptionHandler;
import com.lmax.disruptor.RingBuffer;
import com.lmax.disruptor.dsl.Disruptor;
import org.skywalking.apm.collector.core.queue.DaemonThreadFactory;
@@ -25,12 +26,16 @@ import org.skywalking.apm.collector.core.queue.MessageHolder;
import org.skywalking.apm.collector.core.queue.QueueCreator;
import org.skywalking.apm.collector.core.queue.QueueEventHandler;
import org.skywalking.apm.collector.core.queue.QueueExecutor;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
/**
* @author peng-yongsheng
*/
public class DisruptorQueueCreator implements QueueCreator {
+ private final Logger logger = LoggerFactory.getLogger(DisruptorQueueCreator.class);
+
@Override public QueueEventHandler create(int queueSize, QueueExecutor executor) {
// Specify the size of the ring buffer, must be power of 2.
if (!((((queueSize - 1) & queueSize) == 0) && queueSize != 0)) {
@@ -40,6 +45,20 @@ public class DisruptorQueueCreator implements QueueCreator {
// Construct the Disruptor
Disruptor disruptor = new Disruptor(MessageHolderFactory.INSTANCE, queueSize, DaemonThreadFactory.INSTANCE);
+ disruptor.setDefaultExceptionHandler(new ExceptionHandler() {
+ @Override public void handleEventException(Throwable ex, long sequence, MessageHolder event) {
+ logger.error("handler message error! message: {}.", event.getMessage(), ex);
+ }
+
+ @Override public void handleOnStartException(Throwable ex) {
+ logger.error("create disruptor failed!", ex);
+ }
+
+ @Override public void handleOnShutdownException(Throwable ex) {
+ logger.error("shutdown disruptor failed!", ex);
+ }
+ });
+
RingBuffer ringBuffer = disruptor.getRingBuffer();
DisruptorEventHandler eventHandler = new DisruptorEventHandler(ringBuffer, executor);
diff --git a/apm-collector-3.2.3/apm-collector-server/pom.xml b/apm-collector-3.2.3/apm-collector-server/pom.xml
index 7e80186bd..3ff913821 100644
--- a/apm-collector-3.2.3/apm-collector-server/pom.xml
+++ b/apm-collector-3.2.3/apm-collector-server/pom.xml
@@ -23,7 +23,7 @@
apm-collector-3.2.3
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-collector-3.2.3/apm-collector-ui/pom.xml b/apm-collector-3.2.3/apm-collector-ui/pom.xml
index d1b4b2ca5..afe5bcf0b 100644
--- a/apm-collector-3.2.3/apm-collector-ui/pom.xml
+++ b/apm-collector-3.2.3/apm-collector-ui/pom.xml
@@ -23,7 +23,7 @@
apm-collector-3.2.3
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-collector/apm-collector-boot/pom.xml b/apm-collector/apm-collector-boot/pom.xml
index acae89589..05ef93a05 100644
--- a/apm-collector/apm-collector-boot/pom.xml
+++ b/apm-collector/apm-collector-boot/pom.xml
@@ -23,7 +23,7 @@
apm-collector
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-collector/apm-collector-cache/pom.xml b/apm-collector/apm-collector-cache/pom.xml
index e901f5e27..55983ea3a 100644
--- a/apm-collector/apm-collector-cache/pom.xml
+++ b/apm-collector/apm-collector-cache/pom.xml
@@ -5,7 +5,7 @@
apm-collector
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
@@ -24,4 +24,4 @@
${project.version}
-
\ No newline at end of file
+
diff --git a/apm-collector/apm-collector-cluster/pom.xml b/apm-collector/apm-collector-cluster/pom.xml
index f0b2e2935..341bbbace 100644
--- a/apm-collector/apm-collector-cluster/pom.xml
+++ b/apm-collector/apm-collector-cluster/pom.xml
@@ -5,7 +5,7 @@
apm-collector
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-collector/apm-collector-core/pom.xml b/apm-collector/apm-collector-core/pom.xml
index 4cb512837..3ab0bc9dc 100644
--- a/apm-collector/apm-collector-core/pom.xml
+++ b/apm-collector/apm-collector-core/pom.xml
@@ -5,7 +5,7 @@
apm-collector
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-collector/apm-collector-queue/pom.xml b/apm-collector/apm-collector-queue/pom.xml
index 9f80371ef..7c8f5f184 100644
--- a/apm-collector/apm-collector-queue/pom.xml
+++ b/apm-collector/apm-collector-queue/pom.xml
@@ -23,7 +23,7 @@
apm-collector
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-collector/apm-collector-remote/pom.xml b/apm-collector/apm-collector-remote/pom.xml
index 73df4af20..41b000e62 100644
--- a/apm-collector/apm-collector-remote/pom.xml
+++ b/apm-collector/apm-collector-remote/pom.xml
@@ -5,7 +5,7 @@
apm-collector
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-collector/apm-collector-storage/pom.xml b/apm-collector/apm-collector-storage/pom.xml
index 57d4a3c65..a44bded60 100644
--- a/apm-collector/apm-collector-storage/pom.xml
+++ b/apm-collector/apm-collector-storage/pom.xml
@@ -5,7 +5,7 @@
apm-collector
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-collector/apm-collector-stream/pom.xml b/apm-collector/apm-collector-stream/pom.xml
index f9b2086da..2544a549e 100644
--- a/apm-collector/apm-collector-stream/pom.xml
+++ b/apm-collector/apm-collector-stream/pom.xml
@@ -23,7 +23,7 @@
apm-collector
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/pom.xml b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/pom.xml
index f390e6cdd..0a79e871a 100644
--- a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/pom.xml
+++ b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/pom.xml
@@ -23,7 +23,7 @@
apm-collector-ui
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-collector/apm-collector-ui/pom.xml b/apm-collector/apm-collector-ui/pom.xml
index c239fe7e2..e3520b03b 100644
--- a/apm-collector/apm-collector-ui/pom.xml
+++ b/apm-collector/apm-collector-ui/pom.xml
@@ -5,7 +5,7 @@
apm-collector
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-collector/pom.xml b/apm-collector/pom.xml
index 57515cf6c..048731b38 100644
--- a/apm-collector/pom.xml
+++ b/apm-collector/pom.xml
@@ -23,7 +23,7 @@
apm
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-commons/apm-datacarrier/pom.xml b/apm-commons/apm-datacarrier/pom.xml
index 6d6f64277..795d5758b 100644
--- a/apm-commons/apm-datacarrier/pom.xml
+++ b/apm-commons/apm-datacarrier/pom.xml
@@ -23,7 +23,7 @@
apm-commons
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-commons/apm-util/pom.xml b/apm-commons/apm-util/pom.xml
index 1aa7991b1..3f8d2128f 100644
--- a/apm-commons/apm-util/pom.xml
+++ b/apm-commons/apm-util/pom.xml
@@ -21,7 +21,7 @@
apm-commons
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-commons/pom.xml b/apm-commons/pom.xml
index f9ab71c09..6806bd740 100644
--- a/apm-commons/pom.xml
+++ b/apm-commons/pom.xml
@@ -21,7 +21,7 @@
apm
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-network/pom.xml b/apm-network/pom.xml
index 910c0b44e..a67754da2 100644
--- a/apm-network/pom.xml
+++ b/apm-network/pom.xml
@@ -23,7 +23,7 @@
apm
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-agent-core/pom.xml b/apm-sniffer/apm-agent-core/pom.xml
index 7f821a7ef..5f73e72d1 100644
--- a/apm-sniffer/apm-agent-core/pom.xml
+++ b/apm-sniffer/apm-agent-core/pom.xml
@@ -23,7 +23,7 @@
org.skywalking
apm-sniffer
- 3.2.3-2017
+ 3.2.4-2017
apm-agent-core
diff --git a/apm-sniffer/apm-agent/pom.xml b/apm-sniffer/apm-agent/pom.xml
index ff3401951..237753c3e 100644
--- a/apm-sniffer/apm-agent/pom.xml
+++ b/apm-sniffer/apm-agent/pom.xml
@@ -23,7 +23,7 @@
org.skywalking
apm-sniffer
- 3.2.3-2017
+ 3.2.4-2017
apm-agent
diff --git a/apm-sniffer/apm-sdk-plugin/dubbo-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/dubbo-plugin/pom.xml
index b56be37a8..8eee51e49 100644
--- a/apm-sniffer/apm-sdk-plugin/dubbo-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/dubbo-plugin/pom.xml
@@ -21,7 +21,7 @@
apm-sdk-plugin
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/feign-default-http-9.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/feign-default-http-9.x-plugin/pom.xml
index 9533d9e1d..a467a4458 100644
--- a/apm-sniffer/apm-sdk-plugin/feign-default-http-9.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/feign-default-http-9.x-plugin/pom.xml
@@ -23,7 +23,7 @@
org.skywalking
apm-sdk-plugin
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/grpc-1.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/grpc-1.x-plugin/pom.xml
index 7b72913a8..d4d18af14 100644
--- a/apm-sniffer/apm-sdk-plugin/grpc-1.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/grpc-1.x-plugin/pom.xml
@@ -24,7 +24,7 @@
org.skywalking
apm-sdk-plugin
- 3.2.3-2017
+ 3.2.4-2017
apm-grpc-1.x-plugin
diff --git a/apm-sniffer/apm-sdk-plugin/h2-1.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/h2-1.x-plugin/pom.xml
index 6ff404b59..59acd3f7f 100755
--- a/apm-sniffer/apm-sdk-plugin/h2-1.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/h2-1.x-plugin/pom.xml
@@ -21,7 +21,7 @@
apm-sdk-plugin
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/httpClient-4.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/httpClient-4.x-plugin/pom.xml
index c8c35f21a..9f6edf39a 100644
--- a/apm-sniffer/apm-sdk-plugin/httpClient-4.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/httpClient-4.x-plugin/pom.xml
@@ -24,7 +24,7 @@
org.skywalking
apm-sdk-plugin
- 3.2.3-2017
+ 3.2.4-2017
apm-httpClient-4.x-plugin
diff --git a/apm-sniffer/apm-sdk-plugin/jdbc-commons/pom.xml b/apm-sniffer/apm-sdk-plugin/jdbc-commons/pom.xml
index 6b0de0262..6901fc284 100755
--- a/apm-sniffer/apm-sdk-plugin/jdbc-commons/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/jdbc-commons/pom.xml
@@ -21,7 +21,7 @@
apm-sdk-plugin
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/jedis-2.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/jedis-2.x-plugin/pom.xml
index 7ece02fd9..434e7e158 100644
--- a/apm-sniffer/apm-sdk-plugin/jedis-2.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/jedis-2.x-plugin/pom.xml
@@ -24,7 +24,7 @@
org.skywalking
apm-sdk-plugin
- 3.2.3-2017
+ 3.2.4-2017
apm-jedis-2.x-plugin
diff --git a/apm-sniffer/apm-sdk-plugin/jetty-plugin/jetty-client-9.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/jetty-plugin/jetty-client-9.x-plugin/pom.xml
index 6d2e86aa1..e1a66df1d 100644
--- a/apm-sniffer/apm-sdk-plugin/jetty-plugin/jetty-client-9.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/jetty-plugin/jetty-client-9.x-plugin/pom.xml
@@ -21,7 +21,7 @@
jetty-plugins
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/jetty-plugin/jetty-server-9.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/jetty-plugin/jetty-server-9.x-plugin/pom.xml
index 286a71876..83ea38080 100644
--- a/apm-sniffer/apm-sdk-plugin/jetty-plugin/jetty-server-9.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/jetty-plugin/jetty-server-9.x-plugin/pom.xml
@@ -21,7 +21,7 @@
jetty-plugins
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/jetty-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/jetty-plugin/pom.xml
index ce646520c..2cb5d3a12 100644
--- a/apm-sniffer/apm-sdk-plugin/jetty-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/jetty-plugin/pom.xml
@@ -24,7 +24,7 @@
org.skywalking
apm-sdk-plugin
- 3.2.3-2017
+ 3.2.4-2017
jetty-plugins
diff --git a/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/pom.xml
index 1f450bb65..ccb0b097a 100644
--- a/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/pom.xml
@@ -22,7 +22,7 @@
apm-sdk-plugin
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
apm-mongodb-3.x-plugin
diff --git a/apm-sniffer/apm-sdk-plugin/motan-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/motan-plugin/pom.xml
index c2839ad96..8dd26be8f 100644
--- a/apm-sniffer/apm-sdk-plugin/motan-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/motan-plugin/pom.xml
@@ -21,7 +21,7 @@
apm-sdk-plugin
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/mysql-5.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/mysql-5.x-plugin/pom.xml
index eb232bb10..4c3271451 100755
--- a/apm-sniffer/apm-sdk-plugin/mysql-5.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/mysql-5.x-plugin/pom.xml
@@ -21,7 +21,7 @@
apm-sdk-plugin
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/nutz-plugins/http-1.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/nutz-plugins/http-1.x-plugin/pom.xml
index 7bd5eaf24..e3c588569 100644
--- a/apm-sniffer/apm-sdk-plugin/nutz-plugins/http-1.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/nutz-plugins/http-1.x-plugin/pom.xml
@@ -21,7 +21,7 @@
nutz-plugins
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/nutz-plugins/mvc-annotation-1.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/nutz-plugins/mvc-annotation-1.x-plugin/pom.xml
index dd0d16155..91299b622 100644
--- a/apm-sniffer/apm-sdk-plugin/nutz-plugins/mvc-annotation-1.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/nutz-plugins/mvc-annotation-1.x-plugin/pom.xml
@@ -21,7 +21,7 @@
nutz-plugins
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/nutz-plugins/pom.xml b/apm-sniffer/apm-sdk-plugin/nutz-plugins/pom.xml
index adcaf9a64..fd56aaa28 100644
--- a/apm-sniffer/apm-sdk-plugin/nutz-plugins/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/nutz-plugins/pom.xml
@@ -24,7 +24,7 @@
org.skywalking
apm-sdk-plugin
- 3.2.3-2017
+ 3.2.4-2017
nutz-plugins
diff --git a/apm-sniffer/apm-sdk-plugin/okhttp-3.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/okhttp-3.x-plugin/pom.xml
index e601581a2..7f22cbbec 100644
--- a/apm-sniffer/apm-sdk-plugin/okhttp-3.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/okhttp-3.x-plugin/pom.xml
@@ -23,7 +23,7 @@
org.skywalking
apm-sdk-plugin
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/oracle-10.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/oracle-10.x-plugin/pom.xml
index bb2242af6..703ed2bfb 100755
--- a/apm-sniffer/apm-sdk-plugin/oracle-10.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/oracle-10.x-plugin/pom.xml
@@ -21,7 +21,7 @@
apm-sdk-plugin
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/pom.xml
index bae33b837..8c527c6ed 100644
--- a/apm-sniffer/apm-sdk-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/pom.xml
@@ -24,7 +24,7 @@
org.skywalking
apm-sniffer
- 3.2.3-2017
+ 3.2.4-2017
apm-sdk-plugin
diff --git a/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/pom.xml
index 1ea9f8a4d..eabff1956 100755
--- a/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/pom.xml
@@ -21,7 +21,7 @@
apm-sdk-plugin
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/postgresql/define/Jdbc3ConnectionInstrumentation.java b/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/postgresql/define/Jdbc3ConnectionInstrumentation.java
index 54c8cc485..191d8607b 100644
--- a/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/postgresql/define/Jdbc3ConnectionInstrumentation.java
+++ b/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/postgresql/define/Jdbc3ConnectionInstrumentation.java
@@ -41,8 +41,8 @@ import static org.skywalking.apm.plugin.jdbc.define.Constants.ROLLBACK_METHOD_NA
import static org.skywalking.apm.plugin.jdbc.define.Constants.SERVICE_METHOD_INTERCEPT_CLASS;
/**
- * {@link ConnectionInstrumentation} intercept the following methods that the class which extend {@link
- * org.postgresql.jdbc.PgConnection}.
+ * {@link Jdbc3ConnectionInstrumentation} intercept the following methods that the class which extend {@link
+ * org.postgresql.jdbc3.Jdbc3Connection}.
*
* 1. Enhance prepareStatement by org.skywalking.apm.plugin.jdbc.define.JDBCPrepareStatementInterceptor
* 2. Enhance prepareCall by
diff --git a/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/postgresql/define/Jdbc4ConnectionInstrumentation.java b/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/postgresql/define/Jdbc4ConnectionInstrumentation.java
new file mode 100644
index 000000000..7be5b62f6
--- /dev/null
+++ b/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/postgresql/define/Jdbc4ConnectionInstrumentation.java
@@ -0,0 +1,124 @@
+/*
+ * Copyright 2017, OpenSkywalking Organization All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Project repository: https://github.com/OpenSkywalking/skywalking
+ */
+
+package org.skywalking.apm.plugin.jdbc.postgresql.define;
+
+import net.bytebuddy.description.method.MethodDescription;
+import net.bytebuddy.matcher.ElementMatcher;
+import org.skywalking.apm.agent.core.plugin.interceptor.ConstructorInterceptPoint;
+import org.skywalking.apm.agent.core.plugin.interceptor.InstanceMethodsInterceptPoint;
+import org.skywalking.apm.agent.core.plugin.interceptor.enhance.ClassInstanceMethodsEnhancePluginDefine;
+import org.skywalking.apm.agent.core.plugin.match.ClassMatch;
+
+import static net.bytebuddy.matcher.ElementMatchers.named;
+import static net.bytebuddy.matcher.ElementMatchers.takesArguments;
+import static org.skywalking.apm.agent.core.plugin.match.NameMatch.byName;
+import static org.skywalking.apm.plugin.jdbc.define.Constants.CLOSE_METHOD_NAME;
+import static org.skywalking.apm.plugin.jdbc.define.Constants.COMMIT_METHOD_NAME;
+import static org.skywalking.apm.plugin.jdbc.define.Constants.CREATE_STATEMENT_INTERCEPT_CLASS;
+import static org.skywalking.apm.plugin.jdbc.define.Constants.CREATE_STATEMENT_METHOD_NAME;
+import static org.skywalking.apm.plugin.jdbc.define.Constants.PREPARE_CALL_INTERCEPT_CLASS;
+import static org.skywalking.apm.plugin.jdbc.define.Constants.PREPARE_CALL_METHOD_NAME;
+import static org.skywalking.apm.plugin.jdbc.define.Constants.PREPARE_STATEMENT_INTERCEPT_CLASS;
+import static org.skywalking.apm.plugin.jdbc.define.Constants.PREPARE_STATEMENT_METHOD_NAME;
+import static org.skywalking.apm.plugin.jdbc.define.Constants.RELEASE_SAVE_POINT_METHOD_NAME;
+import static org.skywalking.apm.plugin.jdbc.define.Constants.ROLLBACK_METHOD_NAME;
+import static org.skywalking.apm.plugin.jdbc.define.Constants.SERVICE_METHOD_INTERCEPT_CLASS;
+
+/**
+ * {@link Jdbc4ConnectionInstrumentation} intercept the following methods that the class which extend {@link
+ * org.postgresql.jdbc4.Jdbc4Connection}.
+ *
+ * 1. Enhance prepareStatement by org.skywalking.apm.plugin.jdbc.define.JDBCPrepareStatementInterceptor
+ * 2. Enhance prepareCall by
+ * org.skywalking.apm.plugin.jdbc.define.JDBCPrepareCallInterceptor
+ * 3. Enhance createStatement
+ * by org.skywalking.apm.plugin.jdbc.define.JDBCStatementInterceptor
+ * 4. Enhance commit, rollback, close, releaseSavepoint by org.skywalking.apm.plugin.jdbc.define.ConnectionServiceMethodInterceptor
+ *
+ * @author zhangxin
+ */
+public class Jdbc4ConnectionInstrumentation extends ClassInstanceMethodsEnhancePluginDefine {
+
+ public static final String ENHANCE_CLASS = "org.postgresql.jdbc4.Jdbc4Connection";
+
+ @Override protected ConstructorInterceptPoint[] getConstructorsInterceptPoints() {
+ return new ConstructorInterceptPoint[0];
+ }
+
+ @Override protected InstanceMethodsInterceptPoint[] getInstanceMethodsInterceptPoints() {
+ return new InstanceMethodsInterceptPoint[] {
+ new InstanceMethodsInterceptPoint() {
+ @Override public ElementMatcher getMethodsMatcher() {
+ return named(PREPARE_STATEMENT_METHOD_NAME).and(takesArguments(4));
+ }
+
+ @Override public String getMethodsInterceptor() {
+ return PREPARE_STATEMENT_INTERCEPT_CLASS;
+ }
+
+ @Override public boolean isOverrideArgs() {
+ return false;
+ }
+ },
+ new InstanceMethodsInterceptPoint() {
+ @Override public ElementMatcher getMethodsMatcher() {
+ return named(PREPARE_CALL_METHOD_NAME).and(takesArguments(4));
+ }
+
+ @Override public String getMethodsInterceptor() {
+ return PREPARE_CALL_INTERCEPT_CLASS;
+ }
+
+ @Override public boolean isOverrideArgs() {
+ return false;
+ }
+ },
+ new InstanceMethodsInterceptPoint() {
+ @Override public ElementMatcher getMethodsMatcher() {
+ return named(CREATE_STATEMENT_METHOD_NAME).and(takesArguments(3));
+ }
+
+ @Override public String getMethodsInterceptor() {
+ return CREATE_STATEMENT_INTERCEPT_CLASS;
+ }
+
+ @Override public boolean isOverrideArgs() {
+ return false;
+ }
+ },
+ new InstanceMethodsInterceptPoint() {
+ @Override public ElementMatcher getMethodsMatcher() {
+ return named(COMMIT_METHOD_NAME).or(named(ROLLBACK_METHOD_NAME)).or(named(CLOSE_METHOD_NAME)).or(named(RELEASE_SAVE_POINT_METHOD_NAME));
+ }
+
+ @Override public String getMethodsInterceptor() {
+ return SERVICE_METHOD_INTERCEPT_CLASS;
+ }
+
+ @Override public boolean isOverrideArgs() {
+ return false;
+ }
+ }
+ };
+ }
+
+ @Override protected ClassMatch enhanceClass() {
+ return byName(ENHANCE_CLASS);
+ }
+}
diff --git a/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/src/main/resources/skywalking-plugin.def b/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/src/main/resources/skywalking-plugin.def
index 816cdda10..3fe0ad09b 100644
--- a/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/src/main/resources/skywalking-plugin.def
+++ b/apm-sniffer/apm-sdk-plugin/postgresql-8.x-plugin/src/main/resources/skywalking-plugin.def
@@ -1,3 +1,4 @@
postgresql-8.x=org.skywalking.apm.plugin.jdbc.postgresql.define.DriverInstrumentation
postgresql-8.x=org.skywalking.apm.plugin.jdbc.postgresql.define.Jdbc3ConnectionInstrumentation
+postgresql-8.x=org.skywalking.apm.plugin.jdbc.postgresql.define.Jdbc4ConnectionInstrumentation
postgresql-8.x=org.skywalking.apm.plugin.jdbc.postgresql.define.ConnectionInstrumentation
diff --git a/apm-sniffer/apm-sdk-plugin/resin-3.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/resin-3.x-plugin/pom.xml
index 2bfd5c0b4..5b99f2791 100644
--- a/apm-sniffer/apm-sdk-plugin/resin-3.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/resin-3.x-plugin/pom.xml
@@ -25,7 +25,7 @@
apm-sdk-plugin
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
apm-resin-3.x-plugin
diff --git a/apm-sniffer/apm-sdk-plugin/resin-4.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/resin-4.x-plugin/pom.xml
index 6df270cad..3311a6af8 100644
--- a/apm-sniffer/apm-sdk-plugin/resin-4.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/resin-4.x-plugin/pom.xml
@@ -25,7 +25,7 @@
apm-sdk-plugin
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
apm-resin-4.x-plugin
diff --git a/apm-sniffer/apm-sdk-plugin/sharding-jdbc-1.5.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/sharding-jdbc-1.5.x-plugin/pom.xml
index d8d571b87..bad7dd423 100644
--- a/apm-sniffer/apm-sdk-plugin/sharding-jdbc-1.5.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/sharding-jdbc-1.5.x-plugin/pom.xml
@@ -23,7 +23,7 @@
apm-sdk-plugin
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/spring-plugins/concurrent-util-4.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/spring-plugins/concurrent-util-4.x-plugin/pom.xml
index 3785bc170..9c9933d68 100644
--- a/apm-sniffer/apm-sdk-plugin/spring-plugins/concurrent-util-4.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/spring-plugins/concurrent-util-4.x-plugin/pom.xml
@@ -21,7 +21,7 @@
spring-plugins
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/spring-plugins/mvc-annotation-3.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/spring-plugins/mvc-annotation-3.x-plugin/pom.xml
index 8f93ee445..49d9334e8 100644
--- a/apm-sniffer/apm-sdk-plugin/spring-plugins/mvc-annotation-3.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/spring-plugins/mvc-annotation-3.x-plugin/pom.xml
@@ -21,7 +21,7 @@
spring-plugins
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/spring-plugins/mvc-annotation-4.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/spring-plugins/mvc-annotation-4.x-plugin/pom.xml
index 112e71fcc..60d1068d3 100644
--- a/apm-sniffer/apm-sdk-plugin/spring-plugins/mvc-annotation-4.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/spring-plugins/mvc-annotation-4.x-plugin/pom.xml
@@ -21,7 +21,7 @@
spring-plugins
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/spring-plugins/pom.xml b/apm-sniffer/apm-sdk-plugin/spring-plugins/pom.xml
index 546d3bcb8..5df7c48e4 100644
--- a/apm-sniffer/apm-sdk-plugin/spring-plugins/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/spring-plugins/pom.xml
@@ -24,7 +24,7 @@
org.skywalking
apm-sdk-plugin
- 3.2.3-2017
+ 3.2.4-2017
spring-plugins
diff --git a/apm-sniffer/apm-sdk-plugin/spring-plugins/resttemplate-4.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/spring-plugins/resttemplate-4.x-plugin/pom.xml
index afa3c51a3..c6bbc5c16 100644
--- a/apm-sniffer/apm-sdk-plugin/spring-plugins/resttemplate-4.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/spring-plugins/resttemplate-4.x-plugin/pom.xml
@@ -21,7 +21,7 @@
spring-plugins
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/spring-plugins/spring-cloud/netflix-plugins/pom.xml b/apm-sniffer/apm-sdk-plugin/spring-plugins/spring-cloud/netflix-plugins/pom.xml
index 3ac357acf..46dd4a07f 100644
--- a/apm-sniffer/apm-sdk-plugin/spring-plugins/spring-cloud/netflix-plugins/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/spring-plugins/spring-cloud/netflix-plugins/pom.xml
@@ -24,7 +24,7 @@
org.skywalking
spring-cloud
- 3.2.3-2017
+ 3.2.4-2017
netflix-plugins
diff --git a/apm-sniffer/apm-sdk-plugin/spring-plugins/spring-cloud/netflix-plugins/spring-cloud-feign-1.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/spring-plugins/spring-cloud/netflix-plugins/spring-cloud-feign-1.x-plugin/pom.xml
index ef0c9bf97..93b9534e0 100644
--- a/apm-sniffer/apm-sdk-plugin/spring-plugins/spring-cloud/netflix-plugins/spring-cloud-feign-1.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/spring-plugins/spring-cloud/netflix-plugins/spring-cloud-feign-1.x-plugin/pom.xml
@@ -24,7 +24,7 @@
org.skywalking
netflix-plugins
- 3.2.3-2017
+ 3.2.4-2017
apm-spring-cloud-feign-1.x-plugin
diff --git a/apm-sniffer/apm-sdk-plugin/spring-plugins/spring-cloud/pom.xml b/apm-sniffer/apm-sdk-plugin/spring-plugins/spring-cloud/pom.xml
index 612ea5335..0fc2a64ff 100644
--- a/apm-sniffer/apm-sdk-plugin/spring-plugins/spring-cloud/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/spring-plugins/spring-cloud/pom.xml
@@ -24,7 +24,7 @@
org.skywalking
spring-plugins
- 3.2.3-2017
+ 3.2.4-2017
spring-cloud
diff --git a/apm-sniffer/apm-sdk-plugin/spymemcached-2.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/spymemcached-2.x-plugin/pom.xml
index 5d752aba8..28e00faae 100644
--- a/apm-sniffer/apm-sdk-plugin/spymemcached-2.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/spymemcached-2.x-plugin/pom.xml
@@ -24,7 +24,7 @@
org.skywalking
apm-sdk-plugin
- 3.2.3-2017
+ 3.2.4-2017
apm-spymemcached-2.x-plugin
@@ -50,4 +50,4 @@
test
-
\ No newline at end of file
+
diff --git a/apm-sniffer/apm-sdk-plugin/struts2-2.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/struts2-2.x-plugin/pom.xml
index bdf0ede0e..e84b6e2b8 100644
--- a/apm-sniffer/apm-sdk-plugin/struts2-2.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/struts2-2.x-plugin/pom.xml
@@ -21,7 +21,7 @@
apm-sdk-plugin
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/tomcat-7.x-8.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/tomcat-7.x-8.x-plugin/pom.xml
index fd1d020a0..e622245d8 100644
--- a/apm-sniffer/apm-sdk-plugin/tomcat-7.x-8.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/tomcat-7.x-8.x-plugin/pom.xml
@@ -21,7 +21,7 @@
apm-sdk-plugin
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-sdk-plugin/xmemcached-2.x-plugin/pom.xml b/apm-sniffer/apm-sdk-plugin/xmemcached-2.x-plugin/pom.xml
index 69a4eea07..af7da6aa6 100644
--- a/apm-sniffer/apm-sdk-plugin/xmemcached-2.x-plugin/pom.xml
+++ b/apm-sniffer/apm-sdk-plugin/xmemcached-2.x-plugin/pom.xml
@@ -23,7 +23,7 @@
org.skywalking
apm-sdk-plugin
- 3.2.3-2017
+ 3.2.4-2017
apm-xmemcached-2.x-plugin
@@ -49,4 +49,4 @@
test
-
\ No newline at end of file
+
diff --git a/apm-sniffer/apm-test-tools/pom.xml b/apm-sniffer/apm-test-tools/pom.xml
index c722a9803..795b81aaa 100644
--- a/apm-sniffer/apm-test-tools/pom.xml
+++ b/apm-sniffer/apm-test-tools/pom.xml
@@ -23,7 +23,7 @@
org.skywalking
apm-sniffer
- 3.2.3-2017
+ 3.2.4-2017
apm-test-tools
diff --git a/apm-sniffer/apm-toolkit-activation/apm-toolkit-log4j-1.x-activation/pom.xml b/apm-sniffer/apm-toolkit-activation/apm-toolkit-log4j-1.x-activation/pom.xml
index 06dd41e9f..f4916644a 100644
--- a/apm-sniffer/apm-toolkit-activation/apm-toolkit-log4j-1.x-activation/pom.xml
+++ b/apm-sniffer/apm-toolkit-activation/apm-toolkit-log4j-1.x-activation/pom.xml
@@ -23,7 +23,7 @@
apm-toolkit-activation
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-toolkit-activation/apm-toolkit-log4j-2.x-activation/pom.xml b/apm-sniffer/apm-toolkit-activation/apm-toolkit-log4j-2.x-activation/pom.xml
index 2103c0efd..2209bc95b 100644
--- a/apm-sniffer/apm-toolkit-activation/apm-toolkit-log4j-2.x-activation/pom.xml
+++ b/apm-sniffer/apm-toolkit-activation/apm-toolkit-log4j-2.x-activation/pom.xml
@@ -23,7 +23,7 @@
apm-toolkit-activation
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-toolkit-activation/apm-toolkit-logback-1.x-activation/pom.xml b/apm-sniffer/apm-toolkit-activation/apm-toolkit-logback-1.x-activation/pom.xml
index 86b0090b9..e8c83b09a 100644
--- a/apm-sniffer/apm-toolkit-activation/apm-toolkit-logback-1.x-activation/pom.xml
+++ b/apm-sniffer/apm-toolkit-activation/apm-toolkit-logback-1.x-activation/pom.xml
@@ -23,7 +23,7 @@
apm-toolkit-activation
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-toolkit-activation/apm-toolkit-logback-1.x-activation/src/main/java/org/skywalking/apm/toolkit/activation/log/logback/v1/x/mdc/MDCConverterActivation.java b/apm-sniffer/apm-toolkit-activation/apm-toolkit-logback-1.x-activation/src/main/java/org/skywalking/apm/toolkit/activation/log/logback/v1/x/mdc/MDCConverterActivation.java
new file mode 100644
index 000000000..4a99e9066
--- /dev/null
+++ b/apm-sniffer/apm-toolkit-activation/apm-toolkit-logback-1.x-activation/src/main/java/org/skywalking/apm/toolkit/activation/log/logback/v1/x/mdc/MDCConverterActivation.java
@@ -0,0 +1,66 @@
+/*
+ * Copyright 2017, OpenSkywalking Organization All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Project repository: https://github.com/OpenSkywalking/skywalking
+ */
+package org.skywalking.apm.toolkit.activation.log.logback.v1.x.mdc;
+
+import net.bytebuddy.description.method.MethodDescription;
+import net.bytebuddy.matcher.ElementMatcher;
+import org.skywalking.apm.agent.core.plugin.interceptor.ConstructorInterceptPoint;
+import org.skywalking.apm.agent.core.plugin.interceptor.InstanceMethodsInterceptPoint;
+import org.skywalking.apm.agent.core.plugin.interceptor.enhance.ClassInstanceMethodsEnhancePluginDefine;
+import org.skywalking.apm.agent.core.plugin.match.ClassMatch;
+
+import static net.bytebuddy.matcher.ElementMatchers.named;
+import static org.skywalking.apm.agent.core.plugin.match.NameMatch.byName;
+
+/**
+ * Support MDC https://logback.qos.ch/manual/mdc.html
+ * @author: zhangkewei
+ */
+public class MDCConverterActivation extends ClassInstanceMethodsEnhancePluginDefine {
+
+ @Override
+ protected ConstructorInterceptPoint[] getConstructorsInterceptPoints() {
+ return null;
+ }
+
+ @Override
+ protected InstanceMethodsInterceptPoint[] getInstanceMethodsInterceptPoints() {
+ return new InstanceMethodsInterceptPoint[] {
+ new InstanceMethodsInterceptPoint() {
+ @Override
+ public ElementMatcher getMethodsMatcher() {
+ return named("convertTID");
+ }
+
+ @Override
+ public String getMethodsInterceptor() {
+ return "org.skywalking.apm.toolkit.activation.log.logback.v1.x.mdc.PrintMDCTraceIdInterceptor";
+ }
+
+ @Override public boolean isOverrideArgs() {
+ return false;
+ }
+ }
+ };
+ }
+
+ @Override
+ protected ClassMatch enhanceClass() {
+ return byName("org.skywalking.apm.toolkit.log.logback.v1.x.mdc.LogbackMDCPatternConverter");
+ }
+}
diff --git a/apm-sniffer/apm-toolkit-activation/apm-toolkit-logback-1.x-activation/src/main/java/org/skywalking/apm/toolkit/activation/log/logback/v1/x/mdc/PrintMDCTraceIdInterceptor.java b/apm-sniffer/apm-toolkit-activation/apm-toolkit-logback-1.x-activation/src/main/java/org/skywalking/apm/toolkit/activation/log/logback/v1/x/mdc/PrintMDCTraceIdInterceptor.java
new file mode 100644
index 000000000..d052778f3
--- /dev/null
+++ b/apm-sniffer/apm-toolkit-activation/apm-toolkit-logback-1.x-activation/src/main/java/org/skywalking/apm/toolkit/activation/log/logback/v1/x/mdc/PrintMDCTraceIdInterceptor.java
@@ -0,0 +1,45 @@
+/*
+ * Copyright 2017, OpenSkywalking Organization All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Project repository: https://github.com/OpenSkywalking/skywalking
+ */
+package org.skywalking.apm.toolkit.activation.log.logback.v1.x.mdc;
+
+import org.skywalking.apm.agent.core.context.ContextManager;
+import org.skywalking.apm.agent.core.plugin.interceptor.enhance.EnhancedInstance;
+import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor;
+import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
+
+import java.lang.reflect.Method;
+
+/**
+ * @author zhangkewei
+ */
+public class PrintMDCTraceIdInterceptor implements InstanceMethodsAroundInterceptor {
+ @Override public void beforeMethod(EnhancedInstance objInst, Method method, Object[] allArguments,
+ Class>[] argumentsTypes, MethodInterceptResult result) throws Throwable {
+
+ }
+
+ @Override public Object afterMethod(EnhancedInstance objInst, Method method, Object[] allArguments,
+ Class>[] argumentsTypes, Object ret) throws Throwable {
+ return "TID:" + ContextManager.getGlobalTraceId();
+ }
+
+ @Override public void handleMethodException(EnhancedInstance objInst, Method method, Object[] allArguments,
+ Class>[] argumentsTypes, Throwable t) {
+
+ }
+}
\ No newline at end of file
diff --git a/apm-sniffer/apm-toolkit-activation/apm-toolkit-logback-1.x-activation/src/main/resources/skywalking-plugin.def b/apm-sniffer/apm-toolkit-activation/apm-toolkit-logback-1.x-activation/src/main/resources/skywalking-plugin.def
index 15839a3e7..e910f4542 100644
--- a/apm-sniffer/apm-toolkit-activation/apm-toolkit-logback-1.x-activation/src/main/resources/skywalking-plugin.def
+++ b/apm-sniffer/apm-toolkit-activation/apm-toolkit-logback-1.x-activation/src/main/resources/skywalking-plugin.def
@@ -1 +1,2 @@
toolkit-logback=org.skywalking.apm.toolkit.activation.log.logback.v1.x.LogbackPatternConverterActivation
+toolkit-logback=org.skywalking.apm.toolkit.activation.log.logback.v1.x.mdc.MDCConverterActivation
\ No newline at end of file
diff --git a/apm-sniffer/apm-toolkit-activation/apm-toolkit-opentracing-activation/pom.xml b/apm-sniffer/apm-toolkit-activation/apm-toolkit-opentracing-activation/pom.xml
index 9090727ac..ba097971a 100644
--- a/apm-sniffer/apm-toolkit-activation/apm-toolkit-opentracing-activation/pom.xml
+++ b/apm-sniffer/apm-toolkit-activation/apm-toolkit-opentracing-activation/pom.xml
@@ -23,7 +23,7 @@
apm-toolkit-activation
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-toolkit-activation/apm-toolkit-trace-activation/pom.xml b/apm-sniffer/apm-toolkit-activation/apm-toolkit-trace-activation/pom.xml
index dfd81a1a0..2706980c1 100644
--- a/apm-sniffer/apm-toolkit-activation/apm-toolkit-trace-activation/pom.xml
+++ b/apm-sniffer/apm-toolkit-activation/apm-toolkit-trace-activation/pom.xml
@@ -23,7 +23,7 @@
apm-toolkit-activation
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/apm-sniffer/apm-toolkit-activation/pom.xml b/apm-sniffer/apm-toolkit-activation/pom.xml
index 8cf9d3450..cee26941c 100644
--- a/apm-sniffer/apm-toolkit-activation/pom.xml
+++ b/apm-sniffer/apm-toolkit-activation/pom.xml
@@ -23,7 +23,7 @@
apm-sniffer
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
pom
diff --git a/apm-sniffer/pom.xml b/apm-sniffer/pom.xml
index 4680003d6..22fdb6f5d 100644
--- a/apm-sniffer/pom.xml
+++ b/apm-sniffer/pom.xml
@@ -23,7 +23,7 @@
apm
org.skywalking
- 3.2.3-2017
+ 3.2.4-2017
4.0.0
diff --git a/docker-compose.yml b/docker-compose.yml
index b74c96c00..c9c948bbd 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,7 +1,7 @@
version: '2.1'
services:
skywalking-webui:
- image: skywalking/skywalking-ui:3.2.3-2017
+ image: skywalking/skywalking-ui:3.2.4-2017
expose:
- "8080"
ports:
@@ -15,7 +15,7 @@ services:
- COLLECTOR_SERVERS=skywalking-collector:10800
skywalking-collector:
- image: skywalking/skywalking-collector:3.2.3-2017
+ image: skywalking/skywalking-collector:3.2.4-2017
expose:
- "10800"
- "11800"
diff --git a/pom.xml b/pom.xml
index 728756fc7..bf3ea48ad 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,7 +23,7 @@
org.skywalking
apm
- 3.2.3-2017
+ 3.2.4-2017