You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by me...@apache.org on 2021/02/18 07:58:35 UTC

[shardingsphere] branch master updated: agent inspect code (#9425)

This is an automated email from the ASF dual-hosted git repository.

menghaoran pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new ddc88a9  agent inspect code (#9425)
ddc88a9 is described below

commit ddc88a96c405bca47a8c611ce61af166657109b3
Author: xiaoyu <54...@qq.com>
AuthorDate: Thu Feb 18 15:58:05 2021 +0800

    agent inspect code (#9425)
    
    * agent inspect code
    
    * fix checkstyle
---
 .../agent/api/point/PluginInterceptorPoint.java    |  8 ++--
 .../AbstractPluginDefinitionService.java           |  3 +-
 .../InstanceMethodAroundInterceptorTest.java       |  3 ++
 .../core/plugin/interceptor/MockClassLoader.java   | 21 ----------
 .../api/advice/ChannelHandlerAdviceTest.java       | 11 ++---
 .../api/advice/CommandExecutorTaskAdviceTest.java  |  7 ++--
 .../metrics/api/advice/TransactionAdviceTest.java  |  9 +++--
 .../agent/metrics/api/util/ReflectiveUtil.java     | 47 ++++++++--------------
 .../metrics/prometheus/util/ReflectiveUtil.java    | 45 ++++++++-------------
 .../jaeger/advice/JDBCExecutorCallbackAdvice.java  |  1 +
 .../advice/CommandExecutorTaskAdviceTest.java      |  7 ++--
 .../advice/JDBCExecutorCallbackAdviceTest.java     |  8 ++--
 .../jaeger/advice/SQLParserEngineAdviceTest.java   |  8 ++--
 .../tracing/jaeger/collector/JaegerCollector.java  |  6 ---
 .../advice/JDBCExecutorCallbackAdvice.java         |  8 ++--
 .../plugin/tracing/MockDataSourceMetaData.java     |  2 +-
 .../zipkin/advice/JDBCExecutorCallbackAdvice.java  |  3 +-
 .../advice/CommandExecutorTaskAdviceTest.java      |  6 +--
 .../advice/JDBCExecutorCallbackAdviceTest.java     |  6 +--
 .../zipkin/advice/SQLParserEngineAdviceTest.java   |  6 +--
 20 files changed, 86 insertions(+), 129 deletions(-)

diff --git a/shardingsphere-agent/shardingsphere-agent-api/src/main/java/org/apache/shardingsphere/agent/api/point/PluginInterceptorPoint.java b/shardingsphere-agent/shardingsphere-agent-api/src/main/java/org/apache/shardingsphere/agent/api/point/PluginInterceptorPoint.java
index dd19247..47161f7 100644
--- a/shardingsphere-agent/shardingsphere-agent-api/src/main/java/org/apache/shardingsphere/agent/api/point/PluginInterceptorPoint.java
+++ b/shardingsphere-agent/shardingsphere-agent-api/src/main/java/org/apache/shardingsphere/agent/api/point/PluginInterceptorPoint.java
@@ -136,7 +136,7 @@ public final class PluginInterceptorPoint {
             
             private boolean overrideArgs;
             
-            private ElementMatcher<? super MethodDescription> matcher;
+            private final ElementMatcher<? super MethodDescription> matcher;
             
             private InstanceMethodPointBuilder(final Builder builder, final ElementMatcher<? super MethodDescription> matcher) {
                 this.builder = builder;
@@ -187,7 +187,7 @@ public final class PluginInterceptorPoint {
             
             private boolean overrideArgs;
             
-            private ElementMatcher<? super MethodDescription> matcher;
+            private final ElementMatcher<? super MethodDescription> matcher;
             
             private StaticMethodPointBuilder(final Builder builder, final ElementMatcher<? super MethodDescription> matcher) {
                 this.builder = builder;
@@ -234,10 +234,10 @@ public final class PluginInterceptorPoint {
             
             private final Builder builder;
             
+            private final ElementMatcher<? super MethodDescription> matcher;
+
             private String classNameOfAdvice;
             
-            private ElementMatcher<? super MethodDescription> matcher;
-            
             private ConstructorPointBuilder(final Builder builder, final ElementMatcher<? super MethodDescription> matcher) {
                 this.builder = builder;
                 this.matcher = ElementMatchers.isConstructor().and(matcher);
diff --git a/shardingsphere-agent/shardingsphere-agent-api/src/main/java/org/apache/shardingsphere/agent/spi/definition/AbstractPluginDefinitionService.java b/shardingsphere-agent/shardingsphere-agent-api/src/main/java/org/apache/shardingsphere/agent/spi/definition/AbstractPluginDefinitionService.java
index dfd3637..6c8c87a 100644
--- a/shardingsphere-agent/shardingsphere-agent-api/src/main/java/org/apache/shardingsphere/agent/spi/definition/AbstractPluginDefinitionService.java
+++ b/shardingsphere-agent/shardingsphere-agent-api/src/main/java/org/apache/shardingsphere/agent/spi/definition/AbstractPluginDefinitionService.java
@@ -18,8 +18,9 @@
 package org.apache.shardingsphere.agent.spi.definition;
 
 import com.google.common.collect.Maps;
-import java.util.Collection;
 import org.apache.shardingsphere.agent.api.point.PluginInterceptorPoint;
+
+import java.util.Collection;
 import java.util.Map;
 import java.util.stream.Collectors;
 
diff --git a/shardingsphere-agent/shardingsphere-agent-core/src/test/java/org/apache/shardingsphere/agent/core/plugin/interceptor/InstanceMethodAroundInterceptorTest.java b/shardingsphere-agent/shardingsphere-agent-core/src/test/java/org/apache/shardingsphere/agent/core/plugin/interceptor/InstanceMethodAroundInterceptorTest.java
index 7fd9854..37c3033 100644
--- a/shardingsphere-agent/shardingsphere-agent-core/src/test/java/org/apache/shardingsphere/agent/core/plugin/interceptor/InstanceMethodAroundInterceptorTest.java
+++ b/shardingsphere-agent/shardingsphere-agent-core/src/test/java/org/apache/shardingsphere/agent/core/plugin/interceptor/InstanceMethodAroundInterceptorTest.java
@@ -118,4 +118,7 @@ public final class InstanceMethodAroundInterceptorTest {
     public static void destroy() {
         byteBuddyAgent.reset(ByteBuddyAgent.getInstrumentation(), AgentBuilder.RedefinitionStrategy.RETRANSFORMATION);
     }
+    
+    private static class MockClassLoader extends ClassLoader {
+    }
 }
diff --git a/shardingsphere-agent/shardingsphere-agent-core/src/test/java/org/apache/shardingsphere/agent/core/plugin/interceptor/MockClassLoader.java b/shardingsphere-agent/shardingsphere-agent-core/src/test/java/org/apache/shardingsphere/agent/core/plugin/interceptor/MockClassLoader.java
deleted file mode 100644
index 4868950..0000000
--- a/shardingsphere-agent/shardingsphere-agent-core/src/test/java/org/apache/shardingsphere/agent/core/plugin/interceptor/MockClassLoader.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (final ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, final Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.agent.core.plugin.interceptor;
-
-public final class MockClassLoader extends ClassLoader {
-}
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/advice/ChannelHandlerAdviceTest.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/advice/ChannelHandlerAdviceTest.java
index fc36c18..59b290f 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/advice/ChannelHandlerAdviceTest.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/advice/ChannelHandlerAdviceTest.java
@@ -17,10 +17,6 @@
 
 package org.apache.shardingsphere.agent.metrics.api.advice;
 
-import java.lang.reflect.Method;
-import java.util.Map;
-import java.util.concurrent.atomic.AtomicInteger;
-import java.util.concurrent.atomic.DoubleAdder;
 import org.apache.shardingsphere.agent.api.result.MethodInvocationResult;
 import org.apache.shardingsphere.agent.metrics.api.constant.MethodNameConstant;
 import org.apache.shardingsphere.agent.metrics.api.util.ReflectiveUtil;
@@ -29,6 +25,11 @@ import org.junit.runner.RunWith;
 import org.mockito.Mock;
 import org.mockito.junit.MockitoJUnitRunner;
 
+import java.lang.reflect.Method;
+import java.util.Map;
+import java.util.concurrent.atomic.AtomicInteger;
+import java.util.concurrent.atomic.DoubleAdder;
+
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertThat;
@@ -37,7 +38,7 @@ import static org.mockito.Mockito.when;
 @RunWith(MockitoJUnitRunner.class)
 public final class ChannelHandlerAdviceTest extends MetricsAdviceBaseTest {
     
-    private ChannelHandlerAdvice channelHandlerAdvice = new ChannelHandlerAdvice();
+    private final ChannelHandlerAdvice channelHandlerAdvice = new ChannelHandlerAdvice();
     
     @Mock
     private Method channelRead;
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/advice/CommandExecutorTaskAdviceTest.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/advice/CommandExecutorTaskAdviceTest.java
index bd71b12..c4dedf7 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/advice/CommandExecutorTaskAdviceTest.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/advice/CommandExecutorTaskAdviceTest.java
@@ -17,19 +17,20 @@
 
 package org.apache.shardingsphere.agent.metrics.api.advice;
 
-import java.util.Map;
-import java.util.concurrent.atomic.LongAdder;
 import org.apache.shardingsphere.agent.api.result.MethodInvocationResult;
 import org.apache.shardingsphere.agent.metrics.api.util.ReflectiveUtil;
 import org.junit.Test;
 
+import java.util.Map;
+import java.util.concurrent.atomic.LongAdder;
+
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertThat;
 
 public final class CommandExecutorTaskAdviceTest extends MetricsAdviceBaseTest {
     
-    private CommandExecutorTaskAdvice commandExecutorTaskAdvice = new CommandExecutorTaskAdvice();
+    private final CommandExecutorTaskAdvice commandExecutorTaskAdvice = new CommandExecutorTaskAdvice();
     
     @Test
     @SuppressWarnings("unchecked")
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/advice/TransactionAdviceTest.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/advice/TransactionAdviceTest.java
index 011c61b..b0f200f 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/advice/TransactionAdviceTest.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/advice/TransactionAdviceTest.java
@@ -17,9 +17,6 @@
 
 package org.apache.shardingsphere.agent.metrics.api.advice;
 
-import java.lang.reflect.Method;
-import java.util.Map;
-import java.util.concurrent.atomic.DoubleAdder;
 import org.apache.shardingsphere.agent.api.result.MethodInvocationResult;
 import org.apache.shardingsphere.agent.metrics.api.constant.MethodNameConstant;
 import org.apache.shardingsphere.agent.metrics.api.util.ReflectiveUtil;
@@ -28,6 +25,10 @@ import org.junit.runner.RunWith;
 import org.mockito.Mock;
 import org.mockito.junit.MockitoJUnitRunner;
 
+import java.lang.reflect.Method;
+import java.util.Map;
+import java.util.concurrent.atomic.DoubleAdder;
+
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertThat;
@@ -36,7 +37,7 @@ import static org.mockito.Mockito.when;
 @RunWith(MockitoJUnitRunner.class)
 public final class TransactionAdviceTest extends MetricsAdviceBaseTest {
     
-    private TransactionAdvice transactionAdvice = new TransactionAdvice();
+    private final TransactionAdvice transactionAdvice = new TransactionAdvice();
     
     @Mock
     private Method commit;
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/util/ReflectiveUtil.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/util/ReflectiveUtil.java
index 6327373..7c34d2b 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/util/ReflectiveUtil.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-api/src/test/java/org/apache/shardingsphere/agent/metrics/api/util/ReflectiveUtil.java
@@ -17,12 +17,13 @@
 
 package org.apache.shardingsphere.agent.metrics.api.util;
 
-import java.lang.reflect.Field;
-import java.lang.reflect.Modifier;
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 import lombok.SneakyThrows;
 
+import java.lang.reflect.Field;
+import java.lang.reflect.Modifier;
+
 /**
  * Reflective utility.
  */
@@ -46,26 +47,7 @@ public final class ReflectiveUtil {
             }
         }
     }
-    
-    /**
-     * Get field.
-     *
-     * @param clazz clazz
-     * @param fieldName field name
-     * @return field
-     */
-    public static Field getField(final Class<?> clazz, final String fieldName) {
-        Field[] fields = clazz.getDeclaredFields();
-        if (fields.length != 0) {
-            for (Field each : fields) {
-                if (fieldName.equals(each.getName())) {
-                    return each;
-                }
-            }
-        }
-        return null;
-    }
-    
+
     /**
      * Get field value object.
      *
@@ -77,14 +59,7 @@ public final class ReflectiveUtil {
         return getFieldValue(object, getField(object.getClass(), fieldName));
     }
     
-    /**
-     * Get field value.
-     *
-     * @param object  object
-     * @param field field
-     * @return field value
-     */
-    public static Object getFieldValue(final Object object, final Field field) {
+    private static Object getFieldValue(final Object object, final Field field) {
         if (null == object || null == field) {
             return null;
         }
@@ -96,4 +71,16 @@ public final class ReflectiveUtil {
         }
         return result;
     }
+
+    private static Field getField(final Class<?> clazz, final String fieldName) {
+        Field[] fields = clazz.getDeclaredFields();
+        if (fields.length != 0) {
+            for (Field each : fields) {
+                if (fieldName.equals(each.getName())) {
+                    return each;
+                }
+            }
+        }
+        return null;
+    }
 }
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/util/ReflectiveUtil.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/util/ReflectiveUtil.java
index de1e665..200a0e1 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/util/ReflectiveUtil.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-metrics/shardingsphere-agent-metrics-prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/util/ReflectiveUtil.java
@@ -17,35 +17,17 @@
 
 package org.apache.shardingsphere.agent.metrics.prometheus.util;
 
-import java.lang.reflect.Field;
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 
+import java.lang.reflect.Field;
+
 /**
  * Reflective utility.
  */
 @NoArgsConstructor(access = AccessLevel.PRIVATE)
 public final class ReflectiveUtil {
-    
-    /**
-     * Get field.
-     *
-     * @param clazz clazz
-     * @param fieldName field name
-     * @return field
-     */
-    public static Field getField(final Class<?> clazz, final String fieldName) {
-        Field[] fields = clazz.getDeclaredFields();
-        if (fields.length != 0) {
-            for (Field each : fields) {
-                if (fieldName.equals(each.getName())) {
-                    return each;
-                }
-            }
-        }
-        return null;
-    }
-    
+
     /**
      * Get field value object.
      *
@@ -57,14 +39,7 @@ public final class ReflectiveUtil {
         return getFieldValue(object, getField(object.getClass(), fieldName));
     }
     
-    /**
-     * Get field value.
-     *
-     * @param object  object
-     * @param field field
-     * @return field value
-     */
-    public static Object getFieldValue(final Object object, final Field field) {
+    private static Object getFieldValue(final Object object, final Field field) {
         if (null == object || null == field) {
             return null;
         }
@@ -76,4 +51,16 @@ public final class ReflectiveUtil {
         }
         return result;
     }
+
+    private static Field getField(final Class<?> clazz, final String fieldName) {
+        Field[] fields = clazz.getDeclaredFields();
+        if (fields.length != 0) {
+            for (Field each : fields) {
+                if (fieldName.equals(each.getName())) {
+                    return each;
+                }
+            }
+        }
+        return null;
+    }
 }
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/JDBCExecutorCallbackAdvice.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/JDBCExecutorCallbackAdvice.java
index f83db92..5f3f52f 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/JDBCExecutorCallbackAdvice.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/JDBCExecutorCallbackAdvice.java
@@ -45,6 +45,7 @@ public final class JDBCExecutorCallbackAdvice implements InstanceMethodAroundAdv
     
     @Override
     @SneakyThrows
+    @SuppressWarnings("unchecked")
     public void beforeMethod(final AdviceTargetObject target, final Method method, final Object[] args, final MethodInvocationResult result) {
         Span root = (Span) ((Map<String, Object>) args[2]).get(JaegerConstants.ROOT_SPAN);
         Tracer.SpanBuilder builder = GlobalTracer.get().buildSpan(OPERATION_NAME);
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/CommandExecutorTaskAdviceTest.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/CommandExecutorTaskAdviceTest.java
index eddb2e5..42c8396 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/CommandExecutorTaskAdviceTest.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/CommandExecutorTaskAdviceTest.java
@@ -40,7 +40,7 @@ import static org.junit.Assert.assertThat;
 public final class CommandExecutorTaskAdviceTest extends AbstractCommandExecutorTaskAdviceTest {
     
     @ClassRule
-    public static JaegerCollector collector = new JaegerCollector();
+    public static final JaegerCollector COLLECTOR = new JaegerCollector();
     
     private static final CommandExecutorTaskAdvice ADVICE = new CommandExecutorTaskAdvice();
     
@@ -56,7 +56,7 @@ public final class CommandExecutorTaskAdviceTest extends AbstractCommandExecutor
     public void assertMethod() {
         ADVICE.beforeMethod(getTargetObject(), null, new Object[]{}, new MethodInvocationResult());
         ADVICE.afterMethod(getTargetObject(), null, new Object[]{}, new MethodInvocationResult());
-        List<MockSpan> spans = collector.finishedSpans();
+        List<MockSpan> spans = COLLECTOR.finishedSpans();
         assertThat(spans.size(), is(1));
         assertThat(spans.get(0).logEntries().size(), is(0));
         assertThat(spans.get(0).operationName(), is("/ShardingSphere/rootInvoke/"));
@@ -68,7 +68,7 @@ public final class CommandExecutorTaskAdviceTest extends AbstractCommandExecutor
         ADVICE.beforeMethod(getTargetObject(), null, new Object[]{}, new MethodInvocationResult());
         ADVICE.onThrowing(getTargetObject(), null, new Object[]{}, new IOException());
         ADVICE.afterMethod(getTargetObject(), null, new Object[]{}, new MethodInvocationResult());
-        List<MockSpan> spans = collector.finishedSpans();
+        List<MockSpan> spans = COLLECTOR.finishedSpans();
         Assert.assertEquals(1, spans.size());
         MockSpan span = spans.get(0);
         assertThat(span.tags().get("error"), is(true));
@@ -83,5 +83,4 @@ public final class CommandExecutorTaskAdviceTest extends AbstractCommandExecutor
         map.put(JaegerConstants.ErrorLogTagKeys.EVENT_ERROR_TYPE, true);
         assertThat(spans.get(0).tags(), is(map));
     }
-    
 }
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/JDBCExecutorCallbackAdviceTest.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/JDBCExecutorCallbackAdviceTest.java
index b887f4b..67eb3f6 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/JDBCExecutorCallbackAdviceTest.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/JDBCExecutorCallbackAdviceTest.java
@@ -36,8 +36,8 @@ import static org.junit.Assert.assertThat;
 public final class JDBCExecutorCallbackAdviceTest extends AbstractJDBCExecutorCallbackAdviceTest {
     
     @ClassRule
-    public static JaegerCollector collector = new JaegerCollector();
-    
+    public static final JaegerCollector COLLECTOR = new JaegerCollector();
+
     private static final JDBCExecutorCallbackAdvice ADVICE = new JDBCExecutorCallbackAdvice();
     
     @Before
@@ -49,7 +49,7 @@ public final class JDBCExecutorCallbackAdviceTest extends AbstractJDBCExecutorCa
     public void assertMethod() {
         ADVICE.beforeMethod(getTargetObject(), null, new Object[]{getExecutionUnit(), false, getExtraMap()}, new MethodInvocationResult());
         ADVICE.afterMethod(getTargetObject(), null, new Object[]{getExecutionUnit(), false, getExtraMap()}, new MethodInvocationResult());
-        List<MockSpan> spans = collector.finishedSpans();
+        List<MockSpan> spans = COLLECTOR.finishedSpans();
         assertThat(spans.size(), is(1));
         MockSpan span = spans.get(0);
         Map<String, Object> tags = span.tags();
@@ -66,7 +66,7 @@ public final class JDBCExecutorCallbackAdviceTest extends AbstractJDBCExecutorCa
         ADVICE.beforeMethod(getTargetObject(), null, new Object[]{getExecutionUnit(), false, getExtraMap()}, new MethodInvocationResult());
         ADVICE.onThrowing(getTargetObject(), null, new Object[]{getExecutionUnit(), false, getExtraMap()}, new IOException());
         ADVICE.afterMethod(getTargetObject(), null, new Object[]{getExecutionUnit(), false, getExtraMap()}, new MethodInvocationResult());
-        List<MockSpan> spans = collector.finishedSpans();
+        List<MockSpan> spans = COLLECTOR.finishedSpans();
         assertThat(spans.size(), is(1));
         MockSpan span = spans.get(0);
         List<MockSpan.LogEntry> entries = span.logEntries();
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/SQLParserEngineAdviceTest.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/SQLParserEngineAdviceTest.java
index e32035f..89c74be 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/SQLParserEngineAdviceTest.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/advice/SQLParserEngineAdviceTest.java
@@ -35,15 +35,15 @@ import static org.junit.Assert.assertThat;
 public final class SQLParserEngineAdviceTest extends AbstractSQLParserEngineAdviceTest {
     
     @ClassRule
-    public static JaegerCollector collector = new JaegerCollector();
-    
+    public static final JaegerCollector COLLECTOR = new JaegerCollector();
+
     private static final SQLParserEngineAdvice ADVICE = new SQLParserEngineAdvice();
     
     @Test
     public void assertMethod() {
         ADVICE.beforeMethod(getTargetObject(), null, new Object[]{"select 1"}, new MethodInvocationResult());
         ADVICE.afterMethod(getTargetObject(), null, new Object[]{}, new MethodInvocationResult());
-        List<MockSpan> spans = collector.finishedSpans();
+        List<MockSpan> spans = COLLECTOR.finishedSpans();
         assertThat(spans.size(), is(1));
         assertThat(spans.get(0).logEntries().size(), is(0));
         assertThat(spans.get(0).operationName(), is("/ShardingSphere/parseSQL/"));
@@ -54,7 +54,7 @@ public final class SQLParserEngineAdviceTest extends AbstractSQLParserEngineAdvi
         ADVICE.beforeMethod(getTargetObject(), null, new Object[]{"select 1"}, new MethodInvocationResult());
         ADVICE.onThrowing(getTargetObject(), null, new Object[]{}, new IOException());
         ADVICE.afterMethod(getTargetObject(), null, new Object[]{}, new MethodInvocationResult());
-        List<MockSpan> spans = collector.finishedSpans();
+        List<MockSpan> spans = COLLECTOR.finishedSpans();
         assertThat(spans.size(), is(1));
         MockSpan span = spans.get(0);
         assertThat(span.tags().get("error"), is(true));
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/collector/JaegerCollector.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/collector/JaegerCollector.java
index 814b8b4..4011c81 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/collector/JaegerCollector.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/collector/JaegerCollector.java
@@ -53,10 +53,4 @@ public class JaegerCollector extends ExternalResource implements CollectorRule {
     public void cleanup() {
         tracer.reset();
     }
-    
-    @Override
-    @SneakyThrows
-    protected void after() {
-        super.after();
-    }
 }
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/advice/JDBCExecutorCallbackAdvice.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/advice/JDBCExecutorCallbackAdvice.java
index 492a8a0..a523936 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/advice/JDBCExecutorCallbackAdvice.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/advice/JDBCExecutorCallbackAdvice.java
@@ -22,16 +22,17 @@ import io.opentracing.Span;
 import io.opentracing.Tracer;
 import io.opentracing.tag.Tags;
 import io.opentracing.util.GlobalTracer;
-import java.lang.reflect.Method;
-import java.util.Map;
-import org.apache.shardingsphere.agent.api.advice.InstanceMethodAroundAdvice;
 import org.apache.shardingsphere.agent.api.advice.AdviceTargetObject;
+import org.apache.shardingsphere.agent.api.advice.InstanceMethodAroundAdvice;
 import org.apache.shardingsphere.agent.api.result.MethodInvocationResult;
 import org.apache.shardingsphere.agent.plugin.tracing.opentracing.constant.ShardingSphereTags;
 import org.apache.shardingsphere.agent.plugin.tracing.opentracing.span.OpenTracingErrorSpan;
 import org.apache.shardingsphere.infra.executor.sql.context.ExecutionUnit;
 import org.apache.shardingsphere.infra.executor.sql.execute.engine.driver.jdbc.JDBCExecutionUnit;
 
+import java.lang.reflect.Method;
+import java.util.Map;
+
 /**
  * JDBC executor callback advice.
  */
@@ -40,6 +41,7 @@ public final class JDBCExecutorCallbackAdvice implements InstanceMethodAroundAdv
     private static final String OPERATION_NAME = "/ShardingSphere/executeSQL/";
     
     @Override
+    @SuppressWarnings("unchecked")
     public void beforeMethod(final AdviceTargetObject target, final Method method, final Object[] args, final MethodInvocationResult result) {
         Span root = (Span) ((Map<String, Object>) args[2]).get("ot_root_span_");
         Tracer.SpanBuilder builder = GlobalTracer.get().buildSpan(OPERATION_NAME);
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-test/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/MockDataSourceMetaData.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-test/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/MockDataSourceMetaData.java
index eecb7b3..a6d805f 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-test/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/MockDataSourceMetaData.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-test/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/MockDataSourceMetaData.java
@@ -33,7 +33,7 @@ public final class MockDataSourceMetaData implements DataSourceMetaData {
     
     @Override
     public String getCatalog() {
-        return null;
+        return "";
     }
     
     @Override
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/JDBCExecutorCallbackAdvice.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/JDBCExecutorCallbackAdvice.java
index f0ae4cd..c70780b 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/JDBCExecutorCallbackAdvice.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/JDBCExecutorCallbackAdvice.java
@@ -39,8 +39,9 @@ public final class JDBCExecutorCallbackAdvice implements InstanceMethodAroundAdv
     
     private static final String OPERATION_NAME = "/ShardingSphere/executeSQL/";
     
-    @SneakyThrows
     @Override
+    @SneakyThrows
+    @SuppressWarnings("unchecked")
     public void beforeMethod(final AdviceTargetObject target, final Method method, final Object[] args, final MethodInvocationResult result) {
         final Span root = (Span) ((Map<String, Object>) args[2]).get(ZipkinConstants.ROOT_SPAN);
         if ((boolean) args[1]) {
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/CommandExecutorTaskAdviceTest.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/CommandExecutorTaskAdviceTest.java
index 653bdd5..2c0b20b 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/CommandExecutorTaskAdviceTest.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/CommandExecutorTaskAdviceTest.java
@@ -36,7 +36,7 @@ import static org.junit.Assert.assertThat;
 public final class CommandExecutorTaskAdviceTest extends AbstractCommandExecutorTaskAdviceTest {
     
     @ClassRule
-    public static ZipkinCollector collector = new ZipkinCollector();
+    public static final ZipkinCollector COLLECTOR = new ZipkinCollector();
     
     private CommandExecutorTaskAdvice advice;
     
@@ -49,7 +49,7 @@ public final class CommandExecutorTaskAdviceTest extends AbstractCommandExecutor
     public void assertMethod() {
         advice.beforeMethod(getTargetObject(), null, new Object[]{}, new MethodInvocationResult());
         advice.afterMethod(getTargetObject(), null, new Object[]{}, new MethodInvocationResult());
-        Span span = collector.pop();
+        Span span = COLLECTOR.pop();
         assertNotNull(span);
         Map<String, String> tags = span.tags();
         assertThat(tags.get(ZipkinConstants.Tags.DB_TYPE), is(ZipkinConstants.DB_TYPE_VALUE));
@@ -63,7 +63,7 @@ public final class CommandExecutorTaskAdviceTest extends AbstractCommandExecutor
         advice.beforeMethod(getTargetObject(), null, new Object[]{}, new MethodInvocationResult());
         advice.onThrowing(getTargetObject(), null, new Object[]{}, new IOException());
         advice.afterMethod(getTargetObject(), null, new Object[]{}, new MethodInvocationResult());
-        Span span = collector.pop();
+        Span span = COLLECTOR.pop();
         assertNotNull(span);
         Map<String, String> tags = span.tags();
         assertThat(tags.get("error"), is("IOException"));
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/JDBCExecutorCallbackAdviceTest.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/JDBCExecutorCallbackAdviceTest.java
index 023914b..c788f72 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/JDBCExecutorCallbackAdviceTest.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/JDBCExecutorCallbackAdviceTest.java
@@ -37,7 +37,7 @@ import static org.junit.Assert.assertThat;
 public final class JDBCExecutorCallbackAdviceTest extends AbstractJDBCExecutorCallbackAdviceTest {
     
     @ClassRule
-    public static ZipkinCollector collector = new ZipkinCollector();
+    public static final ZipkinCollector COLLECTOR = new ZipkinCollector();
     
     private JDBCExecutorCallbackAdvice advice;
     
@@ -51,7 +51,7 @@ public final class JDBCExecutorCallbackAdviceTest extends AbstractJDBCExecutorCa
     public void assertMethod() {
         advice.beforeMethod(getTargetObject(), null, new Object[]{getExecutionUnit(), false, getExtraMap()}, new MethodInvocationResult());
         advice.afterMethod(getTargetObject(), null, new Object[]{getExecutionUnit(), false, getExtraMap()}, new MethodInvocationResult());
-        Span span = collector.pop();
+        Span span = COLLECTOR.pop();
         assertNotNull(span);
         assertThat(span.name(), is("/ShardingSphere/executeSQL/".toLowerCase()));
         Map<String, String> tags = span.tags();
@@ -69,7 +69,7 @@ public final class JDBCExecutorCallbackAdviceTest extends AbstractJDBCExecutorCa
         advice.beforeMethod(getTargetObject(), null, new Object[]{getExecutionUnit(), false, getExtraMap()}, new MethodInvocationResult());
         advice.onThrowing(getTargetObject(), null, new Object[]{getExecutionUnit(), false, getExtraMap()}, new IOException());
         advice.afterMethod(getTargetObject(), null, new Object[]{getExecutionUnit(), false, getExtraMap()}, new MethodInvocationResult());
-        Span span = collector.pop();
+        Span span = COLLECTOR.pop();
         assertNotNull(span);
         assertThat(span.name(), is("/ShardingSphere/executeSQL/".toLowerCase()));
         Map<String, String> tags = span.tags();
diff --git a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/SQLParserEngineAdviceTest.java b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/SQLParserEngineAdviceTest.java
index 3629669..11f50bc 100644
--- a/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/SQLParserEngineAdviceTest.java
+++ b/shardingsphere-agent/shardingsphere-agent-plugins/shardingsphere-agent-plugin-tracing/shardingsphere-agent-tracing-zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/advice/SQLParserEngineAdviceTest.java
@@ -39,7 +39,7 @@ import static org.junit.Assert.assertThat;
 public final class SQLParserEngineAdviceTest extends AbstractSQLParserEngineAdviceTest {
     
     @ClassRule
-    public static ZipkinCollector collector = new ZipkinCollector();
+    public static final ZipkinCollector COLLECTOR = new ZipkinCollector();
     
     private static final String SQL_STMT = "select 1";
     
@@ -60,7 +60,7 @@ public final class SQLParserEngineAdviceTest extends AbstractSQLParserEngineAdvi
         advice.beforeMethod(getTargetObject(), null, new Object[]{SQL_STMT, true}, new MethodInvocationResult());
         advice.afterMethod(getTargetObject(), null, new Object[]{SQL_STMT, true}, new MethodInvocationResult());
         parentSpan.finish();
-        zipkin2.Span span = collector.pop();
+        zipkin2.Span span = COLLECTOR.pop();
         assertNotNull(span);
         assertNotNull(span.parentId());
         Map<String, String> tags = span.tags();
@@ -75,7 +75,7 @@ public final class SQLParserEngineAdviceTest extends AbstractSQLParserEngineAdvi
         advice.onThrowing(getTargetObject(), null, new Object[]{SQL_STMT, true}, new IOException());
         advice.afterMethod(getTargetObject(), null, new Object[]{SQL_STMT, true}, new MethodInvocationResult());
         parentSpan.finish();
-        zipkin2.Span span = collector.pop();
+        zipkin2.Span span = COLLECTOR.pop();
         assertNotNull(span);
         assertNotNull(span.parentId());
         Map<String, String> tags = span.tags();