提交 aaee8617 编写于 作者: wu-sheng's avatar wu-sheng

Revert "Prepare for improving sampling performance."

This reverts commit 19f2a561.
上级 19f2a561
package org.skywalking.apm.agent.core.context;
import org.skywalking.apm.trace.Span;
/**
* The <code>AbstractTracingContext</code> provides the major methods of all context implementations.
*
* @author wusheng
*/
public interface AbstractTracingContext {
Span createSpan(String operationName, boolean isLeaf);
Span createSpan(String operationName, long startTime, boolean isLeaf);
Span activeSpan();
void stopSpan(Span span, Long endTime);
void stopSpan(Span span);
void inject(ContextCarrier carrier);
AbstractTracingContext extract(ContextCarrier carrier);
String getGlobalTraceId();
}
......@@ -12,8 +12,8 @@ import java.util.LinkedList;
import java.util.List;
/**
* {@link ContextCarrier} is a data carrier of {@link TracingContext}.
* It holds the snapshot (current state) of {@link TracingContext}.
* {@link ContextCarrier} is a data carrier of {@link TracerContext}.
* It holds the snapshot (current state) of {@link TracerContext}.
* <p>
* Created by wusheng on 2017/2/17.
*/
......
......@@ -5,38 +5,38 @@ import org.skywalking.apm.trace.Span;
import org.skywalking.apm.trace.TraceSegment;
/**
* {@link TracingContext} controls the whole context of {@link TraceSegment}. Any {@link TraceSegment} relates to
* {@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.
* <p>
* What is 'ChildOf'? {@see https://github.com/opentracing/specification/blob/master/specification.md#references-between-spans}
* <p>
* Also, {@link ContextManager} delegates to all {@link TracingContext}'s major methods: {@link
* TracingContext#createSpan(String, boolean)}, {@link TracingContext#activeSpan()}, {@link TracingContext#stopSpan(Span)}
* Also, {@link ContextManager} delegates to all {@link TracerContext}'s major methods: {@link
* TracerContext#createSpan(String)}, {@link TracerContext#activeSpan()}, {@link TracerContext#stopSpan(Span)}
* <p>
* Created by wusheng on 2017/2/17.
*/
public class ContextManager implements TracerContextListener, BootService {
private static ThreadLocal<AbstractTracingContext> CONTEXT = new ThreadLocal<AbstractTracingContext>();
private static ThreadLocal<TracerContext> CONTEXT = new ThreadLocal<TracerContext>();
private static AbstractTracingContext get() {
AbstractTracingContext segment = CONTEXT.get();
private static TracerContext get() {
TracerContext segment = CONTEXT.get();
if (segment == null) {
segment = new TracingContext();
segment = new TracerContext();
CONTEXT.set(segment);
}
return segment;
}
/**
* @see {@link TracingContext#inject(ContextCarrier)}
* @see {@link TracerContext#inject(ContextCarrier)}
*/
public static void inject(ContextCarrier carrier) {
get().inject(carrier);
}
/**
* @see {@link TracingContext#extract(ContextCarrier)}
* @see {@link TracerContext#extract(ContextCarrier)}
*/
public static void extract(ContextCarrier carrier) {
get().extract(carrier);
......@@ -46,7 +46,7 @@ public class ContextManager implements TracerContextListener, BootService {
* @return the first global trace id if exist. Otherwise, "N/A".
*/
public static String getGlobalTraceId() {
AbstractTracingContext segment = CONTEXT.get();
TracerContext segment = CONTEXT.get();
if (segment == null) {
return "N/A";
} else {
......@@ -88,7 +88,7 @@ public class ContextManager implements TracerContextListener, BootService {
@Override
public void bootUp() {
TracingContext.ListenerManager.add(this);
TracerContext.ListenerManager.add(this);
}
@Override
......
......@@ -12,12 +12,12 @@ import java.util.LinkedList;
import java.util.List;
/**
* {@link TracingContext} maintains the context.
* {@link TracerContext} maintains the context.
* You manipulate (create/finish/get) spans and (inject/extract) context.
* <p>
* Created by wusheng on 2017/2/17.
*/
public final class TracingContext implements AbstractTracingContext {
public final class TracerContext {
private TraceSegment segment;
/**
......@@ -34,7 +34,7 @@ public final class TracingContext implements AbstractTracingContext {
/**
* Create a {@link TraceSegment} and init {@link #spanIdGenerator} as 0;
*/
TracingContext() {
TracerContext() {
this.segment = new TraceSegment(Config.Agent.APPLICATION_CODE);
ServiceManager.INSTANCE.findService(SamplingService.class).trySampling(this.segment);
this.spanIdGenerator = 0;
......@@ -106,7 +106,7 @@ public final class TracingContext implements AbstractTracingContext {
/**
* @return the current trace id.
*/
public String getGlobalTraceId() {
String getGlobalTraceId() {
return segment.getRelatedGlobalTraces().get(0).get();
}
......@@ -138,7 +138,7 @@ public final class TracingContext implements AbstractTracingContext {
}
/**
* Give a snapshot of this {@link TracingContext},
* Give a snapshot of this {@link TracerContext},
* and save current state to the given {@link ContextCarrier}.
*
* @param carrier holds the snapshot
......@@ -165,13 +165,12 @@ public final class TracingContext implements AbstractTracingContext {
* @param carrier holds the snapshot, if get this {@link ContextCarrier} from remote, make sure {@link
* ContextCarrier#deserialize(String)} called.
*/
public AbstractTracingContext extract(ContextCarrier carrier) {
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());
}
return this;
}
private TraceSegmentRef getRef(ContextCarrier carrier) {
......
......@@ -3,8 +3,8 @@ package org.skywalking.apm.agent.core.context;
import org.skywalking.apm.trace.TraceSegment;
/**
* {@link TracerContextListener} is a status change listener of {@link TracingContext}.
* Add a {@link TracerContextListener} implementation through {@link TracingContext}
* {@link TracerContextListener} is a status change listener of {@link TracerContext}.
* Add a {@link TracerContextListener} implementation through {@link TracerContext}
* <p>
* All this class's methods will be called concurrently. Make sure all implementations are thread-safe.
* <p>
......@@ -12,7 +12,7 @@ import org.skywalking.apm.trace.TraceSegment;
*/
public interface TracerContextListener {
/**
* This method will be called, after the {@link TracingContext#finish()}
* This method will be called, after the {@link TracerContext#finish()}
*
* @param traceSegment finished {@link TraceSegment}
*/
......
......@@ -6,7 +6,7 @@ import com.lmax.disruptor.dsl.Disruptor;
import com.lmax.disruptor.util.DaemonThreadFactory;
import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.boot.StatusBootService;
import org.skywalking.apm.agent.core.context.TracingContext;
import org.skywalking.apm.agent.core.context.TracerContext;
import org.skywalking.apm.agent.core.context.TracerContextListener;
import org.skywalking.apm.logging.ILog;
import org.skywalking.apm.logging.LogManager;
......@@ -40,7 +40,7 @@ public class TraceSegmentProcessQueue extends StatusBootService implements Trace
@Override
protected void bootUpWithStatus() {
TracingContext.ListenerManager.add(this);
TracerContext.ListenerManager.add(this);
disruptor.start();
}
......
......@@ -25,7 +25,7 @@ public class ContextManagerTestCase {
Assert.assertEquals(span, ContextManager.activeSpan());
TracingContext.ListenerManager.add(TestTracerContextListener.INSTANCE);
TracerContext.ListenerManager.add(TestTracerContextListener.INSTANCE);
ContextManager.stopSpan();
TraceSegment segment = TestTracerContextListener.INSTANCE.finishedSegmentCarrier[0];
......@@ -35,6 +35,6 @@ public class ContextManagerTestCase {
@After
public void reset() {
TracingContext.ListenerManager.remove(TestTracerContextListener.INSTANCE);
TracerContext.ListenerManager.remove(TestTracerContextListener.INSTANCE);
}
}
......@@ -15,15 +15,15 @@ import java.util.List;
/**
* Created by wusheng on 2017/2/19.
*/
public class TracingContextTestCase {
public class TracerContextTestCase {
@Test
public void testSpanLifeCycle() {
TracingContext context = new TracingContext();
TracerContext context = new TracerContext();
Span span = context.createSpan("/serviceA", false);
Assert.assertEquals(span, context.activeSpan());
TracingContext.ListenerManager.add(TestTracerContextListener.INSTANCE);
TracerContext.ListenerManager.add(TestTracerContextListener.INSTANCE);
final TraceSegment[] finishedSegmentCarrier = TestTracerContextListener.INSTANCE.finishedSegmentCarrier;
context.stopSpan(span);
......@@ -34,13 +34,13 @@ public class TracingContextTestCase {
@Test
public void testChildOfSpan() {
TracingContext context = new TracingContext();
TracerContext context = new TracerContext();
Span serviceSpan = context.createSpan("/serviceA", false);
Span dbSpan = context.createSpan("db/preparedStatement/execute", false);
Assert.assertEquals(dbSpan, context.activeSpan());
TracingContext.ListenerManager.add(TestTracerContextListener.INSTANCE);
TracerContext.ListenerManager.add(TestTracerContextListener.INSTANCE);
final TraceSegment[] finishedSegmentCarrier = TestTracerContextListener.INSTANCE.finishedSegmentCarrier;
try {
......@@ -59,7 +59,7 @@ public class TracingContextTestCase {
@Test
public void testInject() {
TracingContext context = new TracingContext();
TracerContext context = new TracerContext();
Span serviceSpan = context.createSpan("/serviceA", false);
Span dbSpan = context.createSpan("db/preparedStatement/execute", false);
Tags.PEER_HOST.set(dbSpan, "127.0.0.1");
......@@ -85,11 +85,11 @@ public class TracingContextTestCase {
Assert.assertTrue(carrier.isValid());
TracingContext context = new TracingContext();
TracerContext context = new TracerContext();
context.extract(carrier);
Span span = context.createSpan("/serviceC", false);
TracingContext.ListenerManager.add(TestTracerContextListener.INSTANCE);
TracerContext.ListenerManager.add(TestTracerContextListener.INSTANCE);
final TraceSegment[] finishedSegmentCarrier = TestTracerContextListener.INSTANCE.finishedSegmentCarrier;
context.stopSpan(span);
......@@ -100,6 +100,6 @@ public class TracingContextTestCase {
@After
public void reset() {
TracingContext.ListenerManager.remove(TestTracerContextListener.INSTANCE);
TracerContext.ListenerManager.remove(TestTracerContextListener.INSTANCE);
}
}
......@@ -18,7 +18,7 @@ import org.powermock.modules.junit4.PowerMockRunner;
import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.ContextCarrier;
import org.skywalking.apm.agent.core.context.TracingContext;
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;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
......@@ -67,7 +67,7 @@ public class DubboInterceptorTest {
dubboInterceptor = new DubboInterceptor();
testParam = new RequestParamForTestBelow283();
mockTracerContextListener = new MockTracerContextListener();
TracingContext.ListenerManager.add(mockTracerContextListener);
TracerContext.ListenerManager.add(mockTracerContextListener);
mockStatic(RpcContext.class);
mockStatic(BugFixActive.class);
......@@ -227,7 +227,7 @@ public class DubboInterceptorTest {
@After
public void tearDown() throws Exception {
TracingContext.ListenerManager.remove(mockTracerContextListener);
TracerContext.ListenerManager.remove(mockTracerContextListener);
}
}
......@@ -14,7 +14,7 @@ import org.mockito.Mock;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.context.TracingContext;
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;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
......@@ -60,7 +60,7 @@ public class DefaultHttpClientInterceptorTest {
ServiceManager.INSTANCE.boot();
defaultHttpClientInterceptor = new DefaultHttpClientInterceptor();
TracingContext.ListenerManager.add(mockTracerContextListener);
TracerContext.ListenerManager.add(mockTracerContextListener);
}
@Test
......
......@@ -10,7 +10,7 @@ import org.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.context.TracingContext;
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;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
......@@ -77,7 +77,7 @@ public class HttpClientExecuteInterceptorTest {
});
when(httpHost.getPort()).thenReturn(8080);
TracingContext.ListenerManager.add(mockTracerContextListener);
TracerContext.ListenerManager.add(mockTracerContextListener);
}
@Test
......@@ -153,7 +153,7 @@ public class HttpClientExecuteInterceptorTest {
@After
public void tearDown() throws Exception {
TracingContext.ListenerManager.remove(mockTracerContextListener);
TracerContext.ListenerManager.remove(mockTracerContextListener);
}
}
......@@ -10,7 +10,7 @@ import org.mockito.Matchers;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.context.TracingContext;
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.Span;
......@@ -74,7 +74,7 @@ public class SWCallableStatementTest extends AbstractStatementTest {
swConnection = new SWConnection("jdbc:mysql://127.0.0.1:3306/test", new Properties(), jdbcConnection);
multiHostConnection = new SWConnection("jdbc:mysql://127.0.0.1:3306,127.0.0.1:3309/test", new Properties(), jdbcConnection);
TracingContext.ListenerManager.add(mockTracerContextListener);
TracerContext.ListenerManager.add(mockTracerContextListener);
when(jdbcConnection.prepareCall(anyString())).thenReturn(mysqlCallableStatement);
when(jdbcConnection.prepareCall(anyString(), anyInt(), anyInt(), anyInt())).thenReturn(mysqlCallableStatement);
......@@ -724,7 +724,7 @@ public class SWCallableStatementTest extends AbstractStatementTest {
@After
public void tearDown() throws Exception {
TracingContext.ListenerManager.remove(mockTracerContextListener);
TracerContext.ListenerManager.remove(mockTracerContextListener);
}
}
......@@ -8,7 +8,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.context.TracingContext;
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;
......@@ -48,7 +48,7 @@ public class SWConnectionTest extends AbstractStatementTest {
swConnection = new SWConnection("jdbc:mysql://127.0.0.1:3306/test", new Properties(), jdbcConnection);
multiHostConnection = new SWConnection("jdbc:mysql://127.0.0.1:3306,127.0.0.1:3309/test", new Properties(), jdbcConnection);
TracingContext.ListenerManager.add(mockTracerContextListener);
TracerContext.ListenerManager.add(mockTracerContextListener);
when(jdbcConnection.prepareStatement(anyString())).thenReturn(mysqlPreparedStatement);
}
......@@ -350,7 +350,7 @@ public class SWConnectionTest extends AbstractStatementTest {
@After
public void tearDown() throws Exception {
TracingContext.ListenerManager.remove(mockTracerContextListener);
TracerContext.ListenerManager.remove(mockTracerContextListener);
}
}
......@@ -9,7 +9,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.context.TracingContext;
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.Span;
......@@ -46,7 +46,7 @@ public class SWStatementTest extends AbstractStatementTest {
swConnection = new SWConnection("jdbc:mysql://127.0.0.1:3306/test", new Properties(), jdbcConnection);
multiHostConnection = new SWConnection("jdbc:mysql://127.0.0.1:3306,127.0.0.1:3309/test", new Properties(), jdbcConnection);
TracingContext.ListenerManager.add(mockTracerContextListener);
TracerContext.ListenerManager.add(mockTracerContextListener);
when(jdbcConnection.createStatement()).thenReturn(mysqlStatement);
when(jdbcConnection.createStatement(anyInt(), anyInt())).thenReturn(mysqlStatement);
......@@ -299,6 +299,6 @@ public class SWStatementTest extends AbstractStatementTest {
@After
public void tearDown() throws Exception {
TracingContext.ListenerManager.remove(mockTracerContextListener);
TracerContext.ListenerManager.remove(mockTracerContextListener);
}
}
......@@ -10,7 +10,7 @@ import org.mockito.Matchers;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.context.TracingContext;
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.Span;
......@@ -75,7 +75,7 @@ public class SwPreparedStatementTest extends AbstractStatementTest {
swConnection = new SWConnection("jdbc:mysql://127.0.0.1:3306/test", new Properties(), jdbcConnection);
multiHostConnection = new SWConnection("jdbc:mysql://127.0.0.1:3306,127.0.0.1:3309/test", new Properties(), jdbcConnection);
TracingContext.ListenerManager.add(mockTracerContextListener);
TracerContext.ListenerManager.add(mockTracerContextListener);
when(jdbcConnection.prepareStatement(anyString())).thenReturn(mysqlPreparedStatement);
when(jdbcConnection.prepareStatement(anyString(), anyInt(), anyInt(), anyInt())).thenReturn(mysqlPreparedStatement);
......@@ -558,6 +558,6 @@ public class SwPreparedStatementTest extends AbstractStatementTest {
@After
public void tearDown() throws Exception {
TracingContext.ListenerManager.remove(mockTracerContextListener);
TracerContext.ListenerManager.remove(mockTracerContextListener);
}
}
......@@ -9,7 +9,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.context.TracingContext;
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;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
......@@ -43,7 +43,7 @@ public class JedisMethodInterceptorTest {
interceptor = new JedisMethodInterceptor();
mockTracerContextListener = new MockTracerContextListener();
TracingContext.ListenerManager.add(mockTracerContextListener);
TracerContext.ListenerManager.add(mockTracerContextListener);
when(classInstanceContext.get(KEY_OF_REDIS_HOST, String.class)).thenReturn("127.0.0.1");
when(classInstanceContext.get(KEY_OF_REDIS_PORT)).thenReturn(6379);
......@@ -140,7 +140,7 @@ public class JedisMethodInterceptorTest {
@After
public void tearDown() throws Exception {
TracingContext.ListenerManager.remove(mockTracerContextListener);
TracerContext.ListenerManager.remove(mockTracerContextListener);
}
}
......@@ -16,7 +16,7 @@ import org.mockito.runners.MockitoJUnitRunner;
import org.powermock.api.mockito.PowerMockito;
import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.TracingContext;
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;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
......@@ -49,7 +49,7 @@ public class MongoDBMethodInterceptorTest {
interceptor = new MongoDBMethodInterceptor();
mockTracerContextListener = new MockTracerContextListener();
TracingContext.ListenerManager.add(mockTracerContextListener);
TracerContext.ListenerManager.add(mockTracerContextListener);
Config.Plugin.MongoDB.TRACE_PARAM = true;
......@@ -121,7 +121,7 @@ public class MongoDBMethodInterceptorTest {
@After
public void tearDown() throws Exception {
TracingContext.ListenerManager.remove(mockTracerContextListener);
TracerContext.ListenerManager.remove(mockTracerContextListener);
}
}
......@@ -17,7 +17,7 @@ import org.mockito.runners.MockitoJUnitRunner;
import org.powermock.api.mockito.PowerMockito;
import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.conf.Config;
import org.skywalking.apm.agent.core.context.TracingContext;
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;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
......@@ -52,7 +52,7 @@ public class MongoDBWriteMethodInterceptorTest {
interceptor = new MongoDBMethodInterceptor();
mockTracerContextListener = new MockTracerContextListener();
TracingContext.ListenerManager.add(mockTracerContextListener);
TracerContext.ListenerManager.add(mockTracerContextListener);
Config.Plugin.MongoDB.TRACE_PARAM = true;
......@@ -132,7 +132,7 @@ public class MongoDBWriteMethodInterceptorTest {
@After
public void tearDown() throws Exception {
TracingContext.ListenerManager.remove(mockTracerContextListener);
TracerContext.ListenerManager.remove(mockTracerContextListener);
}
}
......@@ -12,7 +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.context.TracingContext;
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;
import org.skywalking.apm.sniffer.mock.context.MockTracerContextListener;
......@@ -52,7 +52,7 @@ public class MotanConsumerInterceptorTest {
invokeInterceptor = new MotanConsumerInterceptor();
url = URL.valueOf("motan://127.0.0.1:34000/org.skywalking.apm.test.TestService");
TracingContext.ListenerManager.add(contextListener);
TracerContext.ListenerManager.add(contextListener);
when(instanceContext.get("REQUEST_URL")).thenReturn(url);
when(interceptorContext.allArguments()).thenReturn(new Object[] {request});
......@@ -134,6 +134,6 @@ public class MotanConsumerInterceptorTest {
@After
public void tearDown() {
TracingContext.ListenerManager.remove(contextListener);
TracerContext.ListenerManager.remove(contextListener);
}
}
......@@ -12,7 +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.context.TracingContext;
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;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodInvokeContext;
......@@ -57,7 +57,7 @@ public class MotanProviderInterceptorTest {
contextListener = new MockTracerContextListener();
url = URL.valueOf("motan://127.0.0.1:34000/org.skywalking.apm.test.TestService");
TracingContext.ListenerManager.add(contextListener);
TracerContext.ListenerManager.add(contextListener);
when(instanceContext.get("REQUEST_URL")).thenReturn(url);
when(interceptorContext.allArguments()).thenReturn(new Object[] {request});
......@@ -162,6 +162,6 @@ public class MotanProviderInterceptorTest {
@After
public void tearDown() {
TracingContext.ListenerManager.remove(contextListener);
TracerContext.ListenerManager.remove(contextListener);
}
}
......@@ -11,7 +11,7 @@ import org.mockito.Mock;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
import org.skywalking.apm.agent.core.boot.ServiceManager;
import org.skywalking.apm.agent.core.context.TracingContext;
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;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceMethodInvokeContext;
......@@ -60,7 +60,7 @@ public class RealCallInterceptorTest {
ServiceManager.INSTANCE.boot();
realCallInterceptor = new RealCallInterceptor();
TracingContext.ListenerManager.add(mockTracerContextListener);
TracerContext.ListenerManager.add(mockTracerContextListener);
}
@Test
......
......@@ -10,7 +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.context.TracingContext;
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;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
......@@ -57,7 +57,7 @@ public class ResinV3InterceptorTest {
interceptor = new ResinV3Interceptor();
contextListener = new MockTracerContextListener();
TracingContext.ListenerManager.add(contextListener);
TracerContext.ListenerManager.add(contextListener);
when(request.getPageURI()).thenReturn("/test/testRequestURL");
when(request.getScheme()).thenReturn("http");
......@@ -145,6 +145,6 @@ public class ResinV3InterceptorTest {
@After
public void tearDown() throws Exception {
TracingContext.ListenerManager.remove(new MockTracerContextListener());
TracerContext.ListenerManager.remove(new MockTracerContextListener());
}
}
......@@ -10,7 +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.context.TracingContext;
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;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
......@@ -55,7 +55,7 @@ public class ResinV4InterceptorTest {
interceptor = new ResinV4Interceptor();
contextListener = new MockTracerContextListener();
TracingContext.ListenerManager.add(contextListener);
TracerContext.ListenerManager.add(contextListener);
when(request.getPageURI()).thenReturn("/test/testRequestURL");
when(request.getScheme()).thenReturn("http");
......@@ -144,6 +144,6 @@ public class ResinV4InterceptorTest {
@After
public void tearDown() throws Exception {
TracingContext.ListenerManager.remove(new MockTracerContextListener());
TracerContext.ListenerManager.remove(new MockTracerContextListener());
}
}
......@@ -8,7 +8,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.context.TracingContext;
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;
import org.skywalking.apm.agent.core.plugin.interceptor.enhance.MethodInterceptResult;
......@@ -54,7 +54,7 @@ public class TomcatInterceptorTest {
tomcatInterceptor = new TomcatInterceptor();
contextListener = new MockTracerContextListener();
TracingContext.ListenerManager.add(contextListener);
TracerContext.ListenerManager.add(contextListener);
when(request.getRequestURI()).thenReturn("/test/testRequestURL");
when(request.getRequestURL()).thenReturn(new StringBuffer("http://localhost:8080/test/testRequestURL"));
......@@ -139,7 +139,7 @@ public class TomcatInterceptorTest {
@After
public void tearDown() throws Exception {
TracingContext.ListenerManager.remove(new MockTracerContextListener());
TracerContext.ListenerManager.remove(new MockTracerContextListener());
}
}
package org.skywalking.apm.sniffer.mock.context;
import org.junit.Assert;
import org.skywalking.apm.agent.core.context.TracingContext;
import org.skywalking.apm.agent.core.context.TracerContext;
import org.skywalking.apm.agent.core.context.TracerContextListener;
import org.skywalking.apm.trace.TraceSegment;
......@@ -10,8 +10,8 @@ import java.util.Collections;
import java.util.List;
/**
* This is mock tracer context listener, which should be added by calling {@link TracingContext.ListenerManager#add(TracerContextListener)}.
* This mock listener will hold all finished trace, which all are generated by {@link TracingContext#finish()}.
* This is mock tracer context listener, which should be added by calling {@link TracerContext.ListenerManager#add(TracerContextListener)}.
* This mock listener will hold all finished trace, which all are generated by {@link TracerContext#finish()}.
* <p>
* Created by wusheng on 2017/2/20.
*/
......
package org.skywalking.apm.sniffer.mock.trace;
import org.skywalking.apm.agent.core.context.TracingContext;
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;
......@@ -53,10 +53,10 @@ public enum TraceSegmentBuilderFactory {
private TraceSegment build(TraceSegmentBuilder builder) {
MockTracerContextListener listener = new MockTracerContextListener();
try {
TracingContext.ListenerManager.add(listener);
TracerContext.ListenerManager.add(listener);
return builder.build(listener);
} finally {
TracingContext.ListenerManager.remove(listener);
TracerContext.ListenerManager.remove(listener);
}
}
......
......@@ -12,7 +12,7 @@ import org.skywalking.apm.trace.TraceSegment;
/**
* Created by wusheng on 2017/2/21.
*/
public class MockTracingContextListenerTestCase {
public class MockTracerContextListenerTestCase {
@BeforeClass
public static void setup() {
ServiceManager.INSTANCE.boot();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册