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

Merge pull request #514 from OpenSkywalking/feature/headcheck

Feature/headcheck
......@@ -41,11 +41,11 @@ public class JVMMetricsServiceHandlerTestCase {
private final Logger logger = LoggerFactory.getLogger(JVMMetricsServiceHandlerTestCase.class);
private static JVMMetricsServiceGrpc.JVMMetricsServiceBlockingStub stub;
private static JVMMetricsServiceGrpc.JVMMetricsServiceBlockingStub STUB;
public static void main(String[] args) {
ManagedChannel channel = ManagedChannelBuilder.forAddress("localhost", 11800).usePlaintext(true).build();
stub = JVMMetricsServiceGrpc.newBlockingStub(channel);
STUB = JVMMetricsServiceGrpc.newBlockingStub(channel);
final long timeInterval = 1;
Executors.newSingleThreadScheduledExecutor().scheduleAtFixedRate(() -> multiInstanceJvmSend(), 1, timeInterval, TimeUnit.SECONDS);
......@@ -68,7 +68,7 @@ public class JVMMetricsServiceHandlerTestCase {
buildGcMetric(jvmMetric);
jvmMetricsBuilder.addMetrics(jvmMetric.build());
stub.collect(jvmMetricsBuilder.build());
STUB.collect(jvmMetricsBuilder.build());
}
private static void buildCpuMetric(JVMMetric.Builder jvmMetric) {
......@@ -78,21 +78,21 @@ public class JVMMetricsServiceHandlerTestCase {
}
private static void buildMemoryMetric(JVMMetric.Builder jvmMetric) {
Memory.Builder builder_1 = Memory.newBuilder();
builder_1.setIsHeap(true);
builder_1.setInit(20);
builder_1.setMax(100);
builder_1.setUsed(50);
builder_1.setCommitted(30);
jvmMetric.addMemory(builder_1.build());
Memory.Builder builder_2 = Memory.newBuilder();
builder_2.setIsHeap(false);
builder_2.setInit(200);
builder_2.setMax(1000);
builder_2.setUsed(500);
builder_2.setCommitted(300);
jvmMetric.addMemory(builder_2.build());
Memory.Builder builderHeap = Memory.newBuilder();
builderHeap.setIsHeap(true);
builderHeap.setInit(20);
builderHeap.setMax(100);
builderHeap.setUsed(50);
builderHeap.setCommitted(30);
jvmMetric.addMemory(builderHeap.build());
Memory.Builder builderNonHeap = Memory.newBuilder();
builderNonHeap.setIsHeap(false);
builderNonHeap.setInit(200);
builderNonHeap.setMax(1000);
builderNonHeap.setUsed(500);
builderNonHeap.setCommitted(300);
jvmMetric.addMemory(builderNonHeap.build());
}
private static void buildMemoryPoolMetric(JVMMetric.Builder jvmMetric) {
......
......@@ -23,12 +23,16 @@ import io.grpc.ManagedChannelBuilder;
import org.skywalking.apm.network.proto.Application;
import org.skywalking.apm.network.proto.ApplicationMapping;
import org.skywalking.apm.network.proto.ApplicationRegisterServiceGrpc;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* @author pengys5
*/
public class ApplicationRegisterServiceHandlerTestCase {
private final Logger logger = LoggerFactory.getLogger(ApplicationRegisterServiceHandlerTestCase.class);
private ApplicationRegisterServiceGrpc.ApplicationRegisterServiceBlockingStub stub;
public void testRegister() {
......@@ -37,6 +41,6 @@ public class ApplicationRegisterServiceHandlerTestCase {
Application application = Application.newBuilder().addApplicationCode("test141").build();
ApplicationMapping mapping = stub.register(application);
System.out.println(mapping.getApplication(0).getKey() + ", " + mapping.getApplication(0).getValue());
logger.debug(mapping.getApplication(0).getKey() + ", " + mapping.getApplication(0).getValue());
}
}
......@@ -91,42 +91,42 @@ public class TraceSegmentServiceHandlerTestCase {
segmentBuilder.setApplicationInstanceId(2);
segmentBuilder.setTraceSegmentId(UniqueId.newBuilder().addIdParts(200).addIdParts(200).addIdParts(200).build());
SpanObject.Builder span_0 = SpanObject.newBuilder();
span_0.setSpanId(0);
span_0.setOperationName("/dubbox-case/case/dubbox-rest");
span_0.setOperationNameId(0);
span_0.setParentSpanId(-1);
span_0.setSpanLayer(SpanLayer.Http);
span_0.setStartTime(now);
span_0.setEndTime(now + 100000);
span_0.setComponentId(ComponentsDefine.TOMCAT.getId());
span_0.setIsError(false);
span_0.setSpanType(SpanType.Entry);
span_0.setPeerId(2);
span_0.setPeer("localhost:8082");
LogMessage.Builder log_0 = LogMessage.newBuilder();
log_0.setTime(now);
log_0.addData(KeyWithStringValue.newBuilder().setKey("log1").setValue("value1"));
log_0.addData(KeyWithStringValue.newBuilder().setKey("log2").setValue("value2"));
log_0.addData(KeyWithStringValue.newBuilder().setKey("log3").setValue("value3"));
span_0.addLogs(log_0.build());
span_0.addTags(KeyWithStringValue.newBuilder().setKey("tag1").setValue("value1"));
span_0.addTags(KeyWithStringValue.newBuilder().setKey("tag2").setValue("value2"));
span_0.addTags(KeyWithStringValue.newBuilder().setKey("tag3").setValue("value3"));
segmentBuilder.addSpans(span_0);
TraceSegmentReference.Builder ref_0 = TraceSegmentReference.newBuilder();
ref_0.setEntryServiceId(1);
ref_0.setEntryServiceName("ServiceName");
ref_0.setNetworkAddress("localhost:8081");
ref_0.setNetworkAddressId(1);
ref_0.setParentApplicationInstanceId(1);
ref_0.setParentServiceId(1);
ref_0.setParentServiceName("");
ref_0.setParentSpanId(2);
ref_0.setParentTraceSegmentId(UniqueId.newBuilder().addIdParts(100).addIdParts(100).addIdParts(100).build());
SpanObject.Builder span0 = SpanObject.newBuilder();
span0.setSpanId(0);
span0.setOperationName("/dubbox-case/case/dubbox-rest");
span0.setOperationNameId(0);
span0.setParentSpanId(-1);
span0.setSpanLayer(SpanLayer.Http);
span0.setStartTime(now);
span0.setEndTime(now + 100000);
span0.setComponentId(ComponentsDefine.TOMCAT.getId());
span0.setIsError(false);
span0.setSpanType(SpanType.Entry);
span0.setPeerId(2);
span0.setPeer("localhost:8082");
LogMessage.Builder log0 = LogMessage.newBuilder();
log0.setTime(now);
log0.addData(KeyWithStringValue.newBuilder().setKey("log1").setValue("value1"));
log0.addData(KeyWithStringValue.newBuilder().setKey("log2").setValue("value2"));
log0.addData(KeyWithStringValue.newBuilder().setKey("log3").setValue("value3"));
span0.addLogs(log0.build());
span0.addTags(KeyWithStringValue.newBuilder().setKey("tag1").setValue("value1"));
span0.addTags(KeyWithStringValue.newBuilder().setKey("tag2").setValue("value2"));
span0.addTags(KeyWithStringValue.newBuilder().setKey("tag3").setValue("value3"));
segmentBuilder.addSpans(span0);
TraceSegmentReference.Builder ref0 = TraceSegmentReference.newBuilder();
ref0.setEntryServiceId(1);
ref0.setEntryServiceName("ServiceName");
ref0.setNetworkAddress("localhost:8081");
ref0.setNetworkAddressId(1);
ref0.setParentApplicationInstanceId(1);
ref0.setParentServiceId(1);
ref0.setParentServiceName("");
ref0.setParentSpanId(2);
ref0.setParentTraceSegmentId(UniqueId.newBuilder().addIdParts(100).addIdParts(100).addIdParts(100).build());
// segmentBuilder.addRefs(ref_0);
builder.setSegment(segmentBuilder.build().toByteString());
......
......@@ -34,7 +34,6 @@ public class TraceSegmentJsonReaderTestCase {
public void testRead() throws IOException {
TraceSegmentJsonReader reader = new TraceSegmentJsonReader();
JsonElement jsonElement = JsonFileReader.INSTANCE.read("json/segment/normal/dubbox-consumer.json");
System.out.println(jsonElement.toString());
JsonReader jsonReader = new JsonReader(new StringReader(jsonElement.toString()));
jsonReader.beginArray();
......
......@@ -64,14 +64,14 @@ public class SegmentPost {
ServiceNameEsDAO serviceNameEsDAO = new ServiceNameEsDAO();
serviceNameEsDAO.setClient(client);
ServiceNameDataDefine.ServiceName serviceName_1 = new ServiceNameDataDefine.ServiceName("1", "", 0, 1);
serviceNameEsDAO.save(serviceName_1);
ServiceNameDataDefine.ServiceName serviceName_2 = new ServiceNameDataDefine.ServiceName("2", "org.skywaking.apm.testcase.dubbo.services.GreetService.doBusiness()", 2, 2);
serviceNameEsDAO.save(serviceName_2);
ServiceNameDataDefine.ServiceName serviceName_3 = new ServiceNameDataDefine.ServiceName("3", "/dubbox-case/case/dubbox-rest", 2, 3);
serviceNameEsDAO.save(serviceName_3);
ServiceNameDataDefine.ServiceName serviceName_4 = new ServiceNameDataDefine.ServiceName("4", "org.skywaking.apm.testcase.dubbo.services.GreetService.doBusiness()", 3, 4);
serviceNameEsDAO.save(serviceName_4);
ServiceNameDataDefine.ServiceName serviceName1 = new ServiceNameDataDefine.ServiceName("1", "", 0, 1);
serviceNameEsDAO.save(serviceName1);
ServiceNameDataDefine.ServiceName serviceName2 = new ServiceNameDataDefine.ServiceName("2", "org.skywaking.apm.testcase.dubbo.services.GreetService.doBusiness()", 2, 2);
serviceNameEsDAO.save(serviceName2);
ServiceNameDataDefine.ServiceName serviceName3 = new ServiceNameDataDefine.ServiceName("3", "/dubbox-case/case/dubbox-rest", 2, 3);
serviceNameEsDAO.save(serviceName3);
ServiceNameDataDefine.ServiceName serviceName4 = new ServiceNameDataDefine.ServiceName("4", "org.skywaking.apm.testcase.dubbo.services.GreetService.doBusiness()", 3, 4);
serviceNameEsDAO.save(serviceName4);
while (true) {
JsonElement consumer = JsonFileReader.INSTANCE.read("json/segment/normal/dubbox-consumer.json");
......@@ -82,12 +82,12 @@ public class SegmentPost {
modifyTime(provider);
HttpClientTools.INSTANCE.post("http://localhost:12800/segments", provider.toString());
diff = 0;
DIFF = 0;
Thread.sleep(1000);
}
}
private static long diff = 0;
private static long DIFF = 0;
private static void modifyTime(JsonElement jsonElement) {
JsonArray segmentArray = jsonElement.getAsJsonArray();
......@@ -98,12 +98,12 @@ public class SegmentPost {
long startTime = span.getAsJsonObject().get("st").getAsLong();
long endTime = span.getAsJsonObject().get("et").getAsLong();
if (diff == 0) {
diff = System.currentTimeMillis() - startTime;
if (DIFF == 0) {
DIFF = System.currentTimeMillis() - startTime;
}
span.getAsJsonObject().addProperty("st", startTime + diff);
span.getAsJsonObject().addProperty("et", endTime + diff);
span.getAsJsonObject().addProperty("st", startTime + DIFF);
span.getAsJsonObject().addProperty("et", endTime + DIFF);
}
}
}
......
......@@ -219,15 +219,15 @@ public class GrpcSegmentPost {
LogMessage.Builder entryLogMessage = LogMessage.newBuilder();
entryLogMessage.setTime(timestamp);
KeyWithStringValue.Builder data_1 = KeyWithStringValue.newBuilder();
data_1.setKey("url");
data_1.setValue("http://localhost:18080/dubbox-case/case/dubbox-rest");
entryLogMessage.addData(data_1);
KeyWithStringValue.Builder data_2 = KeyWithStringValue.newBuilder();
data_2.setKey("http.method");
data_2.setValue("GET");
entryLogMessage.addData(data_2);
KeyWithStringValue.Builder data1 = KeyWithStringValue.newBuilder();
data1.setKey("url");
data1.setValue("http://localhost:18080/dubbox-case/case/dubbox-rest");
entryLogMessage.addData(data1);
KeyWithStringValue.Builder data2 = KeyWithStringValue.newBuilder();
data2.setKey("http.method");
data2.setValue("GET");
entryLogMessage.addData(data2);
entrySpan.addLogs(entryLogMessage);
segmentBuilder.addSpans(entrySpan);
......@@ -292,15 +292,15 @@ public class GrpcSegmentPost {
LogMessage.Builder entryLogMessage = LogMessage.newBuilder();
entryLogMessage.setTime(timestamp);
KeyWithStringValue.Builder data_1 = KeyWithStringValue.newBuilder();
data_1.setKey("url");
data_1.setValue("rest://172.25.0.4:20880/org.skywaking.apm.testcase.dubbo.services.GreetService.doBusiness()");
entryLogMessage.addData(data_1);
KeyWithStringValue.Builder data1 = KeyWithStringValue.newBuilder();
data1.setKey("url");
data1.setValue("rest://172.25.0.4:20880/org.skywaking.apm.testcase.dubbo.services.GreetService.doBusiness()");
entryLogMessage.addData(data1);
KeyWithStringValue.Builder data_2 = KeyWithStringValue.newBuilder();
data_2.setKey("http.method");
data_2.setValue("GET");
entryLogMessage.addData(data_2);
KeyWithStringValue.Builder data2 = KeyWithStringValue.newBuilder();
data2.setKey("http.method");
data2.setValue("GET");
entryLogMessage.addData(data2);
entrySpan.addLogs(entryLogMessage);
segmentBuilder.addSpans(entrySpan);
......
......@@ -57,10 +57,7 @@ public class TimeBucketUtilsTestCase {
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(1490922929258L);
calendar.set(Calendar.SECOND, calendar.get(Calendar.SECOND) - 3);
// System.out.println(calendar.getTimeInMillis());
calendar.set(Calendar.SECOND, calendar.get(Calendar.SECOND) - 2);
// System.out.println(calendar.getTimeInMillis());
calendar.set(Calendar.SECOND, calendar.get(Calendar.SECOND) - 2);
// System.out.println(calendar.getTimeInMillis());
}
}
......@@ -32,9 +32,9 @@ import org.skywalking.apm.commons.datacarrier.SampleData;
* Created by wusheng on 2016/10/26.
*/
public class ConsumerTest {
public static LinkedBlockingQueue<SampleData> buffer = new LinkedBlockingQueue<SampleData>();
public static LinkedBlockingQueue<SampleData> BUFFER = new LinkedBlockingQueue<SampleData>();
public static boolean isOccurError = false;
public static boolean IS_OCCUR_ERROR = false;
@Test
public void testConsumerLessThanChannel() throws IllegalAccessException {
......@@ -71,7 +71,7 @@ public class ConsumerTest {
Thread.sleep(2000);
List<SampleData> result = new ArrayList<SampleData>();
buffer.drainTo(result);
BUFFER.drainTo(result);
Assert.assertEquals(200, result.size());
......@@ -94,7 +94,7 @@ public class ConsumerTest {
consumer.onError = true;
carrier.consume(consumer, 5);
Assert.assertTrue(isOccurError);
Assert.assertTrue(IS_OCCUR_ERROR);
}
class SampleConsumer2 implements IConsumer<SampleData> {
......@@ -116,7 +116,7 @@ public class ConsumerTest {
@Override
public void onError(List<SampleData> data, Throwable t) {
isOccurError = true;
IS_OCCUR_ERROR = true;
}
@Override
......@@ -126,7 +126,7 @@ public class ConsumerTest {
}
private IConsumer getConsumer(DataCarrier<SampleData> carrier) throws IllegalAccessException {
ConsumerPool pool = ((ConsumerPool)MemberModifier.field(DataCarrier.class, "consumerPool").get(carrier));
ConsumerPool pool = (ConsumerPool)MemberModifier.field(DataCarrier.class, "consumerPool").get(carrier);
ConsumerThread[] threads = (ConsumerThread[])MemberModifier.field(ConsumerPool.class, "consumerThreads").get(pool);
return (IConsumer)MemberModifier.field(ConsumerThread.class, "consumer").get(threads[0]);
......
......@@ -36,7 +36,7 @@ public class SampleConsumer implements IConsumer<SampleData> {
public void consume(List<SampleData> data) {
for (SampleData one : data) {
one.setIntValue(this.hashCode());
ConsumerTest.buffer.offer(one);
ConsumerTest.BUFFER.offer(one);
}
}
......
......@@ -30,17 +30,17 @@ public class ConfigInitializerTest {
@Test
public void testInitialize() throws IllegalAccessException {
Properties properties = new Properties();
properties.put("Level1Object.strAttr".toLowerCase(), "stringValue");
properties.put("Level1Object.Level2Object.intAttr".toLowerCase(), "1000");
properties.put("Level1Object.Level2Object.longAttr".toLowerCase(), "1000");
properties.put("Level1Object.Level2Object.booleanAttr".toLowerCase(), "true");
properties.put("Level1Object.STR_ATTR".toLowerCase(), "stringValue");
properties.put("Level1Object.Level2Object.INT_ATTR".toLowerCase(), "1000");
properties.put("Level1Object.Level2Object.LONG_ATTR".toLowerCase(), "1000");
properties.put("Level1Object.Level2Object.BOOLEAN_ATTR".toLowerCase(), "true");
ConfigInitializer.initialize(properties, TestPropertiesObject.class);
Assert.assertEquals("stringValue", TestPropertiesObject.Level1Object.strAttr);
Assert.assertEquals(1000, TestPropertiesObject.Level1Object.Level2Object.intAttr);
Assert.assertEquals(1000L, TestPropertiesObject.Level1Object.Level2Object.longAttr);
Assert.assertEquals(true, TestPropertiesObject.Level1Object.Level2Object.booleanAttr);
Assert.assertEquals("stringValue", TestPropertiesObject.Level1Object.STR_ATTR);
Assert.assertEquals(1000, TestPropertiesObject.Level1Object.Level2Object.INT_ATTR);
Assert.assertEquals(1000L, TestPropertiesObject.Level1Object.Level2Object.LONG_ATTR);
Assert.assertEquals(true, TestPropertiesObject.Level1Object.Level2Object.BOOLEAN_ATTR);
}
@Test
......@@ -50,27 +50,27 @@ public class ConfigInitializerTest {
ConfigInitializer.initialize(properties, TestPropertiesObject.class);
Assert.assertNull(TestPropertiesObject.Level1Object.strAttr);
Assert.assertNull(TestPropertiesObject.Level1Object.STR_ATTR);
}
@Before
public void clear() {
TestPropertiesObject.Level1Object.strAttr = null;
TestPropertiesObject.Level1Object.Level2Object.intAttr = 0;
TestPropertiesObject.Level1Object.Level2Object.longAttr = 0;
TestPropertiesObject.Level1Object.Level2Object.booleanAttr = false;
TestPropertiesObject.Level1Object.STR_ATTR = null;
TestPropertiesObject.Level1Object.Level2Object.INT_ATTR = 0;
TestPropertiesObject.Level1Object.Level2Object.LONG_ATTR = 0;
TestPropertiesObject.Level1Object.Level2Object.BOOLEAN_ATTR = false;
}
public static class TestPropertiesObject {
public static class Level1Object {
public static String strAttr = null;
public static String STR_ATTR = null;
public static class Level2Object {
public static int intAttr = 0;
public static int INT_ATTR = 0;
public static long longAttr;
public static long LONG_ATTR;
public static boolean booleanAttr;
public static boolean BOOLEAN_ATTR;
}
}
}
......
......@@ -17,6 +17,7 @@
*/
package org.skywalking.apm.agent.core.boot;
import org.junit.Assert;
import org.junit.Test;
import static org.junit.Assert.assertNotNull;
......@@ -36,6 +37,6 @@ public class DefaultNamedThreadFactoryTest {
});
newThread.start();
assertNotNull(newThread.getName());
assert(newThread.getName().contains("DefaultNamedThreadFactoryTest"));
Assert.assertTrue(newThread.getName().contains("DefaultNamedThreadFactoryTest"));
}
}
......@@ -63,18 +63,18 @@ public class ServiceManagerTest {
}
private void assertIgnoreTracingContextListener() throws Exception {
List<TracingContextListener> LISTENERS = getFieldValue(IgnoredTracerContext.ListenerManager.class, "LISTENERS");
assertThat(LISTENERS.size(), is(1));
List<TracingContextListener> listeners = getFieldValue(IgnoredTracerContext.ListenerManager.class, "LISTENERS");
assertThat(listeners.size(), is(1));
assertThat(LISTENERS.contains(ServiceManager.INSTANCE.findService(ContextManager.class)), is(true));
assertThat(listeners.contains(ServiceManager.INSTANCE.findService(ContextManager.class)), is(true));
}
private void assertTracingContextListener() throws Exception {
List<TracingContextListener> LISTENERS = getFieldValue(TracingContext.ListenerManager.class, "LISTENERS");
assertThat(LISTENERS.size(), is(3));
List<TracingContextListener> listeners = getFieldValue(TracingContext.ListenerManager.class, "LISTENERS");
assertThat(listeners.size(), is(3));
assertThat(LISTENERS.contains(ServiceManager.INSTANCE.findService(ContextManager.class)), is(true));
assertThat(LISTENERS.contains(ServiceManager.INSTANCE.findService(TraceSegmentServiceClient.class)), is(true));
assertThat(listeners.contains(ServiceManager.INSTANCE.findService(ContextManager.class)), is(true));
assertThat(listeners.contains(ServiceManager.INSTANCE.findService(TraceSegmentServiceClient.class)), is(true));
}
private void assertJVMService(JVMService service) {
......
......@@ -33,13 +33,13 @@ import static org.mockito.Mockito.times;
* Created by wusheng on 2017/2/28.
*/
public class EasyLoggerTest {
private static PrintStream outRef;
private static PrintStream errRef;
private static PrintStream OUT_REF;
private static PrintStream ERR_REF;
@BeforeClass
public static void initAndHoldOut() {
outRef = System.out;
errRef = System.err;
OUT_REF = System.out;
ERR_REF = System.err;
}
@Test
......@@ -110,7 +110,7 @@ public class EasyLoggerTest {
@AfterClass
public static void reset() {
System.setOut(outRef);
System.setErr(errRef);
System.setOut(OUT_REF);
System.setErr(ERR_REF);
}
}
......@@ -31,11 +31,11 @@ import static org.mockito.Mockito.times;
* Created by wusheng on 2017/2/28.
*/
public class SystemOutWriterTest {
private static PrintStream outRef;
private static PrintStream OUT_REF;
@BeforeClass
public static void initAndHoldOut() {
outRef = System.out;
OUT_REF = System.out;
}
@Test
......@@ -50,6 +50,6 @@ public class SystemOutWriterTest {
@AfterClass
public static void reset() {
System.setOut(outRef);
System.setOut(OUT_REF);
}
}
......@@ -30,11 +30,11 @@ import org.skywalking.apm.agent.core.conf.Config;
* Created by wusheng on 2017/2/28.
*/
public class WriterFactoryTest {
private static PrintStream errRef;
private static PrintStream ERR_REF;
@BeforeClass
public static void initAndHoldOut() {
errRef = System.err;
ERR_REF = System.err;
}
/**
......@@ -54,6 +54,6 @@ public class WriterFactoryTest {
@AfterClass
public static void reset() {
Config.Logging.DIR = "";
System.setErr(errRef);
System.setErr(ERR_REF);
}
}
......@@ -30,7 +30,7 @@
<!-- header -->
<module name="Header">
<property name="headerFile" value="CHECKSTYLE_HEAD"/>
<property name="headerFile" value="${checkstyle.header.file}"/>
</module>
<module name="RegexpSingleline">
......
......@@ -87,6 +87,7 @@
<scala.compiler.version>2.11.7</scala.compiler.version>
<powermock.version>1.6.4</powermock.version>
<docker.plugin.version>0.4.13</docker.plugin.version>
<checkstyle.header.file>java.header</checkstyle.header.file>
</properties>
<dependencies>
......@@ -315,6 +316,7 @@
<configLocation>checkStyle.xml</configLocation>
<encoding>UTF-8</encoding>
<consoleOutput>true</consoleOutput>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
<failsOnError>true</failsOnError>
<excludes>org/skywalking/apm/network/**/*.java,
org/skywalking/apm/collector/remote/grpc/**/*.java,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册