diff --git a/apm-application-toolkit/apm-toolkit-log4j-1.x/src/main/java/org/skywalking/apm/toolkit/log/log4j/v1/x/TraceIdPatternConverter.java b/apm-application-toolkit/apm-toolkit-log4j-1.x/src/main/java/org/skywalking/apm/toolkit/log/log4j/v1/x/TraceIdPatternConverter.java
index 1222150c5..04e05785d 100644
--- a/apm-application-toolkit/apm-toolkit-log4j-1.x/src/main/java/org/skywalking/apm/toolkit/log/log4j/v1/x/TraceIdPatternConverter.java
+++ b/apm-application-toolkit/apm-toolkit-log4j-1.x/src/main/java/org/skywalking/apm/toolkit/log/log4j/v1/x/TraceIdPatternConverter.java
@@ -5,7 +5,7 @@ import org.apache.log4j.spi.LoggingEvent;
/**
* Default implementation outputs "TID: N/A".
- * But, if in sky-walking agent active mode, output will become the real TraceId.
+ * But, if in sky-walking agent active mode, output will become the real ids.
*
* Created by wusheng on 2016/12/7.
*/
diff --git a/apm-collector/apm-collector-commons/pom.xml b/apm-collector/apm-collector-commons/pom.xml
index b117dd4e6..035e6d94f 100644
--- a/apm-collector/apm-collector-commons/pom.xml
+++ b/apm-collector/apm-collector-commons/pom.xml
@@ -18,10 +18,5 @@
apm-collector-cluster
${project.version}
-
- org.skywalking
- apm-trace
- ${project.version}
-
diff --git a/apm-collector/apm-collector-worker/src/test/java/org/skywalking/apm/collector/worker/span/persistence/SpanSearchWithIdTestCase.java b/apm-collector/apm-collector-worker/src/test/java/org/skywalking/apm/collector/worker/span/persistence/SpanSearchWithIdTestCase.java
index 020e5df81..2d8833a58 100644
--- a/apm-collector/apm-collector-worker/src/test/java/org/skywalking/apm/collector/worker/span/persistence/SpanSearchWithIdTestCase.java
+++ b/apm-collector/apm-collector-worker/src/test/java/org/skywalking/apm/collector/worker/span/persistence/SpanSearchWithIdTestCase.java
@@ -18,8 +18,8 @@ import org.skywalking.apm.collector.worker.Const;
import org.skywalking.apm.collector.worker.segment.SegmentIndex;
import org.skywalking.apm.collector.worker.segment.mock.SegmentMock;
import org.skywalking.apm.collector.worker.storage.GetResponseFromEs;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
import java.util.TimeZone;
diff --git a/apm-commons/apm-trace/pom.xml b/apm-commons/apm-trace/pom.xml
deleted file mode 100644
index ec5475a9f..000000000
--- a/apm-commons/apm-trace/pom.xml
+++ /dev/null
@@ -1,53 +0,0 @@
-
-
-
- apm-commons
- org.skywalking
- 3.1-2017
-
- 4.0.0
-
- apm-trace
-
-
-
- org.skywalking
- apm-util
- ${project.version}
-
-
-
-
-
-
- kr.motd.maven
- os-maven-plugin
- 1.5.0.Final
-
-
-
-
- org.xolstice.maven.plugins
- protobuf-maven-plugin
- 0.5.0
-
- com.google.protobuf:protoc:3.0.0:exe:${os.detected.classifier}
-
- grpc-java
- io.grpc:protoc-gen-grpc-java:1.0.2:exe:${os.detected.classifier}
-
-
-
-
-
- compile
- compile-custom
-
-
-
-
-
-
-
diff --git a/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/tag/BooleanTagReader.java b/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/tag/BooleanTagReader.java
deleted file mode 100644
index f90ca2e10..000000000
--- a/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/tag/BooleanTagReader.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package org.skywalking.apm.trace.tag;
-
-import java.lang.reflect.Field;
-import java.util.List;
-import org.skywalking.apm.trace.Span;
-
-/**
- * @author wusheng
- */
-public class BooleanTagReader {
- public static Boolean get(Span span, BooleanTag tag) {
- List tagsWithBoolList = null;
- try {
- Field tagsWithBool = Span.class.getDeclaredField("tagsWithBool");
- tagsWithBool.setAccessible(true);
- tagsWithBoolList = (List)tagsWithBool.get(span);
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- } catch (NoSuchFieldException e) {
- e.printStackTrace();
- }
-
- if (tagsWithBoolList != null) {
- for (BooleanTagItem item : tagsWithBoolList) {
- if (tag.key().equals(item.getKey())) {
- return item.getValue();
- }
- }
- }
- return tag.defaultValue();
- }
-
-}
diff --git a/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/tag/IntTagReader.java b/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/tag/IntTagReader.java
deleted file mode 100644
index 73e8980d7..000000000
--- a/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/tag/IntTagReader.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package org.skywalking.apm.trace.tag;
-
-import java.lang.reflect.Field;
-import java.util.List;
-import org.skywalking.apm.trace.Span;
-
-/**
- * @author wusheng
- */
-public class IntTagReader {
- public static Integer get(Span span, IntTag tag) {
- List tagsWithIntList = null;
- try {
- Field tagsWithInt = Span.class.getDeclaredField("tagsWithInt");
- tagsWithInt.setAccessible(true);
- tagsWithIntList = (List)tagsWithInt.get(span);
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- } catch (NoSuchFieldException e) {
- e.printStackTrace();
- }
-
- if (tagsWithIntList != null) {
- for (IntTagItem item : tagsWithIntList) {
- if (tag.key().equals(item.getKey())) {
- return item.getValue();
- }
- }
- }
- return null;
- }
-
-}
diff --git a/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/tag/StringTagReader.java b/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/tag/StringTagReader.java
deleted file mode 100644
index 5aee9a93c..000000000
--- a/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/tag/StringTagReader.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.skywalking.apm.trace.tag;
-
-import java.lang.reflect.Field;
-import java.util.List;
-import org.skywalking.apm.trace.Span;
-
-/**
- * @author wusheng
- */
-public class StringTagReader {
- public static String get(Span span, StringTag tag) {
- List tagsWithStrList = null;
- try {
- Field tagsWithStr = Span.class.getDeclaredField("tagsWithStr");
- tagsWithStr.setAccessible(true);
- tagsWithStrList = (List)tagsWithStr.get(span);
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- } catch (NoSuchFieldException e) {
- e.printStackTrace();
- }
-
- for (StringTagItem item : tagsWithStrList) {
- if (tag.key().equals(item.getKey())) {
- return item.getValue();
- }
- }
- return null;
- }
-
-}
diff --git a/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/tag/TagsTest.java b/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/tag/TagsTest.java
deleted file mode 100644
index 59f99b1a9..000000000
--- a/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/tag/TagsTest.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package org.skywalking.apm.trace.tag;
-
-import org.junit.Assert;
-import org.junit.Test;
-import org.skywalking.apm.trace.Span;
-
-/**
- * @author wusheng
- */
-public class TagsTest {
- @Test
- public void testLayer() {
- Span span = new Span(1, "/test");
- Tags.SPAN_LAYER.asDB(span);
- Assert.assertEquals("db", StringTagReader.get(span, Tags.SPAN_LAYER.SPAN_LAYER_TAG));
-
- span = new Span(1, "/test");
- Tags.SPAN_LAYER.asRPCFramework(span);
- Assert.assertEquals("rpc", StringTagReader.get(span, Tags.SPAN_LAYER.SPAN_LAYER_TAG));
-
- span = new Span(1, "/test");
- Tags.SPAN_LAYER.asHttp(span);
- Assert.assertEquals("http", StringTagReader.get(span, Tags.SPAN_LAYER.SPAN_LAYER_TAG));
- }
-
- @Test
- public void testBooleanTag() {
- BooleanTag tag = new BooleanTag("test.key", false);
- Span span = new Span(1, "/test");
- Assert.assertFalse(BooleanTagReader.get(span, tag));
-
- span = new Span(1, "/test");
- tag.set(span, true);
- Assert.assertTrue(BooleanTagReader.get(span, tag));
- }
-
- @Test
- public void testIntTag() {
- IntTag tag = new IntTag("test.key");
- Span span = new Span(1, "/test");
- Assert.assertNull(IntTagReader.get(span, tag));
- }
-}
diff --git a/apm-commons/pom.xml b/apm-commons/pom.xml
index f0d875494..3993cf65f 100644
--- a/apm-commons/pom.xml
+++ b/apm-commons/pom.xml
@@ -11,7 +11,6 @@
pom
- apm-trace
apm-util
apm-logging-api
apm-logging-log4j2
diff --git a/apm-sniffer/apm-agent-core/pom.xml b/apm-sniffer/apm-agent-core/pom.xml
index edbc0034d..2a731def1 100644
--- a/apm-sniffer/apm-agent-core/pom.xml
+++ b/apm-sniffer/apm-agent-core/pom.xml
@@ -29,11 +29,6 @@
-
- org.skywalking
- apm-trace
- ${project.version}
-
org.skywalking
apm-logging-api
diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/client/CollectorClient.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/client/CollectorClient.java
index 279d95a0e..6b5fc05fa 100644
--- a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/client/CollectorClient.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/client/CollectorClient.java
@@ -10,11 +10,11 @@ import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.conf.Config;
+import org.skywalking.apm.agent.core.context.trace.SegmentsMessage;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
import org.skywalking.apm.agent.core.queue.TraceSegmentProcessQueue;
import org.skywalking.apm.logging.ILog;
import org.skywalking.apm.logging.LogManager;
-import org.skywalking.apm.trace.SegmentsMessage;
-import org.skywalking.apm.trace.TraceSegment;
import java.io.IOException;
import java.util.List;
diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/client/CollectorClientService.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/client/CollectorClientService.java
index 68a688774..d4c32a9e9 100644
--- a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/client/CollectorClientService.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/client/CollectorClientService.java
@@ -1,8 +1,8 @@
package org.skywalking.apm.agent.core.client;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
import org.skywalking.apm.agent.core.queue.TraceSegmentProcessQueue;
import org.skywalking.apm.agent.core.boot.StatusBootService;
-import org.skywalking.apm.trace.TraceSegment;
/**
* The CollectorClientService is responsible for start {@link CollectorClient}.
diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/conf/Config.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/conf/Config.java
index a8789cda3..0dbd4f44a 100644
--- a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/conf/Config.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/conf/Config.java
@@ -2,6 +2,7 @@ package org.skywalking.apm.agent.core.conf;
import java.util.LinkedList;
import java.util.List;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
import org.skywalking.apm.agent.core.logging.LogLevel;
import org.skywalking.apm.agent.core.logging.WriterFactory;
@@ -20,11 +21,16 @@ public class Config {
public static String APPLICATION_CODE = "";
/**
- * One, means sampling OFF.
- * Greater than one, select one trace in every N traces.
- * Zero and negative number are illegal.
+ * Negative or zero means off, by default.
+ * {@link #SAMPLE_N_PER_10_SECS} means sampling N {@link TraceSegment} in 10 seconds tops.
*/
- public static int SAMPLING_CYCLE = 1;
+ public static int SAMPLE_N_PER_10_SECS = -1;
+
+ /**
+ * If the operation name of the first span is included in this set,
+ * this segment should be ignored.
+ */
+ public static String IGNORE_SUFFIX = ".jpg,.jpeg,.js,.css,.png,.bmp,.gif,.ico,.mp3,.mp4,.html";
}
public static class Collector {
@@ -103,12 +109,12 @@ public class Config {
public static boolean TRACE_PARAM = false;
}
- public static class Http {
+ public static class Propagation {
/**
- * The header name of context data.
+ * The header name of cross process propagation data.
*/
- public static String HEADER_NAME_OF_CONTEXT_DATA = "SWTraceContext";
+ public static String HEADER_NAME = "sw3";
}
}
}
diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/AbstractTracerContext.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/AbstractTracerContext.java
new file mode 100644
index 000000000..ade88e1af
--- /dev/null
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/AbstractTracerContext.java
@@ -0,0 +1,26 @@
+package org.skywalking.apm.agent.core.context;
+
+import org.skywalking.apm.agent.core.context.trace.Span;
+
+/**
+ * The AbstractTracerContext represents the tracer context manager.
+ *
+ * @author wusheng
+ */
+public interface AbstractTracerContext {
+ void inject(ContextCarrier carrier);
+
+ void extract(ContextCarrier carrier);
+
+ String getGlobalTraceId();
+
+ Span createSpan(String operationName, boolean isLeaf);
+
+ Span createSpan(String operationName, long startTime, boolean isLeaf);
+
+ Span activeSpan();
+
+ void stopSpan(Span span);
+
+ void stopSpan(Span span, Long endTime);
+}
diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ContextCarrier.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ContextCarrier.java
index 278ae7d94..10e2efc1d 100644
--- a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ContextCarrier.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ContextCarrier.java
@@ -1,15 +1,13 @@
package org.skywalking.apm.agent.core.context;
-import org.skywalking.apm.util.StringUtil;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceId.DistributedTraceId;
-import org.skywalking.apm.trace.TraceId.PropagatedTraceId;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.tag.Tags;
-
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
+import org.skywalking.apm.agent.core.context.ids.DistributedTraceId;
+import org.skywalking.apm.agent.core.context.ids.PropagatedTraceId;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.util.StringUtil;
/**
* {@link ContextCarrier} is a data carrier of {@link TracerContext}.
@@ -34,7 +32,8 @@ public class ContextCarrier implements Serializable {
private String applicationCode;
/**
- * {@link Tags#PEER_HOST}
+ * Either {@link Span#peerHost} + {@link Span#port} or {@link Span#peers},
+ * depend on which one of them is valid.
*/
private String peerHost;
@@ -43,11 +42,6 @@ public class ContextCarrier implements Serializable {
*/
private List distributedTraceIds;
- /**
- * {@link TraceSegment#sampled}
- */
- private boolean sampled;
-
/**
* Serialize this {@link ContextCarrier} to a {@link String},
* with '|' split.
@@ -60,8 +54,7 @@ public class ContextCarrier implements Serializable {
this.getSpanId() + "",
this.getApplicationCode(),
this.getPeerHost(),
- this.serializeDistributedTraceIds(),
- this.isSampled() ? "1" : "0");
+ this.serializeDistributedTraceIds());
}
/**
@@ -72,14 +65,13 @@ public class ContextCarrier implements Serializable {
public ContextCarrier deserialize(String text) {
if (text != null) {
String[] parts = text.split("\\|", 6);
- if (parts.length == 6) {
+ if (parts.length == 5) {
try {
setSpanId(Integer.parseInt(parts[1]));
setTraceSegmentId(parts[0]);
setApplicationCode(parts[2]);
setPeerHost(parts[3]);
setDistributedTraceIds(deserializeDistributedTraceIds(parts[4]));
- setSampled("1".equals(parts[5]));
} catch (NumberFormatException e) {
}
@@ -137,14 +129,6 @@ public class ContextCarrier implements Serializable {
return distributedTraceIds;
}
- public boolean isSampled() {
- return sampled;
- }
-
- public void setSampled(boolean sampled) {
- this.sampled = sampled;
- }
-
public void setDistributedTraceIds(List distributedTraceIds) {
this.distributedTraceIds = distributedTraceIds;
}
diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ContextManager.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ContextManager.java
index 2371f07de..157c2fb9a 100644
--- a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ContextManager.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ContextManager.java
@@ -1,26 +1,27 @@
package org.skywalking.apm.agent.core.context;
import org.skywalking.apm.agent.core.boot.BootService;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
/**
* {@link TracerContext} controls the whole context of {@link TraceSegment}. Any {@link TraceSegment} relates to
* single-thread, so this context use {@link ThreadLocal} to maintain the context, and make sure, since a {@link
* TraceSegment} starts, all ChildOf spans are in the same context.
+ * What is 'ChildOf'? {@see
+ * https://github.com/opentracing/specification/blob/master/specification.md#references-between-spans}
+ *
Also, {@link
+ * ContextManager} delegates to all {@link TracerContext}'s major methods: {@link TracerContext#createSpan(String,
+ * boolean)}, {@link TracerContext#activeSpan()}, {@link TracerContext#stopSpan(Span)}
*
- * What is 'ChildOf'? {@see https://github.com/opentracing/specification/blob/master/specification.md#references-between-spans}
- *
- * Also, {@link ContextManager} delegates to all {@link TracerContext}'s major methods: {@link
- * TracerContext#createSpan(String)}, {@link TracerContext#activeSpan()}, {@link TracerContext#stopSpan(Span)}
- *
- * Created by wusheng on 2017/2/17.
+ *
+ * @author wusheng
*/
public class ContextManager implements TracerContextListener, BootService {
- private static ThreadLocal CONTEXT = new ThreadLocal();
+ private static ThreadLocal CONTEXT = new ThreadLocal();
- private static TracerContext get() {
- TracerContext segment = CONTEXT.get();
+ private static AbstractTracerContext get() {
+ AbstractTracerContext segment = CONTEXT.get();
if (segment == null) {
segment = new TracerContext();
CONTEXT.set(segment);
@@ -46,7 +47,7 @@ public class ContextManager implements TracerContextListener, BootService {
* @return the first global trace id if exist. Otherwise, "N/A".
*/
public static String getGlobalTraceId() {
- TracerContext segment = CONTEXT.get();
+ AbstractTracerContext segment = CONTEXT.get();
if (segment == null) {
return "N/A";
} else {
@@ -95,4 +96,15 @@ public class ContextManager implements TracerContextListener, BootService {
public void afterFinished(TraceSegment traceSegment) {
CONTEXT.remove();
}
+
+ /**
+ * The ContextSwitcher gives the chance to switch {@link AbstractTracerContext} in {@link #CONTEXT}.
+ */
+ enum ContextSwitcher {
+ INSTANCE;
+
+ void toNew(AbstractTracerContext context) {
+ CONTEXT.set(context);
+ }
+ }
}
diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/TracerContext.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/TracerContext.java
index 0d70a27e4..1c183e93d 100644
--- a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/TracerContext.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/TracerContext.java
@@ -2,12 +2,11 @@ package org.skywalking.apm.agent.core.context;
import java.util.LinkedList;
import java.util.List;
-import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.conf.Config;
-import org.skywalking.apm.agent.core.sampling.SamplingService;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.TraceSegmentRef;
+import org.skywalking.apm.agent.core.context.trace.LeafSpan;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegmentRef;
/**
* {@link TracerContext} maintains the context.
@@ -15,7 +14,7 @@ import org.skywalking.apm.trace.TraceSegmentRef;
*
* Created by wusheng on 2017/2/17.
*/
-public final class TracerContext {
+public final class TracerContext implements AbstractTracerContext {
private TraceSegment segment;
/**
@@ -34,7 +33,6 @@ public final class TracerContext {
*/
TracerContext() {
this.segment = new TraceSegment(Config.Agent.APPLICATION_CODE);
- ServiceManager.INSTANCE.findService(SamplingService.class).trySampling(this.segment);
this.spanIdGenerator = 0;
}
@@ -104,7 +102,7 @@ public final class TracerContext {
/**
* @return the current trace id.
*/
- String getGlobalTraceId() {
+ public String getGlobalTraceId() {
return segment.getRelatedGlobalTraces().get(0).get();
}
@@ -154,7 +152,6 @@ public final class TracerContext {
carrier.setPeerHost(span.getPeers());
}
carrier.setDistributedTraceIds(this.segment.getRelatedGlobalTraces());
- carrier.setSampled(this.segment.isSampled());
}
/**
@@ -166,7 +163,6 @@ public final class TracerContext {
public void extract(ContextCarrier carrier) {
if (carrier.isValid()) {
this.segment.ref(getRef(carrier));
- ServiceManager.INSTANCE.findService(SamplingService.class).setSampleWhenExtract(this.segment, carrier);
this.segment.relatedGlobalTraces(carrier.getDistributedTraceIds());
}
}
diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/TracerContextListener.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/TracerContextListener.java
index 20a77fd1f..7907e6af6 100644
--- a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/TracerContextListener.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/TracerContextListener.java
@@ -1,6 +1,6 @@
package org.skywalking.apm.agent.core.context;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
/**
* {@link TracerContextListener} is a status change listener of {@link TracerContext}.
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceId/DistributedTraceId.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/DistributedTraceId.java
similarity index 96%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceId/DistributedTraceId.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/DistributedTraceId.java
index 9308769ff..d4cb0d420 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceId/DistributedTraceId.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/DistributedTraceId.java
@@ -1,4 +1,4 @@
-package org.skywalking.apm.trace.TraceId;
+package org.skywalking.apm.agent.core.context.ids;
/**
* The DistributedTraceId presents a distributed call chain.
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceId/DistributedTraceIds.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/DistributedTraceIds.java
similarity index 97%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceId/DistributedTraceIds.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/DistributedTraceIds.java
index 1ffd7058c..fab3ad63d 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceId/DistributedTraceIds.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/DistributedTraceIds.java
@@ -1,10 +1,9 @@
-package org.skywalking.apm.trace.TraceId;
+package org.skywalking.apm.agent.core.context.ids;
import com.google.gson.TypeAdapter;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
-
import java.io.IOException;
import java.util.Collections;
import java.util.LinkedList;
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/GlobalIdGenerator.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/GlobalIdGenerator.java
similarity index 94%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/GlobalIdGenerator.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/GlobalIdGenerator.java
index 50e612305..d9720fbcf 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/GlobalIdGenerator.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/GlobalIdGenerator.java
@@ -1,9 +1,8 @@
-package org.skywalking.apm.trace;
-
-import org.skywalking.apm.util.MachineInfo;
-import org.skywalking.apm.util.StringUtil;
+package org.skywalking.apm.agent.core.context.ids;
import java.util.UUID;
+import org.skywalking.apm.util.MachineInfo;
+import org.skywalking.apm.util.StringUtil;
public final class GlobalIdGenerator {
private static final ThreadLocal THREAD_ID_SEQUENCE = new ThreadLocal() {
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceId/NewDistributedTraceId.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/NewDistributedTraceId.java
similarity index 78%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceId/NewDistributedTraceId.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/NewDistributedTraceId.java
index cf87037a6..837650b41 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceId/NewDistributedTraceId.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/NewDistributedTraceId.java
@@ -1,6 +1,4 @@
-package org.skywalking.apm.trace.TraceId;
-
-import org.skywalking.apm.trace.GlobalIdGenerator;
+package org.skywalking.apm.agent.core.context.ids;
/**
* The NewDistributedTraceId is a {@link DistributedTraceId} with a new generated id.
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceId/PropagatedTraceId.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/PropagatedTraceId.java
similarity index 84%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceId/PropagatedTraceId.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/PropagatedTraceId.java
index 5b327332b..8c19d5a51 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceId/PropagatedTraceId.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/ids/PropagatedTraceId.java
@@ -1,4 +1,4 @@
-package org.skywalking.apm.trace.TraceId;
+package org.skywalking.apm.agent.core.context.ids;
/**
* The PropagatedTraceId represents a {@link DistributedTraceId}, which is propagated from the peer.
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/AbstractTag.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/AbstractTag.java
similarity index 85%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/AbstractTag.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/AbstractTag.java
index cc37ea86b..9f8fc4878 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/AbstractTag.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/AbstractTag.java
@@ -1,6 +1,6 @@
-package org.skywalking.apm.trace.tag;
+package org.skywalking.apm.agent.core.context.tag;
-import org.skywalking.apm.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.Span;
/**
* This is the abstract tag.
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/BooleanTag.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/BooleanTag.java
similarity index 83%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/BooleanTag.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/BooleanTag.java
index ca48962b2..429acb8bd 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/BooleanTag.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/BooleanTag.java
@@ -1,6 +1,6 @@
-package org.skywalking.apm.trace.tag;
+package org.skywalking.apm.agent.core.context.tag;
-import org.skywalking.apm.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.Span;
/**
* Do the same thing as {@link StringTag}, just with a {@link Boolean} value.
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/BooleanTagItem.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/BooleanTagItem.java
similarity index 88%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/BooleanTagItem.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/BooleanTagItem.java
index 664fc7909..a419e1142 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/BooleanTagItem.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/BooleanTagItem.java
@@ -1,4 +1,4 @@
-package org.skywalking.apm.trace.tag;
+package org.skywalking.apm.agent.core.context.tag;
/**
* The tag item with String key and Boolean value.
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/IntTag.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/IntTag.java
similarity index 76%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/IntTag.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/IntTag.java
index 92ed9eba3..d2f73438b 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/IntTag.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/IntTag.java
@@ -1,6 +1,6 @@
-package org.skywalking.apm.trace.tag;
+package org.skywalking.apm.agent.core.context.tag;
-import org.skywalking.apm.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.Span;
/**
* Do the same thing as {@link StringTag}, just with a {@link Integer} value.
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/IntTagItem.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/IntTagItem.java
similarity index 87%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/IntTagItem.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/IntTagItem.java
index efebc7af0..3efc3d40f 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/IntTagItem.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/IntTagItem.java
@@ -1,4 +1,4 @@
-package org.skywalking.apm.trace.tag;
+package org.skywalking.apm.agent.core.context.tag;
/**
* The tag item with String key and Int value.
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/StringTag.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/StringTag.java
similarity index 77%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/StringTag.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/StringTag.java
index 1ce53d5dd..d70312053 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/StringTag.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/StringTag.java
@@ -1,6 +1,6 @@
-package org.skywalking.apm.trace.tag;
+package org.skywalking.apm.agent.core.context.tag;
-import org.skywalking.apm.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.Span;
/**
* A subclass of {@link AbstractTag},
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/StringTagItem.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/StringTagItem.java
similarity index 88%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/StringTagItem.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/StringTagItem.java
index 3f905f760..c6ce6da25 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/StringTagItem.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/StringTagItem.java
@@ -1,4 +1,4 @@
-package org.skywalking.apm.trace.tag;
+package org.skywalking.apm.agent.core.context.tag;
/**
* The tag item with String key and String value.
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/Tags.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/Tags.java
similarity index 96%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/Tags.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/Tags.java
index b70f492d0..cd0fe82fb 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/Tags.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/tag/Tags.java
@@ -1,6 +1,6 @@
-package org.skywalking.apm.trace.tag;
+package org.skywalking.apm.agent.core.context.tag;
-import org.skywalking.apm.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.Span;
/**
* The span tags are supported by sky-walking engine.
diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/LeafSpan.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/LeafSpan.java
similarity index 93%
rename from apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/LeafSpan.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/LeafSpan.java
index a527b68ab..0d102e952 100644
--- a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/LeafSpan.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/LeafSpan.java
@@ -1,7 +1,5 @@
-package org.skywalking.apm.agent.core.context;
+package org.skywalking.apm.agent.core.context.trace;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
/**
* LeafSpan is a special type of {@link Span}
@@ -41,15 +39,15 @@ public class LeafSpan extends Span {
super(spanId, parentSpan.getSpanId(), operationName, startTime);
}
- void push() {
+ public void push() {
stackDepth++;
}
- void pop() {
+ public void pop() {
stackDepth--;
}
- boolean isFinished() {
+ public boolean isFinished() {
return stackDepth == 0;
}
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/LogData.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/LogData.java
similarity index 93%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/LogData.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/LogData.java
index 2cad305a9..3e9fd6b01 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/LogData.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/LogData.java
@@ -1,8 +1,7 @@
-package org.skywalking.apm.trace;
+package org.skywalking.apm.agent.core.context.trace;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
-
import java.util.Collections;
import java.util.Map;
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/SegmentsMessage.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/SegmentsMessage.java
similarity index 96%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/SegmentsMessage.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/SegmentsMessage.java
index f68165a58..d08fae7ce 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/SegmentsMessage.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/SegmentsMessage.java
@@ -1,4 +1,4 @@
-package org.skywalking.apm.trace;
+package org.skywalking.apm.agent.core.context.trace;
import com.google.gson.Gson;
import java.util.Collections;
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/Span.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/Span.java
similarity index 95%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/Span.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/Span.java
index 18ef66fcf..a3dd660d8 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/Span.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/Span.java
@@ -1,4 +1,4 @@
-package org.skywalking.apm.trace;
+package org.skywalking.apm.agent.core.context.trace;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@@ -13,10 +13,11 @@ import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
-import org.skywalking.apm.trace.tag.BooleanTagItem;
-import org.skywalking.apm.trace.tag.IntTagItem;
-import org.skywalking.apm.trace.tag.StringTagItem;
-import org.skywalking.apm.trace.util.ThrowableTransformer;
+import org.skywalking.apm.agent.core.conf.Config;
+import org.skywalking.apm.agent.core.context.tag.BooleanTagItem;
+import org.skywalking.apm.agent.core.context.tag.IntTagItem;
+import org.skywalking.apm.agent.core.context.tag.StringTagItem;
+import org.skywalking.apm.agent.core.context.util.ThrowableTransformer;
import org.skywalking.apm.util.StringUtil;
/**
@@ -194,6 +195,14 @@ public class Span {
*/
public Span setOperationName(String operationName) {
this.operationName = operationName;
+ if (this.spanId == 0) {
+ if (operationName != null) {
+ int suffixIdx = operationName.lastIndexOf(".");
+ if (suffixIdx > -1 && Config.Agent.IGNORE_SUFFIX.contains(operationName.substring(suffixIdx))) {
+
+ }
+ }
+ }
return this;
}
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceSegment.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/TraceSegment.java
similarity index 89%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceSegment.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/TraceSegment.java
index ab79cc159..d39ecb354 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceSegment.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/TraceSegment.java
@@ -1,14 +1,14 @@
-package org.skywalking.apm.trace;
+package org.skywalking.apm.agent.core.context.trace;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
-import org.skywalking.apm.trace.TraceId.DistributedTraceId;
-import org.skywalking.apm.trace.TraceId.DistributedTraceIds;
-import org.skywalking.apm.trace.TraceId.NewDistributedTraceId;
-
import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
+import org.skywalking.apm.agent.core.context.ids.GlobalIdGenerator;
+import org.skywalking.apm.agent.core.context.ids.DistributedTraceId;
+import org.skywalking.apm.agent.core.context.ids.DistributedTraceIds;
+import org.skywalking.apm.agent.core.context.ids.NewDistributedTraceId;
/**
* {@link TraceSegment} is a segment or fragment of the distributed trace.
@@ -90,16 +90,6 @@ public class TraceSegment {
@SerializedName(value = "gt")
private DistributedTraceIds relatedGlobalTraces;
- /**
- * The sampled is a flag, which represent, when this {@link TraceSegment} finished, it need to be send
- * to Collector.
- *
- * Its value depends on SamplingService. True, by default.
- *
- * This value is not serialized.
- */
- private boolean sampled;
-
/**
* Create a trace segment, by the given applicationCode.
*/
@@ -119,7 +109,6 @@ public class TraceSegment {
this.spans = new LinkedList();
this.relatedGlobalTraces = new DistributedTraceIds();
this.relatedGlobalTraces.append(new NewDistributedTraceId());
- this.sampled = true;
}
/**
@@ -201,14 +190,6 @@ public class TraceSegment {
return applicationCode;
}
- public boolean isSampled() {
- return sampled;
- }
-
- public void setSampled(boolean sampled) {
- this.sampled = sampled;
- }
-
@Override
public String toString() {
return "TraceSegment{" +
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceSegmentRef.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/TraceSegmentRef.java
similarity index 95%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceSegmentRef.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/TraceSegmentRef.java
index 33b038bc9..bd0ca79cb 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/TraceSegmentRef.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/trace/TraceSegmentRef.java
@@ -1,8 +1,8 @@
-package org.skywalking.apm.trace;
+package org.skywalking.apm.agent.core.context.trace;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.tag.Tags;
/**
* {@link TraceSegmentRef} is like a pointer, which ref to another {@link TraceSegment},
diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/util/ThrowableTransformer.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/util/ThrowableTransformer.java
similarity index 97%
rename from apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/util/ThrowableTransformer.java
rename to apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/util/ThrowableTransformer.java
index 707d9263f..f29f61557 100644
--- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/util/ThrowableTransformer.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/context/util/ThrowableTransformer.java
@@ -1,4 +1,4 @@
-package org.skywalking.apm.trace.util;
+package org.skywalking.apm.agent.core.context.util;
/**
* {@link ThrowableTransformer} is responsible for transferring stack trace of throwable.
diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/queue/TraceSegmentHolder.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/queue/TraceSegmentHolder.java
index d1c7a1859..d345c1da6 100644
--- a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/queue/TraceSegmentHolder.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/queue/TraceSegmentHolder.java
@@ -1,7 +1,7 @@
package org.skywalking.apm.agent.core.queue;
import com.lmax.disruptor.EventFactory;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
/**
* Just a holder of {@link TraceSegment} instance.
diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/queue/TraceSegmentProcessQueue.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/queue/TraceSegmentProcessQueue.java
index 419d64894..3fecf0162 100644
--- a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/queue/TraceSegmentProcessQueue.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/queue/TraceSegmentProcessQueue.java
@@ -4,16 +4,16 @@ import com.lmax.disruptor.EventHandler;
import com.lmax.disruptor.RingBuffer;
import com.lmax.disruptor.dsl.Disruptor;
import com.lmax.disruptor.util.DaemonThreadFactory;
+import java.util.LinkedList;
+import java.util.List;
import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.boot.StatusBootService;
import org.skywalking.apm.agent.core.context.TracerContext;
import org.skywalking.apm.agent.core.context.TracerContextListener;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
import org.skywalking.apm.logging.ILog;
import org.skywalking.apm.logging.LogManager;
-import org.skywalking.apm.trace.TraceSegment;
-import java.util.LinkedList;
-import java.util.List;
/**
* {@link TraceSegmentProcessQueue} is a proxy of {@link Disruptor}, High Performance Inter-Thread MQ.
@@ -51,7 +51,7 @@ public class TraceSegmentProcessQueue extends StatusBootService implements Trace
*/
@Override
public void afterFinished(TraceSegment traceSegment) {
- if (isStarted() && traceSegment.isSampled()) {
+ if (isStarted()) {
long sequence = this.buffer.next(); // Grab the next sequence
try {
TraceSegmentHolder data = this.buffer.get(sequence);
diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/sampling/SamplingService.java b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/sampling/SamplingService.java
index 761d192be..a55136a3d 100644
--- a/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/sampling/SamplingService.java
+++ b/apm-sniffer/apm-agent-core/src/main/java/org/skywalking/apm/agent/core/sampling/SamplingService.java
@@ -3,16 +3,16 @@ package org.skywalking.apm.agent.core.sampling;
import org.skywalking.apm.agent.core.boot.BootService;
import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.ContextCarrier;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
import org.skywalking.apm.logging.ILog;
import org.skywalking.apm.logging.LogManager;
-import org.skywalking.apm.trace.TraceSegment;
/**
* The SamplingService take charge of how to sample the {@link TraceSegment}. Every {@link TraceSegment}s
* have been traced, but, considering CPU cost of serialization/deserialization, and network bandwidth, the agent do NOT
* send all of them to collector, if SAMPLING is on.
*
- * By default, SAMPLING is off, and {@link Config.Agent#SAMPLING_CYCLE} == 1.
+ * By default, SAMPLING is on, and {@see {@link Config.Agent#SAMPLE_N_PER_10_SECS}}
*
* @author wusheng
*/
@@ -24,27 +24,12 @@ public class SamplingService implements BootService {
@Override
public void bootUp() throws Throwable {
- if (Config.Agent.SAMPLING_CYCLE == 1) {
- this.on = false;
- return;
+ if (Config.Agent.SAMPLE_N_PER_10_SECS > 0) {
+ on = true;
}
- if (Config.Agent.SAMPLING_CYCLE < 1) {
- throw new IllegalSamplingRateException("sampling cycle must greater than 0.");
- }
- this.on = true;
-
- logger.debug("The trace sampling is on, and the sampling cycle is: {}", Config.Agent.SAMPLING_CYCLE);
}
public void trySampling(TraceSegment segment) {
- if (on) {
- if (rollingSeed % Config.Agent.SAMPLING_CYCLE != 0) {
- segment.setSampled(false);
- rollingSeed++;
- } else {
- this.rollingSeed = 1;
- }
- }
}
/**
@@ -58,12 +43,6 @@ public class SamplingService implements BootService {
* @param carrier
*/
public void setSampleWhenExtract(TraceSegment segment, ContextCarrier carrier) {
- if (on) {
- if (!segment.isSampled() && carrier.isSampled()) {
- segment.setSampled(true);
- this.rollingSeed = 1;
- }
- }
}
}
diff --git a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/ContextCarrierTestCase.java b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/ContextCarrierTestCase.java
index 5546ece50..0d4955d88 100644
--- a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/ContextCarrierTestCase.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/ContextCarrierTestCase.java
@@ -2,8 +2,8 @@ package org.skywalking.apm.agent.core.context;
import org.junit.Assert;
import org.junit.Test;
-import org.skywalking.apm.trace.TraceId.DistributedTraceId;
-import org.skywalking.apm.trace.TraceId.PropagatedTraceId;
+import org.skywalking.apm.agent.core.context.ids.DistributedTraceId;
+import org.skywalking.apm.agent.core.context.ids.PropagatedTraceId;
import java.util.LinkedList;
import java.util.List;
@@ -19,18 +19,17 @@ public class ContextCarrierTestCase {
carrier.setSpanId(100);
carrier.setApplicationCode("REMOTE_APP");
carrier.setPeerHost("10.2.3.16:8080");
- carrier.setSampled(true);
List ids = new LinkedList();
ids.add(new PropagatedTraceId("Trace.global.id.123"));
carrier.setDistributedTraceIds(ids);
- Assert.assertEquals("trace_id_A|100|REMOTE_APP|10.2.3.16:8080|Trace.global.id.123|1", carrier.serialize());
+ Assert.assertEquals("trace_id_A|100|REMOTE_APP|10.2.3.16:8080|Trace.global.id.123", carrier.serialize());
}
@Test
public void testDeserialize() {
ContextCarrier carrier = new ContextCarrier();
- carrier.deserialize("trace_id_A|100|REMOTE_APP|10.2.3.16:8080|Trace.global.id.123,Trace.global.id.222|1");
+ carrier.deserialize("trace_id_A|100|REMOTE_APP|10.2.3.16:8080|Trace.global.id.123,Trace.global.id.222");
Assert.assertEquals("trace_id_A", carrier.getTraceSegmentId());
Assert.assertEquals(100, carrier.getSpanId());
@@ -38,7 +37,6 @@ public class ContextCarrierTestCase {
Assert.assertEquals("10.2.3.16:8080", carrier.getPeerHost());
Assert.assertEquals("Trace.global.id.123", carrier.getDistributedTraceIds().get(0).get());
Assert.assertEquals("Trace.global.id.222", carrier.getDistributedTraceIds().get(1).get());
- Assert.assertEquals(true, carrier.isSampled());
}
@Test
@@ -65,10 +63,10 @@ public class ContextCarrierTestCase {
carrier = new ContextCarrier();
carrier.deserialize("trace_id|100|REMOTE_APP|10.2.3.16:8080|Trace.global.id.123,Trace.global.id.222");
- Assert.assertFalse(carrier.isValid());
+ Assert.assertTrue(carrier.isValid());
carrier = new ContextCarrier();
carrier.deserialize("trace_id|100|REMOTE_APP|10.2.3.16:8080|Trace.global.id.123,Trace.global.id.222|0");
- Assert.assertTrue(carrier.isValid());
+ Assert.assertFalse(carrier.isValid());
}
}
diff --git a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/ContextManagerTestCase.java b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/ContextManagerTestCase.java
index 8b35f2018..244623296 100644
--- a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/ContextManagerTestCase.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/ContextManagerTestCase.java
@@ -5,9 +5,9 @@ import org.junit.Assert;
import org.junit.BeforeClass;
import org.junit.Test;
import org.skywalking.apm.agent.core.boot.ServiceManager;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.tag.Tags;
/**
* Created by wusheng on 2017/2/19.
diff --git a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/TestTracerContextListener.java b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/TestTracerContextListener.java
index 84b401d84..a71795336 100644
--- a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/TestTracerContextListener.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/TestTracerContextListener.java
@@ -1,6 +1,6 @@
package org.skywalking.apm.agent.core.context;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
/**
* Created by wusheng on 2017/2/19.
diff --git a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/TracerContextTestCase.java b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/TracerContextTestCase.java
index 37600d6f3..35c4c3a04 100644
--- a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/TracerContextTestCase.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/TracerContextTestCase.java
@@ -3,11 +3,10 @@ package org.skywalking.apm.agent.core.context;
import org.junit.After;
import org.junit.Assert;
import org.junit.Test;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceId.DistributedTraceId;
-import org.skywalking.apm.trace.TraceId.PropagatedTraceId;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.ids.DistributedTraceId;
+import org.skywalking.apm.agent.core.context.ids.PropagatedTraceId;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
import java.util.LinkedList;
import java.util.List;
diff --git a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/LeafSpanTestCase.java b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/trace/LeafSpanTestCase.java
similarity index 81%
rename from apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/LeafSpanTestCase.java
rename to apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/trace/LeafSpanTestCase.java
index de9e862c1..3ceb1b83a 100644
--- a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/LeafSpanTestCase.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/trace/LeafSpanTestCase.java
@@ -1,13 +1,14 @@
-package org.skywalking.apm.agent.core.context;
+package org.skywalking.apm.agent.core.context.trace;
import org.junit.Assert;
import org.junit.Test;
+import org.skywalking.apm.agent.core.context.trace.LeafSpan;
import org.skywalking.apm.agent.core.tags.BooleanTagReader;
import org.skywalking.apm.agent.core.tags.IntTagReader;
import org.skywalking.apm.agent.core.tags.StringTagReader;
-import org.skywalking.apm.trace.tag.BooleanTag;
-import org.skywalking.apm.trace.tag.IntTag;
-import org.skywalking.apm.trace.tag.StringTag;
+import org.skywalking.apm.agent.core.context.tag.BooleanTag;
+import org.skywalking.apm.agent.core.context.tag.IntTag;
+import org.skywalking.apm.agent.core.context.tag.StringTag;
/**
* @author wusheng
diff --git a/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/LogDataTestCase.java b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/trace/LogDataTestCase.java
similarity index 89%
rename from apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/LogDataTestCase.java
rename to apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/trace/LogDataTestCase.java
index 3d46fe5c0..89b24f760 100644
--- a/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/LogDataTestCase.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/trace/LogDataTestCase.java
@@ -1,10 +1,9 @@
-package org.skywalking.apm.trace;
-
-import org.junit.Assert;
-import org.junit.Test;
+package org.skywalking.apm.agent.core.context.trace;
import java.util.HashMap;
import java.util.Map;
+import org.junit.Assert;
+import org.junit.Test;
/**
* Created by wusheng on 2017/2/18.
diff --git a/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/SpanTestCase.java b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/trace/SpanTestCase.java
similarity index 85%
rename from apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/SpanTestCase.java
rename to apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/trace/SpanTestCase.java
index 4e256a30a..8031530b3 100644
--- a/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/SpanTestCase.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/trace/SpanTestCase.java
@@ -1,13 +1,15 @@
-package org.skywalking.apm.trace;
+package org.skywalking.apm.agent.core.context.trace;
import java.lang.reflect.Field;
+import java.util.List;
import org.junit.Assert;
import org.junit.Test;
-import org.skywalking.apm.trace.tag.BooleanTagReader;
-import org.skywalking.apm.trace.tag.StringTagReader;
-import org.skywalking.apm.trace.tag.Tags;
-
-import java.util.List;
+import org.skywalking.apm.agent.core.tags.BooleanTagReader;
+import org.skywalking.apm.agent.core.tags.StringTagReader;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.tag.Tags;
/**
* Created by wusheng on 2017/2/18.
diff --git a/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/TraceSegmentTestCase.java b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/trace/TraceSegmentTestCase.java
similarity index 96%
rename from apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/TraceSegmentTestCase.java
rename to apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/trace/TraceSegmentTestCase.java
index 396b566a3..f0ff21900 100644
--- a/apm-commons/apm-trace/src/test/java/org/skywalking/apm/trace/TraceSegmentTestCase.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/context/trace/TraceSegmentTestCase.java
@@ -1,12 +1,12 @@
-package org.skywalking.apm.trace;
+package org.skywalking.apm.agent.core.context.trace;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonObject;
import org.junit.Assert;
import org.junit.Test;
-import org.skywalking.apm.trace.tag.StringTagReader;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.tag.Tags;
+import org.skywalking.apm.agent.core.tags.StringTagReader;
/**
* Created by wusheng on 2017/2/18.
diff --git a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/sampling/SamplingServiceTest.java b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/sampling/SamplingServiceTest.java
deleted file mode 100644
index d9e514af0..000000000
--- a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/sampling/SamplingServiceTest.java
+++ /dev/null
@@ -1,40 +0,0 @@
-package org.skywalking.apm.agent.core.sampling;
-
-import org.junit.AfterClass;
-import org.junit.Assert;
-import org.junit.Test;
-import org.skywalking.apm.agent.core.conf.Config;
-import org.skywalking.apm.agent.core.boot.ServiceManager;
-import org.skywalking.apm.trace.TraceSegment;
-
-/**
- * @author wusheng
- */
-public class SamplingServiceTest {
- @Test
- public void test50Percent() {
- Config.Agent.SAMPLING_CYCLE = 2;
- ServiceManager.INSTANCE.boot();
-
- TraceSegment segment = new TraceSegment();
- Assert.assertTrue(segment.isSampled());
-
- SamplingService service = ServiceManager.INSTANCE.findService(SamplingService.class);
- service.trySampling(segment);
- Assert.assertFalse(segment.isSampled());
-
- segment = new TraceSegment();
- service.trySampling(segment);
- Assert.assertTrue(segment.isSampled());
-
- segment = new TraceSegment();
- service.trySampling(segment);
- Assert.assertFalse(segment.isSampled());
- }
-
- @AfterClass
- public static void clear() {
- Config.Agent.SAMPLING_CYCLE = 1;
- ServiceManager.INSTANCE.boot();
- }
-}
diff --git a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/tags/BooleanTagReader.java b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/tags/BooleanTagReader.java
index 2c0086418..f353b0c88 100644
--- a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/tags/BooleanTagReader.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/tags/BooleanTagReader.java
@@ -2,9 +2,9 @@ package org.skywalking.apm.agent.core.tags;
import java.lang.reflect.Field;
import java.util.List;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.BooleanTag;
-import org.skywalking.apm.trace.tag.BooleanTagItem;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.BooleanTag;
+import org.skywalking.apm.agent.core.context.tag.BooleanTagItem;
/**
* @author wusheng
diff --git a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/tags/IntTagReader.java b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/tags/IntTagReader.java
index 5a7fd14f9..feee4eb59 100644
--- a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/tags/IntTagReader.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/tags/IntTagReader.java
@@ -2,9 +2,9 @@ package org.skywalking.apm.agent.core.tags;
import java.lang.reflect.Field;
import java.util.List;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.IntTag;
-import org.skywalking.apm.trace.tag.IntTagItem;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.IntTag;
+import org.skywalking.apm.agent.core.context.tag.IntTagItem;
/**
* @author wusheng
diff --git a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/tags/StringTagReader.java b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/tags/StringTagReader.java
index e5d951d59..fc7246e7a 100644
--- a/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/tags/StringTagReader.java
+++ b/apm-sniffer/apm-agent-core/src/test/java/org/skywalking/apm/agent/core/tags/StringTagReader.java
@@ -2,9 +2,9 @@ package org.skywalking.apm.agent.core.tags;
import java.lang.reflect.Field;
import java.util.List;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.StringTag;
-import org.skywalking.apm.trace.tag.StringTagItem;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.StringTag;
+import org.skywalking.apm.agent.core.context.tag.StringTagItem;
/**
* @author wusheng
diff --git a/apm-sniffer/apm-sdk-plugin/dubbo-plugin/src/main/java/org/skywalking/apm/plugin/dubbo/DubboInterceptor.java b/apm-sniffer/apm-sdk-plugin/dubbo-plugin/src/main/java/org/skywalking/apm/plugin/dubbo/DubboInterceptor.java
index aac589c33..266e99104 100644
--- a/apm-sniffer/apm-sdk-plugin/dubbo-plugin/src/main/java/org/skywalking/apm/plugin/dubbo/DubboInterceptor.java
+++ b/apm-sniffer/apm-sdk-plugin/dubbo-plugin/src/main/java/org/skywalking/apm/plugin/dubbo/DubboInterceptor.java
@@ -5,6 +5,7 @@ import com.alibaba.dubbo.rpc.Invocation;
import com.alibaba.dubbo.rpc.Invoker;
import com.alibaba.dubbo.rpc.Result;
import com.alibaba.dubbo.rpc.RpcContext;
+import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.ContextCarrier;
import org.skywalking.apm.agent.core.context.ContextManager;
import org.skywalking.apm.agent.core.plugin.interceptor.EnhancedClassInstanceContext;
@@ -13,8 +14,8 @@ import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsA
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
import org.skywalking.apm.plugin.dubbox.BugFixActive;
import org.skywalking.apm.plugin.dubbox.SWBaseBean;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
/**
* {@link DubboInterceptor} define how to enhance class {@link com.alibaba.dubbo.monitor.support.MonitorFilter#invoke(Invoker,
@@ -28,7 +29,6 @@ import org.skywalking.apm.trace.tag.Tags;
*/
public class DubboInterceptor implements InstanceMethodsAroundInterceptor {
- public static final String ATTACHMENT_NAME_OF_CONTEXT_DATA = "SWTraceContext";
public static final String DUBBO_COMPONENT = "Dubbo";
/**
@@ -64,7 +64,7 @@ public class DubboInterceptor implements InstanceMethodsAroundInterceptor {
if (!BugFixActive.isActive()) {
//invocation.getAttachments().put("contextData", contextDataStr);
//@see https://github.com/alibaba/dubbo/blob/dubbo-2.5.3/dubbo-rpc/dubbo-rpc-api/src/main/java/com/alibaba/dubbo/rpc/RpcInvocation.java#L154-L161
- rpcContext.getAttachments().put(ATTACHMENT_NAME_OF_CONTEXT_DATA, contextCarrier.serialize());
+ rpcContext.getAttachments().put(Config.Plugin.Propagation.HEADER_NAME, contextCarrier.serialize());
} else {
fix283SendNoAttachmentIssue(invocation, contextCarrier);
}
@@ -73,7 +73,7 @@ public class DubboInterceptor implements InstanceMethodsAroundInterceptor {
ContextCarrier contextCarrier;
if (!BugFixActive.isActive()) {
- contextCarrier = new ContextCarrier().deserialize(rpcContext.getAttachment(ATTACHMENT_NAME_OF_CONTEXT_DATA));
+ contextCarrier = new ContextCarrier().deserialize(rpcContext.getAttachment(Config.Plugin.Propagation.HEADER_NAME));
} else {
contextCarrier = fix283RecvNoAttachmentIssue(invocation);
}
diff --git a/apm-sniffer/apm-sdk-plugin/dubbo-plugin/src/test/java/org/skywalking/apm/plugin/dubbo/DubboInterceptorTest.java b/apm-sniffer/apm-sdk-plugin/dubbo-plugin/src/test/java/org/skywalking/apm/plugin/dubbo/DubboInterceptorTest.java
index a5d4aa968..98dfe05d6 100644
--- a/apm-sniffer/apm-sdk-plugin/dubbo-plugin/src/test/java/org/skywalking/apm/plugin/dubbo/DubboInterceptorTest.java
+++ b/apm-sniffer/apm-sdk-plugin/dubbo-plugin/src/test/java/org/skywalking/apm/plugin/dubbo/DubboInterceptorTest.java
@@ -5,8 +5,6 @@ import com.alibaba.dubbo.rpc.Invocation;
import com.alibaba.dubbo.rpc.Invoker;
import com.alibaba.dubbo.rpc.Result;
import com.alibaba.dubbo.rpc.RpcContext;
-import java.lang.reflect.Field;
-import java.util.List;
import org.hamcrest.CoreMatchers;
import org.junit.After;
import org.junit.Assert;
@@ -29,11 +27,11 @@ import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
import org.skywalking.apm.sniffer.mock.trace.SpanLogReader;
import org.skywalking.apm.sniffer.mock.trace.tags.StringTagReader;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.TraceSegmentRef;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegmentRef;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
@@ -156,7 +154,7 @@ public class DubboInterceptorTest {
@Test
public void testProviderWithAttachment() {
when(rpcContext.isConsumerSide()).thenReturn(false);
- when(rpcContext.getAttachment(DubboInterceptor.ATTACHMENT_NAME_OF_CONTEXT_DATA)).thenReturn("302017.1487666919810.624424584.17332.1.1|1|REMOTE_APP|127.0.0.1|Trace.globalId.123|1");
+ when(rpcContext.getAttachment(Config.Plugin.Propagation.HEADER_NAME)).thenReturn("302017.1487666919810.624424584.17332.1.1|1|REMOTE_APP|127.0.0.1|Trace.globalId.123");
dubboInterceptor.beforeMethod(classInstanceContext, methodInvokeContext, methodInterceptResult);
dubboInterceptor.afterMethod(classInstanceContext, methodInvokeContext, result);
@@ -168,7 +166,7 @@ public class DubboInterceptorTest {
when(rpcContext.isConsumerSide()).thenReturn(false);
when(BugFixActive.isActive()).thenReturn(true);
- testParam.setTraceContext("302017.1487666919810.624424584.17332.1.1|1|REMOTE_APP|127.0.0.1|Trace.globalId.123|1");
+ testParam.setTraceContext("302017.1487666919810.624424584.17332.1.1|1|REMOTE_APP|127.0.0.1|Trace.globalId.123");
dubboInterceptor.beforeMethod(classInstanceContext, methodInvokeContext, methodInterceptResult);
dubboInterceptor.afterMethod(classInstanceContext, methodInvokeContext, result);
diff --git a/apm-sniffer/apm-sdk-plugin/feign-default-http-9.x-plugin/src/main/java/org/skywalking/apm/plugin/feign/http/v9/DefaultHttpClientInterceptor.java b/apm-sniffer/apm-sdk-plugin/feign-default-http-9.x-plugin/src/main/java/org/skywalking/apm/plugin/feign/http/v9/DefaultHttpClientInterceptor.java
index 8a9bea767..5ebe44b37 100644
--- a/apm-sniffer/apm-sdk-plugin/feign-default-http-9.x-plugin/src/main/java/org/skywalking/apm/plugin/feign/http/v9/DefaultHttpClientInterceptor.java
+++ b/apm-sniffer/apm-sdk-plugin/feign-default-http-9.x-plugin/src/main/java/org/skywalking/apm/plugin/feign/http/v9/DefaultHttpClientInterceptor.java
@@ -18,8 +18,8 @@ import org.skywalking.apm.agent.core.plugin.interceptor.EnhancedClassInstanceCon
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodInvokeContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
/**
* {@link DefaultHttpClientInterceptor} intercept the default implementation of http calls by the Feign.
@@ -68,7 +68,7 @@ public class DefaultHttpClientInterceptor implements InstanceMethodsAroundInterc
headersField.setAccessible(true);
Map> headers = new LinkedHashMap>();
- headers.put(Config.Plugin.Http.HEADER_NAME_OF_CONTEXT_DATA, contextCollection);
+ headers.put(Config.Plugin.Propagation.HEADER_NAME, contextCollection);
headers.putAll(request.headers());
headersField.set(request, Collections.unmodifiableMap(headers));
diff --git a/apm-sniffer/apm-sdk-plugin/feign-default-http-9.x-plugin/src/test/java/org/skywalking/apm/plugin/feign/http/v9/DefaultHttpClientInterceptorTest.java b/apm-sniffer/apm-sdk-plugin/feign-default-http-9.x-plugin/src/test/java/org/skywalking/apm/plugin/feign/http/v9/DefaultHttpClientInterceptorTest.java
index ca3052ca3..e9d6191cf 100644
--- a/apm-sniffer/apm-sdk-plugin/feign-default-http-9.x-plugin/src/test/java/org/skywalking/apm/plugin/feign/http/v9/DefaultHttpClientInterceptorTest.java
+++ b/apm-sniffer/apm-sdk-plugin/feign-default-http-9.x-plugin/src/test/java/org/skywalking/apm/plugin/feign/http/v9/DefaultHttpClientInterceptorTest.java
@@ -22,9 +22,9 @@ import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
import org.skywalking.apm.sniffer.mock.trace.SpanLogReader;
import org.skywalking.apm.sniffer.mock.trace.tags.BooleanTagReader;
import org.skywalking.apm.sniffer.mock.trace.tags.StringTagReader;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
diff --git a/apm-sniffer/apm-sdk-plugin/httpClient-4.x-plugin/src/main/java/org/skywalking/apm/plugin/httpClient/v4/HttpClientExecuteInterceptor.java b/apm-sniffer/apm-sdk-plugin/httpClient-4.x-plugin/src/main/java/org/skywalking/apm/plugin/httpClient/v4/HttpClientExecuteInterceptor.java
index 7a112c745..25a7e78ee 100644
--- a/apm-sniffer/apm-sdk-plugin/httpClient-4.x-plugin/src/main/java/org/skywalking/apm/plugin/httpClient/v4/HttpClientExecuteInterceptor.java
+++ b/apm-sniffer/apm-sdk-plugin/httpClient-4.x-plugin/src/main/java/org/skywalking/apm/plugin/httpClient/v4/HttpClientExecuteInterceptor.java
@@ -1,14 +1,15 @@
package org.skywalking.apm.plugin.httpClient.v4;
import org.apache.http.*;
+import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.ContextCarrier;
import org.skywalking.apm.agent.core.context.ContextManager;
import org.skywalking.apm.agent.core.plugin.interceptor.EnhancedClassInstanceContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodInvokeContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import java.net.MalformedURLException;
import java.net.URL;
@@ -20,19 +21,18 @@ import java.net.URL;
* @author zhangxin
*/
public class HttpClientExecuteInterceptor implements InstanceMethodsAroundInterceptor {
- public static final String HEADER_NAME_OF_CONTEXT_DATA = "SWTraceContext";
private static final String COMPONENT_NAME = "HttpClient";
@Override
public void beforeMethod(EnhancedClassInstanceContext context,
- InstanceMethodInvokeContext interceptorContext, MethodInterceptResult result) {
+ InstanceMethodInvokeContext interceptorContext, MethodInterceptResult result) {
Object[] allArguments = interceptorContext.allArguments();
if (allArguments[0] == null || allArguments[1] == null) {
// illegal args, can't trace. ignore.
return;
}
- HttpHost httpHost = (HttpHost) allArguments[0];
- HttpRequest httpRequest = (HttpRequest) allArguments[1];
+ HttpHost httpHost = (HttpHost)allArguments[0];
+ HttpRequest httpRequest = (HttpRequest)allArguments[1];
Span span = createSpan(httpRequest);
span.setPeerHost(httpHost.getHostName());
span.setPort(httpHost.getPort());
@@ -43,7 +43,7 @@ public class HttpClientExecuteInterceptor implements InstanceMethodsAroundInterc
ContextCarrier contextCarrier = new ContextCarrier();
ContextManager.inject(contextCarrier);
- httpRequest.setHeader(HEADER_NAME_OF_CONTEXT_DATA, contextCarrier.serialize());
+ httpRequest.setHeader(Config.Plugin.Propagation.HEADER_NAME, contextCarrier.serialize());
}
/**
@@ -71,13 +71,13 @@ public class HttpClientExecuteInterceptor implements InstanceMethodsAroundInterc
@Override
public Object afterMethod(EnhancedClassInstanceContext context,
- InstanceMethodInvokeContext interceptorContext, Object ret) {
+ InstanceMethodInvokeContext interceptorContext, Object ret) {
Object[] allArguments = interceptorContext.allArguments();
if (allArguments[0] == null || allArguments[1] == null) {
return ret;
}
- HttpResponse response = (HttpResponse) ret;
+ HttpResponse response = (HttpResponse)ret;
int statusCode = response.getStatusLine().getStatusCode();
Span span = ContextManager.activeSpan();
if (statusCode != 200) {
@@ -91,7 +91,7 @@ public class HttpClientExecuteInterceptor implements InstanceMethodsAroundInterc
@Override
public void handleMethodException(Throwable t, EnhancedClassInstanceContext context,
- InstanceMethodInvokeContext interceptorContext) {
+ InstanceMethodInvokeContext interceptorContext) {
Tags.ERROR.set(ContextManager.activeSpan(), true);
ContextManager.activeSpan().log(t);
}
diff --git a/apm-sniffer/apm-sdk-plugin/httpClient-4.x-plugin/src/test/java/org/skywalking/apm/plugin/httpClient/v4/HttpClientExecuteInterceptorTest.java b/apm-sniffer/apm-sdk-plugin/httpClient-4.x-plugin/src/test/java/org/skywalking/apm/plugin/httpClient/v4/HttpClientExecuteInterceptorTest.java
index ab52aa25d..2ebf8b246 100644
--- a/apm-sniffer/apm-sdk-plugin/httpClient-4.x-plugin/src/test/java/org/skywalking/apm/plugin/httpClient/v4/HttpClientExecuteInterceptorTest.java
+++ b/apm-sniffer/apm-sdk-plugin/httpClient-4.x-plugin/src/test/java/org/skywalking/apm/plugin/httpClient/v4/HttpClientExecuteInterceptorTest.java
@@ -18,10 +18,10 @@ import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
import org.skywalking.apm.sniffer.mock.trace.tags.BooleanTagReader;
import org.skywalking.apm.sniffer.mock.trace.tags.StringTagReader;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import java.util.List;
diff --git a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/CallableStatementTracing.java b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/CallableStatementTracing.java
index c3f9f41a7..9e2108aae 100644
--- a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/CallableStatementTracing.java
+++ b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/CallableStatementTracing.java
@@ -2,8 +2,8 @@ package org.skywalking.apm.plugin.jdbc;
import org.skywalking.apm.agent.core.context.ContextManager;
import org.skywalking.apm.util.StringUtil;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import java.sql.SQLException;
diff --git a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/ConnectionTracing.java b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/ConnectionTracing.java
index f83625f40..25a1ce2e3 100755
--- a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/ConnectionTracing.java
+++ b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/ConnectionTracing.java
@@ -2,8 +2,8 @@ package org.skywalking.apm.plugin.jdbc;
import org.skywalking.apm.agent.core.context.ContextManager;
import org.skywalking.apm.util.StringUtil;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import java.sql.SQLException;
diff --git a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/PreparedStatementTracing.java b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/PreparedStatementTracing.java
index e3cac9f53..0e4716dae 100644
--- a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/PreparedStatementTracing.java
+++ b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/PreparedStatementTracing.java
@@ -2,8 +2,8 @@ package org.skywalking.apm.plugin.jdbc;
import org.skywalking.apm.agent.core.context.ContextManager;
import org.skywalking.apm.util.StringUtil;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import java.sql.SQLException;
diff --git a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/StatementTracing.java b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/StatementTracing.java
index a427ca3fa..ad0ce9399 100644
--- a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/StatementTracing.java
+++ b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/main/java/org/skywalking/apm/plugin/jdbc/StatementTracing.java
@@ -2,8 +2,8 @@ package org.skywalking.apm.plugin.jdbc;
import org.skywalking.apm.agent.core.context.ContextManager;
import org.skywalking.apm.util.StringUtil;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import java.sql.SQLException;
diff --git a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/AbstractStatementTest.java b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/AbstractStatementTest.java
index caece3950..266b1d077 100644
--- a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/AbstractStatementTest.java
+++ b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/AbstractStatementTest.java
@@ -5,9 +5,9 @@ import java.util.List;
import org.hamcrest.CoreMatchers;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.trace.tags.StringTagReader;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import java.sql.SQLException;
diff --git a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SWCallableStatementTest.java b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SWCallableStatementTest.java
index dd38e6a28..7d00bd0f0 100644
--- a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SWCallableStatementTest.java
+++ b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SWCallableStatementTest.java
@@ -16,9 +16,9 @@ import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.context.TracerContext;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
import java.io.InputStream;
import java.io.Reader;
diff --git a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SWConnectionTest.java b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SWConnectionTest.java
index 1e7dbb4e5..42cf3695b 100644
--- a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SWConnectionTest.java
+++ b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SWConnectionTest.java
@@ -11,7 +11,7 @@ import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.context.TracerContext;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
import java.sql.PreparedStatement;
import java.sql.SQLException;
diff --git a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SWStatementTest.java b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SWStatementTest.java
index 73a9a7546..b42d96ea3 100644
--- a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SWStatementTest.java
+++ b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SWStatementTest.java
@@ -13,9 +13,9 @@ import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.context.TracerContext;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
import java.net.MalformedURLException;
import java.sql.Connection;
diff --git a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SwPreparedStatementTest.java b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SwPreparedStatementTest.java
index f7b6ddbce..2984ea502 100644
--- a/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SwPreparedStatementTest.java
+++ b/apm-sniffer/apm-sdk-plugin/jdbc-plugin/src/test/java/org/skywalking/apm/plugin/jdbc/SwPreparedStatementTest.java
@@ -16,9 +16,9 @@ import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.context.TracerContext;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
import java.io.InputStream;
import java.io.Reader;
diff --git a/apm-sniffer/apm-sdk-plugin/jedis-2.x-plugin/src/main/java/org/skywalking/apm/plugin/jedis/v2/JedisMethodInterceptor.java b/apm-sniffer/apm-sdk-plugin/jedis-2.x-plugin/src/main/java/org/skywalking/apm/plugin/jedis/v2/JedisMethodInterceptor.java
index 63b33cbc6..a4885dcfb 100644
--- a/apm-sniffer/apm-sdk-plugin/jedis-2.x-plugin/src/main/java/org/skywalking/apm/plugin/jedis/v2/JedisMethodInterceptor.java
+++ b/apm-sniffer/apm-sdk-plugin/jedis-2.x-plugin/src/main/java/org/skywalking/apm/plugin/jedis/v2/JedisMethodInterceptor.java
@@ -6,8 +6,8 @@ import org.skywalking.apm.agent.core.plugin.interceptor.assist.NoConcurrencyAcce
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodInvokeContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import org.skywalking.apm.util.StringUtil;
/**
diff --git a/apm-sniffer/apm-sdk-plugin/jedis-2.x-plugin/src/test/java/org/skywalking/apm/plugin/jedis/v2/JedisMethodInterceptorTest.java b/apm-sniffer/apm-sdk-plugin/jedis-2.x-plugin/src/test/java/org/skywalking/apm/plugin/jedis/v2/JedisMethodInterceptorTest.java
index 66ef39237..2ed164853 100644
--- a/apm-sniffer/apm-sdk-plugin/jedis-2.x-plugin/src/test/java/org/skywalking/apm/plugin/jedis/v2/JedisMethodInterceptorTest.java
+++ b/apm-sniffer/apm-sdk-plugin/jedis-2.x-plugin/src/test/java/org/skywalking/apm/plugin/jedis/v2/JedisMethodInterceptorTest.java
@@ -18,10 +18,10 @@ import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
import org.skywalking.apm.sniffer.mock.trace.tags.BooleanTagReader;
import org.skywalking.apm.sniffer.mock.trace.tags.StringTagReader;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.*;
diff --git a/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/src/main/java/org/skywalking/apm/plugin/mongodb/v3/MongoDBMethodInterceptor.java b/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/src/main/java/org/skywalking/apm/plugin/mongodb/v3/MongoDBMethodInterceptor.java
index 94f8f0167..0d9928dbc 100644
--- a/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/src/main/java/org/skywalking/apm/plugin/mongodb/v3/MongoDBMethodInterceptor.java
+++ b/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/src/main/java/org/skywalking/apm/plugin/mongodb/v3/MongoDBMethodInterceptor.java
@@ -13,8 +13,8 @@ import org.skywalking.apm.agent.core.plugin.interceptor.EnhancedClassInstanceCon
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodInvokeContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import java.util.List;
diff --git a/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/src/test/java/org/skywalking/apm/plugin/mongodb/v3/MongoDBMethodInterceptorTest.java b/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/src/test/java/org/skywalking/apm/plugin/mongodb/v3/MongoDBMethodInterceptorTest.java
index 7dc2c1b70..3304f9f24 100644
--- a/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/src/test/java/org/skywalking/apm/plugin/mongodb/v3/MongoDBMethodInterceptorTest.java
+++ b/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/src/test/java/org/skywalking/apm/plugin/mongodb/v3/MongoDBMethodInterceptorTest.java
@@ -23,10 +23,10 @@ import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
import org.skywalking.apm.sniffer.mock.trace.SpanLogReader;
import org.skywalking.apm.sniffer.mock.trace.tags.StringTagReader;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.*;
diff --git a/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/src/test/java/org/skywalking/apm/plugin/mongodb/v3/MongoDBWriteMethodInterceptorTest.java b/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/src/test/java/org/skywalking/apm/plugin/mongodb/v3/MongoDBWriteMethodInterceptorTest.java
index a251ef2cf..70ffcc2d9 100644
--- a/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/src/test/java/org/skywalking/apm/plugin/mongodb/v3/MongoDBWriteMethodInterceptorTest.java
+++ b/apm-sniffer/apm-sdk-plugin/mongodb-3.x-plugin/src/test/java/org/skywalking/apm/plugin/mongodb/v3/MongoDBWriteMethodInterceptorTest.java
@@ -24,10 +24,10 @@ import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
import org.skywalking.apm.sniffer.mock.trace.SpanLogReader;
import org.skywalking.apm.sniffer.mock.trace.tags.StringTagReader;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import java.util.ArrayList;
import java.util.List;
diff --git a/apm-sniffer/apm-sdk-plugin/motan-plugin/src/main/java/org/skywalking/apm/plugin/motan/MotanConsumerInterceptor.java b/apm-sniffer/apm-sdk-plugin/motan-plugin/src/main/java/org/skywalking/apm/plugin/motan/MotanConsumerInterceptor.java
index 4ced174bb..3e34b2661 100644
--- a/apm-sniffer/apm-sdk-plugin/motan-plugin/src/main/java/org/skywalking/apm/plugin/motan/MotanConsumerInterceptor.java
+++ b/apm-sniffer/apm-sdk-plugin/motan-plugin/src/main/java/org/skywalking/apm/plugin/motan/MotanConsumerInterceptor.java
@@ -3,6 +3,7 @@ package org.skywalking.apm.plugin.motan;
import com.weibo.api.motan.rpc.Request;
import com.weibo.api.motan.rpc.Response;
import com.weibo.api.motan.rpc.URL;
+import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.ContextCarrier;
import org.skywalking.apm.agent.core.context.ContextManager;
import org.skywalking.apm.agent.core.plugin.interceptor.EnhancedClassInstanceContext;
@@ -11,8 +12,8 @@ import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceConstruc
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodInvokeContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
/**
* {@link MotanProviderInterceptor} create span by fetch request url from
@@ -28,10 +29,6 @@ public class MotanConsumerInterceptor implements InstanceConstructorInterceptor,
*/
private static final String KEY_NAME_OF_REQUEST_URL = "REQUEST_URL";
- /**
- * The {@link Request#getAttachments()} key. It maps to the serialized {@link ContextCarrier}.
- */
- private static final String ATTACHMENT_KEY_OF_CONTEXT_DATA = "SWTraceContext";
/**
* Motan component
*/
@@ -58,7 +55,7 @@ public class MotanConsumerInterceptor implements InstanceConstructorInterceptor,
ContextCarrier contextCarrier = new ContextCarrier();
ContextManager.inject(contextCarrier);
- request.setAttachment(ATTACHMENT_KEY_OF_CONTEXT_DATA, contextCarrier.serialize());
+ request.setAttachment(Config.Plugin.Propagation.HEADER_NAME, contextCarrier.serialize());
}
}
diff --git a/apm-sniffer/apm-sdk-plugin/motan-plugin/src/main/java/org/skywalking/apm/plugin/motan/MotanProviderInterceptor.java b/apm-sniffer/apm-sdk-plugin/motan-plugin/src/main/java/org/skywalking/apm/plugin/motan/MotanProviderInterceptor.java
index 08b0437bb..8ea879ce6 100644
--- a/apm-sniffer/apm-sdk-plugin/motan-plugin/src/main/java/org/skywalking/apm/plugin/motan/MotanProviderInterceptor.java
+++ b/apm-sniffer/apm-sdk-plugin/motan-plugin/src/main/java/org/skywalking/apm/plugin/motan/MotanProviderInterceptor.java
@@ -2,6 +2,7 @@ package org.skywalking.apm.plugin.motan;
import com.weibo.api.motan.rpc.Request;
import com.weibo.api.motan.rpc.Response;
+import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.ContextCarrier;
import org.skywalking.apm.agent.core.context.ContextManager;
import org.skywalking.apm.agent.core.plugin.interceptor.EnhancedClassInstanceContext;
@@ -9,8 +10,8 @@ import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodIn
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
import org.skywalking.apm.util.StringUtil;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
/**
* Current trace segment will ref the trace segment if the serialized trace context that fetch from {@link
@@ -22,12 +23,6 @@ import org.skywalking.apm.trace.tag.Tags;
* @author zhangxin
*/
public class MotanProviderInterceptor implements InstanceMethodsAroundInterceptor {
-
- /**
- * Attachment key of the serialized context data.
- */
- private static final String ATTACHMENT_KEY_OF_CONTEXT_DATA = "SWTraceContext";
-
/**
* Motan component
*/
@@ -42,7 +37,7 @@ public class MotanProviderInterceptor implements InstanceMethodsAroundIntercepto
Tags.SPAN_KIND.set(span, Tags.SPAN_KIND_SERVER);
Tags.SPAN_LAYER.asRPCFramework(span);
- String serializedContextData = request.getAttachments().get(ATTACHMENT_KEY_OF_CONTEXT_DATA);
+ String serializedContextData = request.getAttachments().get(Config.Plugin.Propagation.HEADER_NAME);
if (!StringUtil.isEmpty(serializedContextData)) {
ContextManager.extract(new ContextCarrier().deserialize(serializedContextData));
}
diff --git a/apm-sniffer/apm-sdk-plugin/motan-plugin/src/test/java/org/skywalking/apm/plugin/motan/MotanConsumerInterceptorTest.java b/apm-sniffer/apm-sdk-plugin/motan-plugin/src/test/java/org/skywalking/apm/plugin/motan/MotanConsumerInterceptorTest.java
index 3c1e5cc75..1d6d6157b 100644
--- a/apm-sniffer/apm-sdk-plugin/motan-plugin/src/test/java/org/skywalking/apm/plugin/motan/MotanConsumerInterceptorTest.java
+++ b/apm-sniffer/apm-sdk-plugin/motan-plugin/src/test/java/org/skywalking/apm/plugin/motan/MotanConsumerInterceptorTest.java
@@ -19,10 +19,10 @@ import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
import org.skywalking.apm.sniffer.mock.trace.SpanLogReader;
import org.skywalking.apm.sniffer.mock.trace.tags.StringTagReader;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.*;
diff --git a/apm-sniffer/apm-sdk-plugin/motan-plugin/src/test/java/org/skywalking/apm/plugin/motan/MotanProviderInterceptorTest.java b/apm-sniffer/apm-sdk-plugin/motan-plugin/src/test/java/org/skywalking/apm/plugin/motan/MotanProviderInterceptorTest.java
index 0b3b3b454..5906826b6 100644
--- a/apm-sniffer/apm-sdk-plugin/motan-plugin/src/test/java/org/skywalking/apm/plugin/motan/MotanProviderInterceptorTest.java
+++ b/apm-sniffer/apm-sdk-plugin/motan-plugin/src/test/java/org/skywalking/apm/plugin/motan/MotanProviderInterceptorTest.java
@@ -12,6 +12,7 @@ import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import org.skywalking.apm.agent.core.boot.ServiceManager;
+import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.TracerContext;
import org.skywalking.apm.agent.core.plugin.interceptor.EnhancedClassInstanceContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.ConstructorInvokeContext;
@@ -20,11 +21,11 @@ import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
import org.skywalking.apm.sniffer.mock.trace.SpanLogReader;
import org.skywalking.apm.sniffer.mock.trace.tags.StringTagReader;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.TraceSegmentRef;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegmentRef;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import java.util.HashMap;
@@ -89,7 +90,7 @@ public class MotanProviderInterceptorTest {
@Test
public void testInvokerWithRefSegment() {
HashMap attachments = new HashMap();
- attachments.put("SWTraceContext", "302017.1487666919810.624424584.17332.1.1|1|REMOTE_APP|127.0.0.1|Trace.globalId.123|1");
+ attachments.put(Config.Plugin.Propagation.HEADER_NAME, "302017.1487666919810.624424584.17332.1.1|1|REMOTE_APP|127.0.0.1|Trace.globalId.123");
when(request.getAttachments()).thenReturn(attachments);
invokeInterceptor.beforeMethod(instanceContext, interceptorContext, null);
diff --git a/apm-sniffer/apm-sdk-plugin/okhttp-3.x-plugin/src/main/java/org/skywalking/apm/plugin/okhttp/v3/RealCallInterceptor.java b/apm-sniffer/apm-sdk-plugin/okhttp-3.x-plugin/src/main/java/org/skywalking/apm/plugin/okhttp/v3/RealCallInterceptor.java
index 5c301fd16..1b2c49d70 100644
--- a/apm-sniffer/apm-sdk-plugin/okhttp-3.x-plugin/src/main/java/org/skywalking/apm/plugin/okhttp/v3/RealCallInterceptor.java
+++ b/apm-sniffer/apm-sdk-plugin/okhttp-3.x-plugin/src/main/java/org/skywalking/apm/plugin/okhttp/v3/RealCallInterceptor.java
@@ -15,8 +15,8 @@ import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceConstruc
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodInvokeContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
/**
* {@link RealCallInterceptor} intercept the synchronous http calls by the client of okhttp.
@@ -75,7 +75,7 @@ public class RealCallInterceptor implements InstanceMethodsAroundInterceptor, In
modifiersField.setInt(headersField, headersField.getModifiers() & ~Modifier.FINAL);
headersField.setAccessible(true);
- Headers headers = request.headers().newBuilder().add(Config.Plugin.Http.HEADER_NAME_OF_CONTEXT_DATA, contextCarrier.serialize()).build();
+ Headers headers = request.headers().newBuilder().add(Config.Plugin.Propagation.HEADER_NAME, contextCarrier.serialize()).build();
headersField.set(request, headers);
}
diff --git a/apm-sniffer/apm-sdk-plugin/okhttp-3.x-plugin/src/test/java/org/skywalking/apm/plugin/okhttp/v3/RealCallInterceptorTest.java b/apm-sniffer/apm-sdk-plugin/okhttp-3.x-plugin/src/test/java/org/skywalking/apm/plugin/okhttp/v3/RealCallInterceptorTest.java
index efcf51064..329f2db3f 100644
--- a/apm-sniffer/apm-sdk-plugin/okhttp-3.x-plugin/src/test/java/org/skywalking/apm/plugin/okhttp/v3/RealCallInterceptorTest.java
+++ b/apm-sniffer/apm-sdk-plugin/okhttp-3.x-plugin/src/test/java/org/skywalking/apm/plugin/okhttp/v3/RealCallInterceptorTest.java
@@ -20,9 +20,9 @@ import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
import org.skywalking.apm.sniffer.mock.trace.SpanLogReader;
import org.skywalking.apm.sniffer.mock.trace.tags.BooleanTagReader;
import org.skywalking.apm.sniffer.mock.trace.tags.StringTagReader;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
diff --git a/apm-sniffer/apm-sdk-plugin/resin-3.x-plugin/src/main/java/org/skywalking/apm/plugin/resin/v3/ResinV3Interceptor.java b/apm-sniffer/apm-sdk-plugin/resin-3.x-plugin/src/main/java/org/skywalking/apm/plugin/resin/v3/ResinV3Interceptor.java
index 936b24cf0..2e89fd08e 100644
--- a/apm-sniffer/apm-sdk-plugin/resin-3.x-plugin/src/main/java/org/skywalking/apm/plugin/resin/v3/ResinV3Interceptor.java
+++ b/apm-sniffer/apm-sdk-plugin/resin-3.x-plugin/src/main/java/org/skywalking/apm/plugin/resin/v3/ResinV3Interceptor.java
@@ -1,16 +1,16 @@
package org.skywalking.apm.plugin.resin.v3;
import com.caucho.server.connection.CauchoRequest;
-import com.caucho.server.http.HttpRequest;
import com.caucho.server.http.HttpResponse;
+import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.ContextCarrier;
import org.skywalking.apm.agent.core.context.ContextManager;
import org.skywalking.apm.agent.core.plugin.interceptor.EnhancedClassInstanceContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodInvokeContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import org.skywalking.apm.util.StringUtil;
/**
@@ -20,11 +20,6 @@ import org.skywalking.apm.util.StringUtil;
* @author baiyang
*/
public class ResinV3Interceptor implements InstanceMethodsAroundInterceptor {
- /**
- * Header name that the serialized context data stored in
- * {@link HttpRequest#getHeader(String)}.
- */
- public static final String HEADER_NAME_OF_CONTEXT_DATA = "SWTraceContext";
/**
* Resin component.
*/
@@ -43,7 +38,7 @@ public class ResinV3Interceptor implements InstanceMethodsAroundInterceptor {
Tags.URL.set(span, appendRequestURL(request));
Tags.SPAN_LAYER.asHttp(span);
- String tracingHeaderValue = request.getHeader(HEADER_NAME_OF_CONTEXT_DATA);
+ String tracingHeaderValue = request.getHeader(Config.Plugin.Propagation.HEADER_NAME);
if (!StringUtil.isEmpty(tracingHeaderValue)) {
ContextManager.extract(new ContextCarrier().deserialize(tracingHeaderValue));
}
diff --git a/apm-sniffer/apm-sdk-plugin/resin-3.x-plugin/src/test/java/org/skywalking/apm/plugin/resin/v3/ResinV3InterceptorTest.java b/apm-sniffer/apm-sdk-plugin/resin-3.x-plugin/src/test/java/org/skywalking/apm/plugin/resin/v3/ResinV3InterceptorTest.java
index a0b599a6f..04284e116 100644
--- a/apm-sniffer/apm-sdk-plugin/resin-3.x-plugin/src/test/java/org/skywalking/apm/plugin/resin/v3/ResinV3InterceptorTest.java
+++ b/apm-sniffer/apm-sdk-plugin/resin-3.x-plugin/src/test/java/org/skywalking/apm/plugin/resin/v3/ResinV3InterceptorTest.java
@@ -10,6 +10,7 @@ import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import org.skywalking.apm.agent.core.boot.ServiceManager;
+import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.TracerContext;
import org.skywalking.apm.agent.core.plugin.interceptor.EnhancedClassInstanceContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodInvokeContext;
@@ -19,11 +20,11 @@ import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
import org.skywalking.apm.sniffer.mock.trace.SpanLogReader;
import org.skywalking.apm.sniffer.mock.trace.tags.IntTagReader;
import org.skywalking.apm.sniffer.mock.trace.tags.StringTagReader;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.TraceSegmentRef;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegmentRef;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
@@ -89,7 +90,7 @@ public class ResinV3InterceptorTest {
@Test
public void testWithSerializedContextData() {
- when(request.getHeader(ResinV3Interceptor.HEADER_NAME_OF_CONTEXT_DATA)).thenReturn("302017.1487666919810.624424584.17332.1.1|1|REMOTE_APP|127.0.0.1|Trace.globalId.123|1");
+ when(request.getHeader(Config.Plugin.Propagation.HEADER_NAME)).thenReturn("302017.1487666919810.624424584.17332.1.1|1|REMOTE_APP|127.0.0.1|Trace.globalId.123");
interceptor.beforeMethod(classInstanceContext, methodInvokeContext, methodInterceptResult);
interceptor.afterMethod(classInstanceContext, methodInvokeContext, null);
diff --git a/apm-sniffer/apm-sdk-plugin/resin-4.x-plugin/src/main/java/org/skywalking/apm/plugin/resin/v4/ResinV4Interceptor.java b/apm-sniffer/apm-sdk-plugin/resin-4.x-plugin/src/main/java/org/skywalking/apm/plugin/resin/v4/ResinV4Interceptor.java
index 58ade728f..5cfc5044f 100644
--- a/apm-sniffer/apm-sdk-plugin/resin-4.x-plugin/src/main/java/org/skywalking/apm/plugin/resin/v4/ResinV4Interceptor.java
+++ b/apm-sniffer/apm-sdk-plugin/resin-4.x-plugin/src/main/java/org/skywalking/apm/plugin/resin/v4/ResinV4Interceptor.java
@@ -1,27 +1,22 @@
package org.skywalking.apm.plugin.resin.v4;
import com.caucho.server.http.CauchoRequest;
-import com.caucho.server.http.HttpRequest;
import javax.servlet.http.HttpServletResponse;
+import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.ContextCarrier;
import org.skywalking.apm.agent.core.context.ContextManager;
import org.skywalking.apm.agent.core.plugin.interceptor.EnhancedClassInstanceContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodInvokeContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import org.skywalking.apm.util.StringUtil;
/**
* Created by Baiyang on 2017/5/2.
*/
public class ResinV4Interceptor implements InstanceMethodsAroundInterceptor {
- /**
- * Header name that the serialized context data stored in
- * {@link HttpRequest#getHeader(String)}.
- */
- public static final String HEADER_NAME_OF_CONTEXT_DATA = "SWTraceContext";
/**
* Resin component.
*/
@@ -40,7 +35,7 @@ public class ResinV4Interceptor implements InstanceMethodsAroundInterceptor {
Tags.URL.set(span, appendRequestURL(request));
Tags.SPAN_LAYER.asHttp(span);
- String tracingHeaderValue = request.getHeader(HEADER_NAME_OF_CONTEXT_DATA);
+ String tracingHeaderValue = request.getHeader(Config.Plugin.Propagation.HEADER_NAME);
if (!StringUtil.isEmpty(tracingHeaderValue)) {
ContextManager.extract(new ContextCarrier().deserialize(tracingHeaderValue));
}
diff --git a/apm-sniffer/apm-sdk-plugin/resin-4.x-plugin/src/test/java/org/skywalking/apm/plugin/resin/v4/ResinV4InterceptorTest.java b/apm-sniffer/apm-sdk-plugin/resin-4.x-plugin/src/test/java/org/skywalking/apm/plugin/resin/v4/ResinV4InterceptorTest.java
index 0801085b6..dc389b760 100644
--- a/apm-sniffer/apm-sdk-plugin/resin-4.x-plugin/src/test/java/org/skywalking/apm/plugin/resin/v4/ResinV4InterceptorTest.java
+++ b/apm-sniffer/apm-sdk-plugin/resin-4.x-plugin/src/test/java/org/skywalking/apm/plugin/resin/v4/ResinV4InterceptorTest.java
@@ -10,6 +10,7 @@ import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import org.skywalking.apm.agent.core.boot.ServiceManager;
+import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.TracerContext;
import org.skywalking.apm.agent.core.plugin.interceptor.EnhancedClassInstanceContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodInvokeContext;
@@ -19,11 +20,11 @@ import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
import org.skywalking.apm.sniffer.mock.trace.SpanLogReader;
import org.skywalking.apm.sniffer.mock.trace.tags.IntTagReader;
import org.skywalking.apm.sniffer.mock.trace.tags.StringTagReader;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.TraceSegmentRef;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegmentRef;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
@@ -88,7 +89,7 @@ public class ResinV4InterceptorTest {
@Test
public void testWithSerializedContextData() {
- when(request.getHeader(ResinV4Interceptor.HEADER_NAME_OF_CONTEXT_DATA)).thenReturn("302017.1487666919810.624424584.17332.1.1|1|REMOTE_APP|127.0.0.1|Trace.globalId.123|1");
+ when(request.getHeader(Config.Plugin.Propagation.HEADER_NAME)).thenReturn("302017.1487666919810.624424584.17332.1.1|1|REMOTE_APP|127.0.0.1|Trace.globalId.123");
interceptor.beforeMethod(classInstanceContext, methodInvokeContext, methodInterceptResult);
interceptor.afterMethod(classInstanceContext, methodInvokeContext, null);
diff --git a/apm-sniffer/apm-sdk-plugin/tomcat-7.x-8.x-plugin/src/main/java/org/skywalking/apm/plugin/tomcat78x/TomcatInterceptor.java b/apm-sniffer/apm-sdk-plugin/tomcat-7.x-8.x-plugin/src/main/java/org/skywalking/apm/plugin/tomcat78x/TomcatInterceptor.java
index 44e5f8288..08d777a00 100644
--- a/apm-sniffer/apm-sdk-plugin/tomcat-7.x-8.x-plugin/src/main/java/org/skywalking/apm/plugin/tomcat78x/TomcatInterceptor.java
+++ b/apm-sniffer/apm-sdk-plugin/tomcat-7.x-8.x-plugin/src/main/java/org/skywalking/apm/plugin/tomcat78x/TomcatInterceptor.java
@@ -1,5 +1,6 @@
package org.skywalking.apm.plugin.tomcat78x;
+import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.ContextCarrier;
import org.skywalking.apm.agent.core.context.ContextManager;
import org.skywalking.apm.agent.core.plugin.interceptor.EnhancedClassInstanceContext;
@@ -7,9 +8,9 @@ import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodIn
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodsAroundInterceptor;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
import org.skywalking.apm.util.StringUtil;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -20,10 +21,6 @@ import javax.servlet.http.HttpServletResponse;
* segment id of the previous level if the serialized context is not null.
*/
public class TomcatInterceptor implements InstanceMethodsAroundInterceptor {
- /**
- * Header name that the serialized context data stored in {@link HttpServletRequest#getHeader(String)}.
- */
- public static final String HEADER_NAME_OF_CONTEXT_DATA = "SWTraceContext";
/**
* Tomcat component.
*/
@@ -51,7 +48,7 @@ public class TomcatInterceptor implements InstanceMethodsAroundInterceptor {
Tags.URL.set(span, request.getRequestURL().toString());
Tags.SPAN_LAYER.asHttp(span);
- String tracingHeaderValue = request.getHeader(HEADER_NAME_OF_CONTEXT_DATA);
+ String tracingHeaderValue = request.getHeader(Config.Plugin.Propagation.HEADER_NAME);
if (!StringUtil.isEmpty(tracingHeaderValue)) {
ContextManager.extract(new ContextCarrier().deserialize(tracingHeaderValue));
}
diff --git a/apm-sniffer/apm-sdk-plugin/tomcat-7.x-8.x-plugin/src/test/java/org/skywalking/apm/plugin/tomcat78x/TomcatInterceptorTest.java b/apm-sniffer/apm-sdk-plugin/tomcat-7.x-8.x-plugin/src/test/java/org/skywalking/apm/plugin/tomcat78x/TomcatInterceptorTest.java
index 1749584e1..48b7ca362 100644
--- a/apm-sniffer/apm-sdk-plugin/tomcat-7.x-8.x-plugin/src/test/java/org/skywalking/apm/plugin/tomcat78x/TomcatInterceptorTest.java
+++ b/apm-sniffer/apm-sdk-plugin/tomcat-7.x-8.x-plugin/src/test/java/org/skywalking/apm/plugin/tomcat78x/TomcatInterceptorTest.java
@@ -10,6 +10,7 @@ import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import org.skywalking.apm.agent.core.boot.ServiceManager;
+import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.TracerContext;
import org.skywalking.apm.agent.core.plugin.interceptor.EnhancedClassInstanceContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodInvokeContext;
@@ -19,11 +20,11 @@ import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
import org.skywalking.apm.sniffer.mock.trace.SpanLogReader;
import org.skywalking.apm.sniffer.mock.trace.tags.IntTagReader;
import org.skywalking.apm.sniffer.mock.trace.tags.StringTagReader;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.TraceSegment;
-import org.skywalking.apm.trace.TraceSegmentRef;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegmentRef;
+import org.skywalking.apm.agent.core.context.tag.Tags;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
@@ -81,7 +82,7 @@ public class TomcatInterceptorTest {
@Test
public void testWithSerializedContextData() {
- when(request.getHeader(TomcatInterceptor.HEADER_NAME_OF_CONTEXT_DATA)).thenReturn("302017.1487666919810.624424584.17332.1.1|1|REMOTE_APP|127.0.0.1|Trace.globalId.123|1");
+ when(request.getHeader(Config.Plugin.Propagation.HEADER_NAME)).thenReturn("302017.1487666919810.624424584.17332.1.1|1|REMOTE_APP|127.0.0.1|Trace.globalId.123");
tomcatInterceptor.beforeMethod(classInstanceContext, methodInvokeContext, methodInterceptResult);
tomcatInterceptor.afterMethod(classInstanceContext, methodInvokeContext, null);
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/context/MockTracerContextListener.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/context/MockTracerContextListener.java
index 99ae09f63..31f06601d 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/context/MockTracerContextListener.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/context/MockTracerContextListener.java
@@ -3,7 +3,7 @@ package org.skywalking.apm.sniffer.mock.context;
import org.junit.Assert;
import org.skywalking.apm.agent.core.context.TracerContext;
import org.skywalking.apm.agent.core.context.TracerContextListener;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
import java.util.ArrayList;
import java.util.Collections;
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/context/SegmentAssert.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/context/SegmentAssert.java
index 6bcf0b074..826703ba8 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/context/SegmentAssert.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/context/SegmentAssert.java
@@ -1,6 +1,6 @@
package org.skywalking.apm.sniffer.mock.context;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
/**
* The SegmentAssert interface should be implemented by any
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/SpanLogReader.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/SpanLogReader.java
index c7cbfc0bd..d1b01eff0 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/SpanLogReader.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/SpanLogReader.java
@@ -2,8 +2,8 @@ package org.skywalking.apm.sniffer.mock.trace;
import java.lang.reflect.Field;
import java.util.List;
-import org.skywalking.apm.trace.LogData;
-import org.skywalking.apm.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.LogData;
+import org.skywalking.apm.agent.core.context.trace.Span;
/**
* @author wusheng
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/TraceSegmentBuilder.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/TraceSegmentBuilder.java
index 2b8e1e11e..54a8b31bc 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/TraceSegmentBuilder.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/TraceSegmentBuilder.java
@@ -1,7 +1,7 @@
package org.skywalking.apm.sniffer.mock.trace;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
/**
* Created by wusheng on 2017/2/20.
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/TraceSegmentBuilderFactory.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/TraceSegmentBuilderFactory.java
index c442058ab..3cc314f36 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/TraceSegmentBuilderFactory.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/TraceSegmentBuilderFactory.java
@@ -3,7 +3,7 @@ package org.skywalking.apm.sniffer.mock.trace;
import org.skywalking.apm.agent.core.context.TracerContext;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.trace.builders.trace.*;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
/**
* The TraceSegmentBuilderFactory contains all {@link TraceSegmentBuilder} implementations. All the
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/span/DubboSpanGenerator.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/span/DubboSpanGenerator.java
index 43c2fec68..b31b527d4 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/span/DubboSpanGenerator.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/span/DubboSpanGenerator.java
@@ -1,8 +1,8 @@
package org.skywalking.apm.sniffer.mock.trace.builders.span;
import org.skywalking.apm.agent.core.context.ContextManager;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
/**
* The DubboSpanGenerator generates all possible spans, by tracing Dubbo rpc.
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/span/MySQLGenerator.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/span/MySQLGenerator.java
index 94eb8e4cd..cc2757a25 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/span/MySQLGenerator.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/span/MySQLGenerator.java
@@ -1,8 +1,8 @@
package org.skywalking.apm.sniffer.mock.trace.builders.span;
import org.skywalking.apm.agent.core.context.ContextManager;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
/**
* The MySQLGenerator generates all possible spans, by tracing mysql client access.
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/span/TomcatSpanGenerator.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/span/TomcatSpanGenerator.java
index 3d289c198..e8386c0ea 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/span/TomcatSpanGenerator.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/span/TomcatSpanGenerator.java
@@ -1,8 +1,8 @@
package org.skywalking.apm.sniffer.mock.trace.builders.span;
import org.skywalking.apm.agent.core.context.ContextManager;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.Tags;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.Tags;
/**
* The TomcatSpanGenerator generate all possible spans, by tracing Tomcat.
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/DubboServerMysqlTraceBuilder.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/DubboServerMysqlTraceBuilder.java
index 5468579a0..4b4b172a7 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/DubboServerMysqlTraceBuilder.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/DubboServerMysqlTraceBuilder.java
@@ -4,7 +4,7 @@ import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.trace.TraceSegmentBuilder;
import org.skywalking.apm.sniffer.mock.trace.builders.span.DubboSpanGenerator;
import org.skywalking.apm.sniffer.mock.trace.builders.span.MySQLGenerator;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
/**
* @author wusheng
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/SingleTomcat200TraceBuilder.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/SingleTomcat200TraceBuilder.java
index c17b6b5eb..179646242 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/SingleTomcat200TraceBuilder.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/SingleTomcat200TraceBuilder.java
@@ -3,7 +3,7 @@ package org.skywalking.apm.sniffer.mock.trace.builders.trace;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.trace.TraceSegmentBuilder;
import org.skywalking.apm.sniffer.mock.trace.builders.span.TomcatSpanGenerator;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
/**
* A Trace contains only one span, which represent a tomcat server side span.
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/SingleTomcat404TraceBuilder.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/SingleTomcat404TraceBuilder.java
index d961e05c9..b172317b3 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/SingleTomcat404TraceBuilder.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/SingleTomcat404TraceBuilder.java
@@ -3,7 +3,7 @@ package org.skywalking.apm.sniffer.mock.trace.builders.trace;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.trace.TraceSegmentBuilder;
import org.skywalking.apm.sniffer.mock.trace.builders.span.TomcatSpanGenerator;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
/**
* A Trace contains only one span, which represent a tomcat server side span.
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/SingleTomcat500TraceBuilder.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/SingleTomcat500TraceBuilder.java
index 7243715bd..a19043315 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/SingleTomcat500TraceBuilder.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/SingleTomcat500TraceBuilder.java
@@ -3,7 +3,7 @@ package org.skywalking.apm.sniffer.mock.trace.builders.trace;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.trace.TraceSegmentBuilder;
import org.skywalking.apm.sniffer.mock.trace.builders.span.TomcatSpanGenerator;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
/**
* A Trace contains only one span, which represent a tomcat server side span.
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/TomcatDubboClientTraceBuilder.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/TomcatDubboClientTraceBuilder.java
index 8b6fa455d..36f749d31 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/TomcatDubboClientTraceBuilder.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/builders/trace/TomcatDubboClientTraceBuilder.java
@@ -4,7 +4,7 @@ import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.trace.TraceSegmentBuilder;
import org.skywalking.apm.sniffer.mock.trace.builders.span.DubboSpanGenerator;
import org.skywalking.apm.sniffer.mock.trace.builders.span.TomcatSpanGenerator;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
/**
* A Trace segment contains two spans with ChildOf relations,
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tags/BooleanTagReader.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tags/BooleanTagReader.java
index ec6d9ff67..e7043f7e3 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tags/BooleanTagReader.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tags/BooleanTagReader.java
@@ -2,9 +2,9 @@ package org.skywalking.apm.sniffer.mock.trace.tags;
import java.lang.reflect.Field;
import java.util.List;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.BooleanTag;
-import org.skywalking.apm.trace.tag.BooleanTagItem;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.BooleanTag;
+import org.skywalking.apm.agent.core.context.tag.BooleanTagItem;
/**
* @author wusheng
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tags/IntTagReader.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tags/IntTagReader.java
index 0eeeb60c9..65ddb76b5 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tags/IntTagReader.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tags/IntTagReader.java
@@ -2,9 +2,9 @@ package org.skywalking.apm.sniffer.mock.trace.tags;
import java.lang.reflect.Field;
import java.util.List;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.IntTag;
-import org.skywalking.apm.trace.tag.IntTagItem;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.IntTag;
+import org.skywalking.apm.agent.core.context.tag.IntTagItem;
/**
* @author wusheng
diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tags/StringTagReader.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tags/StringTagReader.java
index 66ebb6eca..5baa48fbe 100644
--- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tags/StringTagReader.java
+++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tags/StringTagReader.java
@@ -2,9 +2,9 @@ package org.skywalking.apm.sniffer.mock.trace.tags;
import java.lang.reflect.Field;
import java.util.List;
-import org.skywalking.apm.trace.Span;
-import org.skywalking.apm.trace.tag.StringTag;
-import org.skywalking.apm.trace.tag.StringTagItem;
+import org.skywalking.apm.agent.core.context.trace.Span;
+import org.skywalking.apm.agent.core.context.tag.StringTag;
+import org.skywalking.apm.agent.core.context.tag.StringTagItem;
/**
* @author wusheng
diff --git a/apm-sniffer/apm-sniffer-mock/src/test/java/org/skywalking/apm/sniffer/mock/MockTracerContextListenerTestCase.java b/apm-sniffer/apm-sniffer-mock/src/test/java/org/skywalking/apm/sniffer/mock/MockTracerContextListenerTestCase.java
index d7998c0e5..945d03788 100644
--- a/apm-sniffer/apm-sniffer-mock/src/test/java/org/skywalking/apm/sniffer/mock/MockTracerContextListenerTestCase.java
+++ b/apm-sniffer/apm-sniffer-mock/src/test/java/org/skywalking/apm/sniffer/mock/MockTracerContextListenerTestCase.java
@@ -7,7 +7,7 @@ import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
import org.skywalking.apm.sniffer.mock.context.SegmentAssert;
import org.skywalking.apm.sniffer.mock.trace.TraceSegmentBuilderFactory;
-import org.skywalking.apm.trace.TraceSegment;
+import org.skywalking.apm.agent.core.context.trace.TraceSegment;
/**
* Created by wusheng on 2017/2/21.
diff --git a/apm-sniffer/apm-toolkit-activation/apm-toolkit-opentracing-activation/src/main/java/org/skywalking/apm/toolkit/activation/opentracing/span/interceptor/SpanNewInstanceInterceptor.java b/apm-sniffer/apm-toolkit-activation/apm-toolkit-opentracing-activation/src/main/java/org/skywalking/apm/toolkit/activation/opentracing/span/interceptor/SpanNewInstanceInterceptor.java
index 91eeb5db4..e11e196c7 100644
--- a/apm-sniffer/apm-toolkit-activation/apm-toolkit-opentracing-activation/src/main/java/org/skywalking/apm/toolkit/activation/opentracing/span/interceptor/SpanNewInstanceInterceptor.java
+++ b/apm-sniffer/apm-toolkit-activation/apm-toolkit-opentracing-activation/src/main/java/org/skywalking/apm/toolkit/activation/opentracing/span/interceptor/SpanNewInstanceInterceptor.java
@@ -5,7 +5,7 @@ import org.skywalking.apm.agent.core.plugin.interceptor.EnhancedClassInstanceCon
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.ConstructorInvokeContext;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceConstructorInterceptor;
import org.skywalking.apm.toolkit.opentracing.SkyWalkingSpan;
-import org.skywalking.apm.trace.Span;
+import org.skywalking.apm.agent.core.context.trace.Span;
import java.util.Map;