This is an automated email from the ASF dual-hosted git repository.
duanzhengqiang 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 b90edc41643 Rename PluginDefinitionService to
PointcutDefinitionService (#22847)
b90edc41643 is described below
commit b90edc416431b8906e6da91cbcc8b644ff84b1df
Author: Liang Zhang <[email protected]>
AuthorDate: Tue Dec 13 16:26:12 2022 +0800
Rename PluginDefinitionService to PointcutDefinitionService (#22847)
---
...Service.java => PointcutDefinitionService.java} | 20 ++++--
...e.java => PointcutDefinitionServiceEngine.java} | 29 ++++----
.../agent/core/plugin/AgentPluginLoader.java | 10 +--
...a => BaseLoggingPointcutDefinitionService.java} | 32 +++++----
...dingsphere.agent.spi.PointcutDefinitionService} | 2 +-
.../PrometheusPluginDefinitionService.java | 67 -------------------
.../PrometheusPointcutDefinitionService.java | 78 ++++++++++++++++++++++
...dingsphere.agent.spi.PointcutDefinitionService} | 2 +-
...> PrometheusPointcutDefinitionServiceTest.java} | 9 +--
.../tracing/core/advice/TracingAdviceEngine.java | 28 +++++---
.../core/advice/adviser/TracingAdviser.java | 4 +-
.../adviser/impl/CommandExecutorTaskAdviser.java | 12 ++--
.../adviser/impl/JDBCExecutorCallbackAdviser.java | 14 ++--
.../adviser/impl/SQLParserEngineAdviser.java | 12 ++--
...e.java => JaegerPointcutDefinitionService.java} | 19 +++---
...dingsphere.agent.spi.PointcutDefinitionService} | 2 +-
...va => JaegerPointcutDefinitionServiceTest.java} | 9 +--
...TelemetryTracingPointcutDefinitionService.java} | 19 +++---
...dingsphere.agent.spi.PointcutDefinitionService} | 2 +-
...metryTracingPointcutDefinitionServiceTest.java} | 9 +--
...a => OpenTracingPointcutDefinitionService.java} | 19 +++---
...dingsphere.agent.spi.PointcutDefinitionService} | 2 +-
... OpenTracingPointcutDefinitionServiceTest.java} | 9 +--
...e.java => ZipkinPointcutDefinitionService.java} | 19 +++---
...dingsphere.agent.spi.PointcutDefinitionService} | 2 +-
...va => ZipkinPointcutDefinitionServiceTest.java} | 9 +--
docs/document/content/dev-manual/agent.cn.md | 12 ++--
docs/document/content/dev-manual/agent.en.md | 12 ++--
28 files changed, 251 insertions(+), 212 deletions(-)
diff --git
a/agent/api/src/main/java/org/apache/shardingsphere/agent/spi/PluginDefinitionService.java
b/agent/api/src/main/java/org/apache/shardingsphere/agent/spi/PointcutDefinitionService.java
similarity index 68%
rename from
agent/api/src/main/java/org/apache/shardingsphere/agent/spi/PluginDefinitionService.java
rename to
agent/api/src/main/java/org/apache/shardingsphere/agent/spi/PointcutDefinitionService.java
index 9f5acf95f1b..2fe311644d5 100644
---
a/agent/api/src/main/java/org/apache/shardingsphere/agent/spi/PluginDefinitionService.java
+++
b/agent/api/src/main/java/org/apache/shardingsphere/agent/spi/PointcutDefinitionService.java
@@ -17,18 +17,26 @@
package org.apache.shardingsphere.agent.spi;
+import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
+
+import java.util.Collection;
+
/**
- * Plugin definition service.
+ * Pointcut definition service.
*/
-public interface PluginDefinitionService extends AgentSPI {
+public interface PointcutDefinitionService extends AgentSPI {
/**
- * Install Proxy Interceptors.
+ * Get proxy pointcuts.
+ *
+ * @return proxy pointcuts
*/
- void installProxyInterceptors();
+ Collection<ClassPointcuts> getProxyPointcuts();
/**
- * Install JDBC Interceptors.
+ * Get JDBC pointcuts.
+ *
+ * @return JDBC pointcuts
*/
- void installJdbcInterceptors();
+ Collection<ClassPointcuts> getJDBCPointcuts();
}
diff --git
a/agent/core/src/main/java/org/apache/shardingsphere/agent/core/definition/PluginDefinitionServiceEngine.java
b/agent/core/src/main/java/org/apache/shardingsphere/agent/core/definition/PointcutDefinitionServiceEngine.java
similarity index 56%
rename from
agent/core/src/main/java/org/apache/shardingsphere/agent/core/definition/PluginDefinitionServiceEngine.java
rename to
agent/core/src/main/java/org/apache/shardingsphere/agent/core/definition/PointcutDefinitionServiceEngine.java
index 01b60990024..5eb46e1742b 100644
---
a/agent/core/src/main/java/org/apache/shardingsphere/agent/core/definition/PluginDefinitionServiceEngine.java
+++
b/agent/core/src/main/java/org/apache/shardingsphere/agent/core/definition/PointcutDefinitionServiceEngine.java
@@ -19,40 +19,35 @@ package org.apache.shardingsphere.agent.core.definition;
import lombok.RequiredArgsConstructor;
import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
-import org.apache.shardingsphere.agent.spi.PluginDefinitionService;
+import org.apache.shardingsphere.agent.spi.PointcutDefinitionService;
import java.util.Collection;
/**
- * Plugin definition service engine.
+ * Pointcut definition service engine.
*/
@RequiredArgsConstructor
-public final class PluginDefinitionServiceEngine {
+public final class PointcutDefinitionServiceEngine {
- private final PluginDefinitionService pluginDefinitionService;
+ private final PointcutDefinitionService pointcutDefinitionService;
/**
- * Get class pointcuts.
+ * Get pointcuts.
*
* @param targetClassName target class name
- * @return class pointcuts
+ * @return pointcuts
*/
- public ClassPointcuts getClassPointcuts(final String targetClassName) {
- return
ClassPointcutsRegistryFactory.getRegistry(pluginDefinitionService.getType()).getClassPointcuts(targetClassName);
+ public ClassPointcuts getAllPointcuts(final String targetClassName) {
+ return
ClassPointcutsRegistryFactory.getRegistry(pointcutDefinitionService.getType()).getClassPointcuts(targetClassName);
}
/**
- * Install plugins.
+ * Get all pointcuts.
*
* @param isEnhancedForProxy is enhanced for proxy
- * @return class pointcuts
+ * @return all pointcuts
*/
- public Collection<ClassPointcuts> install(final boolean
isEnhancedForProxy) {
- if (isEnhancedForProxy) {
- pluginDefinitionService.installProxyInterceptors();
- } else {
- pluginDefinitionService.installJdbcInterceptors();
- }
- return
ClassPointcutsRegistryFactory.getRegistry(pluginDefinitionService.getType()).getAllClassPointcuts();
+ public Collection<ClassPointcuts> getAllPointcuts(final boolean
isEnhancedForProxy) {
+ return isEnhancedForProxy ?
pointcutDefinitionService.getProxyPointcuts() :
pointcutDefinitionService.getJDBCPointcuts();
}
}
diff --git
a/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/AgentPluginLoader.java
b/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/AgentPluginLoader.java
index 7ecdd91e65c..a9fc20f346d 100644
---
a/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/AgentPluginLoader.java
+++
b/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/AgentPluginLoader.java
@@ -27,11 +27,11 @@ import
org.apache.shardingsphere.agent.config.AgentConfiguration;
import org.apache.shardingsphere.agent.core.common.AgentClassLoader;
import org.apache.shardingsphere.agent.core.config.path.AgentPathBuilder;
import
org.apache.shardingsphere.agent.core.config.registry.AgentConfigurationRegistry;
-import
org.apache.shardingsphere.agent.core.definition.PluginDefinitionServiceEngine;
+import
org.apache.shardingsphere.agent.core.definition.PointcutDefinitionServiceEngine;
import org.apache.shardingsphere.agent.core.logging.LoggerFactory;
import org.apache.shardingsphere.agent.core.spi.PluginServiceLoader;
import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
-import org.apache.shardingsphere.agent.spi.PluginDefinitionService;
+import org.apache.shardingsphere.agent.spi.PointcutDefinitionService;
import java.io.File;
import java.io.IOException;
@@ -99,14 +99,14 @@ public final class AgentPluginLoader implements
PluginLoader {
}
private void loadPluginDefinitionServices(final Collection<String>
pluginNames, final Map<String, ClassPointcuts> pointMap, final ClassLoader
classLoader) {
- PluginServiceLoader.newServiceInstances(PluginDefinitionService.class,
classLoader)
+
PluginServiceLoader.newServiceInstances(PointcutDefinitionService.class,
classLoader)
.stream()
.filter(each -> pluginNames.contains(each.getType()))
.forEach(each -> buildPluginInterceptorPointMap(each,
pointMap));
}
- private void buildPluginInterceptorPointMap(final PluginDefinitionService
pluginDefinitionService, final Map<String, ClassPointcuts> pointMap) {
- new
PluginDefinitionServiceEngine(pluginDefinitionService).install(isEnhancedForProxy).forEach(each
-> {
+ private void buildPluginInterceptorPointMap(final
PointcutDefinitionService pointcutDefinitionService, final Map<String,
ClassPointcuts> pointMap) {
+ new
PointcutDefinitionServiceEngine(pointcutDefinitionService).getAllPointcuts(isEnhancedForProxy).forEach(each
-> {
String target = each.getTargetClassName();
if (pointMap.containsKey(target)) {
ClassPointcuts classPointcuts = pointMap.get(target);
diff --git
a/agent/plugins/logging/base/src/main/java/org/apache/shardingsphere/agent/plugin/logging/base/definition/BaseLoggingPluginDefinitionService.java
b/agent/plugins/logging/base/src/main/java/org/apache/shardingsphere/agent/plugin/logging/base/definition/BaseLoggingPointcutDefinitionService.java
similarity index 58%
rename from
agent/plugins/logging/base/src/main/java/org/apache/shardingsphere/agent/plugin/logging/base/definition/BaseLoggingPluginDefinitionService.java
rename to
agent/plugins/logging/base/src/main/java/org/apache/shardingsphere/agent/plugin/logging/base/definition/BaseLoggingPointcutDefinitionService.java
index 30d50f09215..6ff53723df2 100644
---
a/agent/plugins/logging/base/src/main/java/org/apache/shardingsphere/agent/plugin/logging/base/definition/BaseLoggingPluginDefinitionService.java
+++
b/agent/plugins/logging/base/src/main/java/org/apache/shardingsphere/agent/plugin/logging/base/definition/BaseLoggingPointcutDefinitionService.java
@@ -18,15 +18,19 @@
package org.apache.shardingsphere.agent.plugin.logging.base.definition;
import net.bytebuddy.matcher.ElementMatchers;
-import
org.apache.shardingsphere.agent.core.definition.PluginDefinitionServiceEngine;
+import
org.apache.shardingsphere.agent.core.definition.PointcutDefinitionServiceEngine;
import
org.apache.shardingsphere.agent.plugin.logging.base.advice.MetaDataContextsFactoryAdvice;
+import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
import org.apache.shardingsphere.agent.pointcut.StaticMethodPointcut;
-import org.apache.shardingsphere.agent.spi.PluginDefinitionService;
+import org.apache.shardingsphere.agent.spi.PointcutDefinitionService;
+
+import java.util.Collection;
+import java.util.LinkedList;
/**
- * Base logging plugin definition service.
+ * Base logging pointcut definition service.
*/
-public final class BaseLoggingPluginDefinitionService implements
PluginDefinitionService {
+public final class BaseLoggingPointcutDefinitionService implements
PointcutDefinitionService {
private static final String SCHEMA_METADATA_LOADER_CLASS =
"org.apache.shardingsphere.mode.metadata.MetaDataContextsFactory";
@@ -35,19 +39,23 @@ public final class BaseLoggingPluginDefinitionService
implements PluginDefinitio
private static final String SCHEMA_METADATA_LOADER_ADVICE_CLASS =
MetaDataContextsFactoryAdvice.class.getName();
@Override
- public void installProxyInterceptors() {
- installInterceptors();
+ public Collection<ClassPointcuts> getProxyPointcuts() {
+ return getClassPointcuts();
}
@Override
- public void installJdbcInterceptors() {
- installInterceptors();
+ public Collection<ClassPointcuts> getJDBCPointcuts() {
+ return getClassPointcuts();
}
- private void installInterceptors() {
- PluginDefinitionServiceEngine engine = new
PluginDefinitionServiceEngine(this);
-
engine.getClassPointcuts(SCHEMA_METADATA_LOADER_CLASS).getStaticMethodPointcuts()
- .add(new
StaticMethodPointcut(ElementMatchers.named(SCHEMA_METADATA_LOADER_METHOD_NAME).and(ElementMatchers.takesArguments(4)),
SCHEMA_METADATA_LOADER_ADVICE_CLASS));
+ private Collection<ClassPointcuts> getClassPointcuts() {
+ Collection<ClassPointcuts> result = new LinkedList<>();
+ PointcutDefinitionServiceEngine engine = new
PointcutDefinitionServiceEngine(this);
+ ClassPointcuts classPointcuts =
engine.getAllPointcuts(SCHEMA_METADATA_LOADER_CLASS);
+ classPointcuts.getStaticMethodPointcuts().add(
+ new
StaticMethodPointcut(ElementMatchers.named(SCHEMA_METADATA_LOADER_METHOD_NAME).and(ElementMatchers.takesArguments(4)),
SCHEMA_METADATA_LOADER_ADVICE_CLASS));
+ result.add(classPointcuts);
+ return result;
}
@Override
diff --git
a/agent/plugins/logging/base/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
b/agent/plugins/logging/base/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
similarity index 95%
rename from
agent/plugins/logging/base/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
rename to
agent/plugins/logging/base/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
index f78ffaf4844..b98861d5ed1 100644
---
a/agent/plugins/logging/base/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
+++
b/agent/plugins/logging/base/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
@@ -15,4 +15,4 @@
# limitations under the License.
#
-org.apache.shardingsphere.agent.plugin.logging.base.definition.BaseLoggingPluginDefinitionService
+org.apache.shardingsphere.agent.plugin.logging.base.definition.BaseLoggingPointcutDefinitionService
diff --git
a/agent/plugins/metrics/type/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionService.java
b/agent/plugins/metrics/type/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionService.java
deleted file mode 100644
index 53a5fd6f144..00000000000
---
a/agent/plugins/metrics/type/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionService.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (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, 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.metrics.prometheus.definition;
-
-import net.bytebuddy.matcher.ElementMatchers;
-import
org.apache.shardingsphere.agent.core.definition.PluginDefinitionServiceEngine;
-import org.apache.shardingsphere.agent.core.yaml.entity.Interceptor;
-import org.apache.shardingsphere.agent.core.yaml.entity.TargetPoint;
-import
org.apache.shardingsphere.agent.core.yaml.swapper.InterceptorsYamlSwapper;
-import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
-import org.apache.shardingsphere.agent.pointcut.ConstructorPointcut;
-import org.apache.shardingsphere.agent.pointcut.InstanceMethodPointcut;
-import org.apache.shardingsphere.agent.pointcut.StaticMethodPointcut;
-import org.apache.shardingsphere.agent.spi.PluginDefinitionService;
-
-/**
- * Metrics plugin definition service.
- */
-public final class PrometheusPluginDefinitionService implements
PluginDefinitionService {
-
- @Override
- public void installProxyInterceptors() {
- PluginDefinitionServiceEngine engine = new
PluginDefinitionServiceEngine(this);
- for (Interceptor each : new
InterceptorsYamlSwapper().unmarshal(getClass().getResourceAsStream("/prometheus/interceptors.yaml")).getInterceptors())
{
- if (null == each.getTarget()) {
- continue;
- }
- ClassPointcuts classPointcuts =
engine.getClassPointcuts(each.getTarget());
- if (null != each.getConstructAdvice() &&
!("".equals(each.getConstructAdvice()))) {
- classPointcuts.getConstructorPointcuts().add(new
ConstructorPointcut(ElementMatchers.isConstructor(),
each.getConstructAdvice()));
- }
- String[] instancePoints = each.getPoints().stream().filter(i ->
"instance".equals(i.getType())).map(TargetPoint::getName).toArray(String[]::new);
- if (instancePoints.length > 0) {
- classPointcuts.getInstanceMethodPointcuts().add(new
InstanceMethodPointcut(ElementMatchers.namedOneOf(instancePoints),
each.getInstanceAdvice()));
- }
- String[] staticPoints = each.getPoints().stream().filter(i ->
"static".equals(i.getType())).map(TargetPoint::getName).toArray(String[]::new);
- if (staticPoints.length > 0) {
- classPointcuts.getStaticMethodPointcuts().add(new
StaticMethodPointcut(ElementMatchers.namedOneOf(staticPoints),
each.getStaticAdvice()));
- }
- }
- }
-
- @Override
- public void installJdbcInterceptors() {
- // TODO add JDBC related interception
- }
-
- @Override
- public String getType() {
- return "Prometheus";
- }
-}
diff --git
a/agent/plugins/metrics/type/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPointcutDefinitionService.java
b/agent/plugins/metrics/type/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPointcutDefinitionService.java
new file mode 100644
index 00000000000..b8952d9e6cb
--- /dev/null
+++
b/agent/plugins/metrics/type/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPointcutDefinitionService.java
@@ -0,0 +1,78 @@
+/*
+ * Licensed to the Apache Software Foundation (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, 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.metrics.prometheus.definition;
+
+import net.bytebuddy.matcher.ElementMatchers;
+import
org.apache.shardingsphere.agent.core.definition.PointcutDefinitionServiceEngine;
+import org.apache.shardingsphere.agent.core.yaml.entity.Interceptor;
+import org.apache.shardingsphere.agent.core.yaml.entity.TargetPoint;
+import
org.apache.shardingsphere.agent.core.yaml.swapper.InterceptorsYamlSwapper;
+import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
+import org.apache.shardingsphere.agent.pointcut.ConstructorPointcut;
+import org.apache.shardingsphere.agent.pointcut.InstanceMethodPointcut;
+import org.apache.shardingsphere.agent.pointcut.StaticMethodPointcut;
+import org.apache.shardingsphere.agent.spi.PointcutDefinitionService;
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.LinkedList;
+
+/**
+ * Metrics pointcut definition service.
+ */
+public final class PrometheusPointcutDefinitionService implements
PointcutDefinitionService {
+
+ @Override
+ public Collection<ClassPointcuts> getProxyPointcuts() {
+ Collection<ClassPointcuts> result = new LinkedList<>();
+ PointcutDefinitionServiceEngine engine = new
PointcutDefinitionServiceEngine(this);
+ for (Interceptor each : new
InterceptorsYamlSwapper().unmarshal(getClass().getResourceAsStream("/prometheus/interceptors.yaml")).getInterceptors())
{
+ if (null != each.getTarget()) {
+ result.add(createClassPointcuts(engine, each));
+ }
+ }
+ return result;
+ }
+
+ private ClassPointcuts createClassPointcuts(final
PointcutDefinitionServiceEngine engine, final Interceptor interceptor) {
+ ClassPointcuts result =
engine.getAllPointcuts(interceptor.getTarget());
+ if (null != interceptor.getConstructAdvice() &&
!("".equals(interceptor.getConstructAdvice()))) {
+ result.getConstructorPointcuts().add(new
ConstructorPointcut(ElementMatchers.isConstructor(),
interceptor.getConstructAdvice()));
+ }
+ String[] instancePoints = interceptor.getPoints().stream().filter(i ->
"instance".equals(i.getType())).map(TargetPoint::getName).toArray(String[]::new);
+ if (instancePoints.length > 0) {
+ result.getInstanceMethodPointcuts().add(new
InstanceMethodPointcut(ElementMatchers.namedOneOf(instancePoints),
interceptor.getInstanceAdvice()));
+ }
+ String[] staticPoints = interceptor.getPoints().stream().filter(i ->
"static".equals(i.getType())).map(TargetPoint::getName).toArray(String[]::new);
+ if (staticPoints.length > 0) {
+ result.getStaticMethodPointcuts().add(new
StaticMethodPointcut(ElementMatchers.namedOneOf(staticPoints),
interceptor.getStaticAdvice()));
+ }
+ return result;
+ }
+
+ @Override
+ public Collection<ClassPointcuts> getJDBCPointcuts() {
+ // TODO add JDBC related interceptors
+ return Collections.emptyList();
+ }
+
+ @Override
+ public String getType() {
+ return "Prometheus";
+ }
+}
diff --git
a/agent/plugins/metrics/type/prometheus/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
b/agent/plugins/metrics/type/prometheus/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
similarity index 96%
rename from
agent/plugins/metrics/type/prometheus/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
rename to
agent/plugins/metrics/type/prometheus/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
index 3f2d3eb9c2a..474b5f33548 100644
---
a/agent/plugins/metrics/type/prometheus/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
+++
b/agent/plugins/metrics/type/prometheus/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
@@ -15,4 +15,4 @@
# limitations under the License.
#
-org.apache.shardingsphere.agent.metrics.prometheus.definition.PrometheusPluginDefinitionService
+org.apache.shardingsphere.agent.metrics.prometheus.definition.PrometheusPointcutDefinitionService
diff --git
a/agent/plugins/metrics/type/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionServiceTest.java
b/agent/plugins/metrics/type/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPointcutDefinitionServiceTest.java
similarity index 67%
rename from
agent/plugins/metrics/type/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionServiceTest.java
rename to
agent/plugins/metrics/type/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPointcutDefinitionServiceTest.java
index bb3a4e720bc..af351d1756e 100644
---
a/agent/plugins/metrics/type/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionServiceTest.java
+++
b/agent/plugins/metrics/type/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPointcutDefinitionServiceTest.java
@@ -17,18 +17,15 @@
package org.apache.shardingsphere.agent.metrics.prometheus.definition;
-import
org.apache.shardingsphere.agent.core.definition.ClassPointcutsRegistryFactory;
import org.junit.Test;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
-public final class PrometheusPluginDefinitionServiceTest {
+public final class PrometheusPointcutDefinitionServiceTest {
@Test
- public void assertInstallProxyInterceptors() {
- PrometheusPluginDefinitionService pluginDefinitionService = new
PrometheusPluginDefinitionService();
- pluginDefinitionService.installProxyInterceptors();
-
assertThat(ClassPointcutsRegistryFactory.getRegistry(pluginDefinitionService.getType()).getAllClassPointcuts().size(),
is(5));
+ public void assertGetProxyClassPointcuts() {
+ assertThat(new
PrometheusPointcutDefinitionService().getProxyPointcuts().size(), is(5));
}
}
diff --git
a/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/TracingAdviceEngine.java
b/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/TracingAdviceEngine.java
index 6aecace59d9..401cd697b21 100644
---
a/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/TracingAdviceEngine.java
+++
b/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/TracingAdviceEngine.java
@@ -18,11 +18,16 @@
package org.apache.shardingsphere.agent.plugin.tracing.core.advice;
import lombok.RequiredArgsConstructor;
-import
org.apache.shardingsphere.agent.core.definition.PluginDefinitionServiceEngine;
+import
org.apache.shardingsphere.agent.core.definition.PointcutDefinitionServiceEngine;
import
org.apache.shardingsphere.agent.core.plugin.advice.InstanceMethodAroundAdvice;
import
org.apache.shardingsphere.agent.plugin.tracing.core.advice.adviser.impl.CommandExecutorTaskAdviser;
import
org.apache.shardingsphere.agent.plugin.tracing.core.advice.adviser.impl.JDBCExecutorCallbackAdviser;
import
org.apache.shardingsphere.agent.plugin.tracing.core.advice.adviser.impl.SQLParserEngineAdviser;
+import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.LinkedList;
/**
* Tracing advice engine.
@@ -30,7 +35,7 @@ import
org.apache.shardingsphere.agent.plugin.tracing.core.advice.adviser.impl.S
@RequiredArgsConstructor
public final class TracingAdviceEngine {
- private final PluginDefinitionServiceEngine engine;
+ private final PointcutDefinitionServiceEngine engine;
/**
* Advice proxy tracing.
@@ -38,18 +43,25 @@ public final class TracingAdviceEngine {
* @param commandExecutorTaskAdvice command executor task advice
* @param sqlParserEngineAdvice SQL parser engine advice
* @param jdbcExecutorCallbackAdvice JDBC executor callback advice
+ * @return class pointcuts
*/
- public void adviceProxyTracing(final Class<? extends
InstanceMethodAroundAdvice> commandExecutorTaskAdvice,
- final Class<? extends
InstanceMethodAroundAdvice> sqlParserEngineAdvice, final Class<? extends
InstanceMethodAroundAdvice> jdbcExecutorCallbackAdvice) {
- new
CommandExecutorTaskAdviser(engine).advice(commandExecutorTaskAdvice);
- new SQLParserEngineAdviser(engine).advice(sqlParserEngineAdvice);
- new
JDBCExecutorCallbackAdviser(engine).advice(jdbcExecutorCallbackAdvice);
+ public Collection<ClassPointcuts> adviceProxy(final Class<? extends
InstanceMethodAroundAdvice> commandExecutorTaskAdvice, final Class<? extends
InstanceMethodAroundAdvice> sqlParserEngineAdvice,
+ final Class<? extends
InstanceMethodAroundAdvice> jdbcExecutorCallbackAdvice) {
+ // TODO load from YAML, please ref metrics
+ Collection<ClassPointcuts> result = new LinkedList<>();
+ result.add(new
CommandExecutorTaskAdviser(engine).advice(commandExecutorTaskAdvice));
+ result.add(new
SQLParserEngineAdviser(engine).advice(sqlParserEngineAdvice));
+ result.add(new
JDBCExecutorCallbackAdviser(engine).advice(jdbcExecutorCallbackAdvice));
+ return result;
}
/**
* Advice JDBC tracing.
+ *
+ * @return class pointcuts
*/
- public void adviceJDBCTracing() {
+ public Collection<ClassPointcuts> adviceJDBC() {
// TODO
+ return Collections.emptyList();
}
}
diff --git
a/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/TracingAdviser.java
b/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/TracingAdviser.java
index 8e5b58b889f..fa188a6f1a5 100644
---
a/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/TracingAdviser.java
+++
b/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/TracingAdviser.java
@@ -18,6 +18,7 @@
package org.apache.shardingsphere.agent.plugin.tracing.core.advice.adviser;
import
org.apache.shardingsphere.agent.core.plugin.advice.InstanceMethodAroundAdvice;
+import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
/**
* Tracing adviser.
@@ -28,6 +29,7 @@ public interface TracingAdviser {
* Advice.
*
* @param instanceMethodAroundAdvice instance method around advice
+ * @return class pointcuts
*/
- void advice(Class<? extends InstanceMethodAroundAdvice>
instanceMethodAroundAdvice);
+ ClassPointcuts advice(Class<? extends InstanceMethodAroundAdvice>
instanceMethodAroundAdvice);
}
diff --git
a/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/impl/CommandExecutorTaskAdviser.java
b/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/impl/CommandExecutorTaskAdviser.java
index 521ec4e8d77..d32f5548afb 100644
---
a/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/impl/CommandExecutorTaskAdviser.java
+++
b/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/impl/CommandExecutorTaskAdviser.java
@@ -19,9 +19,10 @@ package
org.apache.shardingsphere.agent.plugin.tracing.core.advice.adviser.impl;
import lombok.RequiredArgsConstructor;
import net.bytebuddy.matcher.ElementMatchers;
-import
org.apache.shardingsphere.agent.core.definition.PluginDefinitionServiceEngine;
+import
org.apache.shardingsphere.agent.core.definition.PointcutDefinitionServiceEngine;
import
org.apache.shardingsphere.agent.core.plugin.advice.InstanceMethodAroundAdvice;
import
org.apache.shardingsphere.agent.plugin.tracing.core.advice.adviser.TracingAdviser;
+import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
import org.apache.shardingsphere.agent.pointcut.InstanceMethodPointcut;
/**
@@ -34,11 +35,12 @@ public final class CommandExecutorTaskAdviser implements
TracingAdviser {
private static final String TARGET_METHOD = "run";
- private final PluginDefinitionServiceEngine engine;
+ private final PointcutDefinitionServiceEngine engine;
@Override
- public void advice(final Class<? extends InstanceMethodAroundAdvice>
commandExecutorTaskAdvice) {
- engine.getClassPointcuts(TARGET_CLASS).getInstanceMethodPointcuts()
- .add(new
InstanceMethodPointcut(ElementMatchers.named(TARGET_METHOD),
commandExecutorTaskAdvice.getName()));
+ public ClassPointcuts advice(final Class<? extends
InstanceMethodAroundAdvice> commandExecutorTaskAdvice) {
+ ClassPointcuts result = engine.getAllPointcuts(TARGET_CLASS);
+ result.getInstanceMethodPointcuts().add(new
InstanceMethodPointcut(ElementMatchers.named(TARGET_METHOD),
commandExecutorTaskAdvice.getName()));
+ return result;
}
}
diff --git
a/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/impl/JDBCExecutorCallbackAdviser.java
b/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/impl/JDBCExecutorCallbackAdviser.java
index 8ec9ccf2e65..29577378d96 100644
---
a/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/impl/JDBCExecutorCallbackAdviser.java
+++
b/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/impl/JDBCExecutorCallbackAdviser.java
@@ -19,9 +19,10 @@ package
org.apache.shardingsphere.agent.plugin.tracing.core.advice.adviser.impl;
import lombok.RequiredArgsConstructor;
import net.bytebuddy.matcher.ElementMatchers;
-import
org.apache.shardingsphere.agent.core.definition.PluginDefinitionServiceEngine;
+import
org.apache.shardingsphere.agent.core.definition.PointcutDefinitionServiceEngine;
import
org.apache.shardingsphere.agent.core.plugin.advice.InstanceMethodAroundAdvice;
import
org.apache.shardingsphere.agent.plugin.tracing.core.advice.adviser.TracingAdviser;
+import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
import org.apache.shardingsphere.agent.pointcut.InstanceMethodPointcut;
/**
@@ -36,12 +37,13 @@ public final class JDBCExecutorCallbackAdviser implements
TracingAdviser {
private static final String TARGET_METHOD_FIRST_PARAM =
"org.apache.shardingsphere.infra.executor.sql.execute.engine.driver.jdbc.JDBCExecutionUnit";
- private final PluginDefinitionServiceEngine engine;
+ private final PointcutDefinitionServiceEngine engine;
@Override
- public void advice(final Class<? extends InstanceMethodAroundAdvice>
jdbcExecutorCallbackAdvice) {
- engine.getClassPointcuts(TARGET_CLASS).getInstanceMethodPointcuts()
- .add(new
InstanceMethodPointcut(ElementMatchers.named(TARGET_METHOD).and(ElementMatchers.takesArgument(0,
ElementMatchers.named(TARGET_METHOD_FIRST_PARAM))),
- jdbcExecutorCallbackAdvice.getName()));
+ public ClassPointcuts advice(final Class<? extends
InstanceMethodAroundAdvice> jdbcExecutorCallbackAdvice) {
+ ClassPointcuts result = engine.getAllPointcuts(TARGET_CLASS);
+ result.getInstanceMethodPointcuts().add(new InstanceMethodPointcut(
+
ElementMatchers.named(TARGET_METHOD).and(ElementMatchers.takesArgument(0,
ElementMatchers.named(TARGET_METHOD_FIRST_PARAM))),
jdbcExecutorCallbackAdvice.getName()));
+ return result;
}
}
diff --git
a/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/impl/SQLParserEngineAdviser.java
b/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/impl/SQLParserEngineAdviser.java
index 83cea28e46a..84931e3d956 100644
---
a/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/impl/SQLParserEngineAdviser.java
+++
b/agent/plugins/tracing/core/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/core/advice/adviser/impl/SQLParserEngineAdviser.java
@@ -19,9 +19,10 @@ package
org.apache.shardingsphere.agent.plugin.tracing.core.advice.adviser.impl;
import lombok.RequiredArgsConstructor;
import net.bytebuddy.matcher.ElementMatchers;
-import
org.apache.shardingsphere.agent.core.definition.PluginDefinitionServiceEngine;
+import
org.apache.shardingsphere.agent.core.definition.PointcutDefinitionServiceEngine;
import
org.apache.shardingsphere.agent.core.plugin.advice.InstanceMethodAroundAdvice;
import
org.apache.shardingsphere.agent.plugin.tracing.core.advice.adviser.TracingAdviser;
+import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
import org.apache.shardingsphere.agent.pointcut.InstanceMethodPointcut;
/**
@@ -34,11 +35,12 @@ public final class SQLParserEngineAdviser implements
TracingAdviser {
private static final String TARGET_METHOD = "parse";
- private final PluginDefinitionServiceEngine engine;
+ private final PointcutDefinitionServiceEngine engine;
@Override
- public void advice(final Class<? extends InstanceMethodAroundAdvice>
sqlParserEngineAdvice) {
- engine.getClassPointcuts(TARGET_CLASS).getInstanceMethodPointcuts()
- .add(new
InstanceMethodPointcut(ElementMatchers.named(TARGET_METHOD),
sqlParserEngineAdvice.getName()));
+ public ClassPointcuts advice(final Class<? extends
InstanceMethodAroundAdvice> sqlParserEngineAdvice) {
+ ClassPointcuts result = engine.getAllPointcuts(TARGET_CLASS);
+ result.getInstanceMethodPointcuts().add(new
InstanceMethodPointcut(ElementMatchers.named(TARGET_METHOD),
sqlParserEngineAdvice.getName()));
+ return result;
}
}
diff --git
a/agent/plugins/tracing/type/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionService.java
b/agent/plugins/tracing/type/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPointcutDefinitionService.java
similarity index 62%
rename from
agent/plugins/tracing/type/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionService.java
rename to
agent/plugins/tracing/type/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPointcutDefinitionService.java
index d9a4127672e..948c4480038 100644
---
a/agent/plugins/tracing/type/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionService.java
+++
b/agent/plugins/tracing/type/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPointcutDefinitionService.java
@@ -17,25 +17,28 @@
package org.apache.shardingsphere.agent.plugin.tracing.jaeger.definition;
-import
org.apache.shardingsphere.agent.core.definition.PluginDefinitionServiceEngine;
+import
org.apache.shardingsphere.agent.core.definition.PointcutDefinitionServiceEngine;
import
org.apache.shardingsphere.agent.plugin.tracing.core.advice.TracingAdviceEngine;
import
org.apache.shardingsphere.agent.plugin.tracing.jaeger.advice.CommandExecutorTaskAdvice;
import
org.apache.shardingsphere.agent.plugin.tracing.jaeger.advice.JDBCExecutorCallbackAdvice;
-import org.apache.shardingsphere.agent.spi.PluginDefinitionService;
+import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
+import org.apache.shardingsphere.agent.spi.PointcutDefinitionService;
+
+import java.util.Collection;
/**
- * Jaeger plugin definition service.
+ * Jaeger pointcut definition service.
*/
-public final class JaegerPluginDefinitionService implements
PluginDefinitionService {
+public final class JaegerPointcutDefinitionService implements
PointcutDefinitionService {
@Override
- public void installProxyInterceptors() {
- new TracingAdviceEngine(new
PluginDefinitionServiceEngine(this)).adviceProxyTracing(CommandExecutorTaskAdvice.class,
CommandExecutorTaskAdvice.class, JDBCExecutorCallbackAdvice.class);
+ public Collection<ClassPointcuts> getProxyPointcuts() {
+ return new TracingAdviceEngine(new
PointcutDefinitionServiceEngine(this)).adviceProxy(CommandExecutorTaskAdvice.class,
CommandExecutorTaskAdvice.class, JDBCExecutorCallbackAdvice.class);
}
@Override
- public void installJdbcInterceptors() {
- new TracingAdviceEngine(new
PluginDefinitionServiceEngine(this)).adviceJDBCTracing();
+ public Collection<ClassPointcuts> getJDBCPointcuts() {
+ return new TracingAdviceEngine(new
PointcutDefinitionServiceEngine(this)).adviceJDBC();
}
@Override
diff --git
a/agent/plugins/tracing/type/jaeger/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
b/agent/plugins/tracing/type/jaeger/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
similarity index 96%
rename from
agent/plugins/tracing/type/jaeger/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
rename to
agent/plugins/tracing/type/jaeger/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
index 3ddbb2b763b..aa4b757e206 100644
---
a/agent/plugins/tracing/type/jaeger/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
+++
b/agent/plugins/tracing/type/jaeger/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
@@ -15,4 +15,4 @@
# limitations under the License.
#
-org.apache.shardingsphere.agent.plugin.tracing.jaeger.definition.JaegerPluginDefinitionService
+org.apache.shardingsphere.agent.plugin.tracing.jaeger.definition.JaegerPointcutDefinitionService
diff --git
a/agent/plugins/tracing/type/jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionServiceTest.java
b/agent/plugins/tracing/type/jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPointcutDefinitionServiceTest.java
similarity index 67%
rename from
agent/plugins/tracing/type/jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionServiceTest.java
rename to
agent/plugins/tracing/type/jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPointcutDefinitionServiceTest.java
index 689cdcef3e8..e01ffebc546 100644
---
a/agent/plugins/tracing/type/jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionServiceTest.java
+++
b/agent/plugins/tracing/type/jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPointcutDefinitionServiceTest.java
@@ -17,18 +17,15 @@
package org.apache.shardingsphere.agent.plugin.tracing.jaeger.definition;
-import
org.apache.shardingsphere.agent.core.definition.ClassPointcutsRegistryFactory;
import org.junit.Test;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
-public final class JaegerPluginDefinitionServiceTest {
+public final class JaegerPointcutDefinitionServiceTest {
@Test
- public void assertInstallProxyInterceptors() {
- JaegerPluginDefinitionService pluginDefinitionService = new
JaegerPluginDefinitionService();
- pluginDefinitionService.installProxyInterceptors();
-
assertThat(ClassPointcutsRegistryFactory.getRegistry(pluginDefinitionService.getType()).getAllClassPointcuts().size(),
is(3));
+ public void assertGetProxyClassPointcuts() {
+ assertThat(new
JaegerPointcutDefinitionService().getProxyPointcuts().size(), is(3));
}
}
diff --git
a/agent/plugins/tracing/type/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionService.java
b/agent/plugins/tracing/type/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPointcutDefinitionService.java
similarity index 62%
rename from
agent/plugins/tracing/type/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionService.java
rename to
agent/plugins/tracing/type/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPointcutDefinitionService.java
index e6072eb6ffa..efd4ee233a8 100644
---
a/agent/plugins/tracing/type/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionService.java
+++
b/agent/plugins/tracing/type/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPointcutDefinitionService.java
@@ -17,25 +17,28 @@
package
org.apache.shardingsphere.agent.plugin.tracing.opentelemetry.definition;
-import
org.apache.shardingsphere.agent.core.definition.PluginDefinitionServiceEngine;
+import
org.apache.shardingsphere.agent.core.definition.PointcutDefinitionServiceEngine;
import
org.apache.shardingsphere.agent.plugin.tracing.core.advice.TracingAdviceEngine;
import
org.apache.shardingsphere.agent.plugin.tracing.opentelemetry.advice.CommandExecutorTaskAdvice;
import
org.apache.shardingsphere.agent.plugin.tracing.opentelemetry.advice.JDBCExecutorCallbackAdvice;
-import org.apache.shardingsphere.agent.spi.PluginDefinitionService;
+import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
+import org.apache.shardingsphere.agent.spi.PointcutDefinitionService;
+
+import java.util.Collection;
/**
- * OpenTelemetry plugin definition service.
+ * OpenTelemetry pointcut definition service.
*/
-public final class OpenTelemetryTracingPluginDefinitionService implements
PluginDefinitionService {
+public final class OpenTelemetryTracingPointcutDefinitionService implements
PointcutDefinitionService {
@Override
- public void installProxyInterceptors() {
- new TracingAdviceEngine(new
PluginDefinitionServiceEngine(this)).adviceProxyTracing(CommandExecutorTaskAdvice.class,
CommandExecutorTaskAdvice.class, JDBCExecutorCallbackAdvice.class);
+ public Collection<ClassPointcuts> getProxyPointcuts() {
+ return new TracingAdviceEngine(new
PointcutDefinitionServiceEngine(this)).adviceProxy(CommandExecutorTaskAdvice.class,
CommandExecutorTaskAdvice.class, JDBCExecutorCallbackAdvice.class);
}
@Override
- public void installJdbcInterceptors() {
- new TracingAdviceEngine(new
PluginDefinitionServiceEngine(this)).adviceJDBCTracing();
+ public Collection<ClassPointcuts> getJDBCPointcuts() {
+ return new TracingAdviceEngine(new
PointcutDefinitionServiceEngine(this)).adviceJDBC();
}
@Override
diff --git
a/agent/plugins/tracing/type/opentelemetry/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
b/agent/plugins/tracing/type/opentelemetry/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
similarity index 94%
rename from
agent/plugins/tracing/type/opentelemetry/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
rename to
agent/plugins/tracing/type/opentelemetry/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
index e1935c9c90c..5be3a927828 100644
---
a/agent/plugins/tracing/type/opentelemetry/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
+++
b/agent/plugins/tracing/type/opentelemetry/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
@@ -15,4 +15,4 @@
# limitations under the License.
#
-org.apache.shardingsphere.agent.plugin.tracing.opentelemetry.definition.OpenTelemetryTracingPluginDefinitionService
+org.apache.shardingsphere.agent.plugin.tracing.opentelemetry.definition.OpenTelemetryTracingPointcutDefinitionService
diff --git
a/agent/plugins/tracing/type/opentelemetry/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionServiceTest.java
b/agent/plugins/tracing/type/opentelemetry/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPointcutDefinitionServiceTest.java
similarity index 66%
rename from
agent/plugins/tracing/type/opentelemetry/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionServiceTest.java
rename to
agent/plugins/tracing/type/opentelemetry/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPointcutDefinitionServiceTest.java
index b677a1497bd..fcae69b572b 100644
---
a/agent/plugins/tracing/type/opentelemetry/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionServiceTest.java
+++
b/agent/plugins/tracing/type/opentelemetry/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPointcutDefinitionServiceTest.java
@@ -17,18 +17,15 @@
package
org.apache.shardingsphere.agent.plugin.tracing.opentelemetry.definition;
-import
org.apache.shardingsphere.agent.core.definition.ClassPointcutsRegistryFactory;
import org.junit.Test;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
-public final class OpenTelemetryTracingPluginDefinitionServiceTest {
+public final class OpenTelemetryTracingPointcutDefinitionServiceTest {
@Test
- public void assertInstallProxyInterceptors() {
- OpenTelemetryTracingPluginDefinitionService pluginDefinitionService =
new OpenTelemetryTracingPluginDefinitionService();
- pluginDefinitionService.installProxyInterceptors();
-
assertThat(ClassPointcutsRegistryFactory.getRegistry(pluginDefinitionService.getType()).getAllClassPointcuts().size(),
is(3));
+ public void assertGetProxyClassPointcuts() {
+ assertThat(new
OpenTelemetryTracingPointcutDefinitionService().getProxyPointcuts().size(),
is(3));
}
}
diff --git
a/agent/plugins/tracing/type/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionService.java
b/agent/plugins/tracing/type/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPointcutDefinitionService.java
similarity index 62%
rename from
agent/plugins/tracing/type/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionService.java
rename to
agent/plugins/tracing/type/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPointcutDefinitionService.java
index 14c203f6203..b815773e841 100644
---
a/agent/plugins/tracing/type/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionService.java
+++
b/agent/plugins/tracing/type/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPointcutDefinitionService.java
@@ -17,25 +17,28 @@
package org.apache.shardingsphere.agent.plugin.tracing.opentracing.definition;
-import
org.apache.shardingsphere.agent.core.definition.PluginDefinitionServiceEngine;
+import
org.apache.shardingsphere.agent.core.definition.PointcutDefinitionServiceEngine;
import
org.apache.shardingsphere.agent.plugin.tracing.core.advice.TracingAdviceEngine;
import
org.apache.shardingsphere.agent.plugin.tracing.opentracing.advice.CommandExecutorTaskAdvice;
import
org.apache.shardingsphere.agent.plugin.tracing.opentracing.advice.JDBCExecutorCallbackAdvice;
-import org.apache.shardingsphere.agent.spi.PluginDefinitionService;
+import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
+import org.apache.shardingsphere.agent.spi.PointcutDefinitionService;
+
+import java.util.Collection;
/**
- * Open tracing plugin definition service.
+ * Open tracing pointcut definition service.
*/
-public final class OpenTracingPluginDefinitionService implements
PluginDefinitionService {
+public final class OpenTracingPointcutDefinitionService implements
PointcutDefinitionService {
@Override
- public void installProxyInterceptors() {
- new TracingAdviceEngine(new
PluginDefinitionServiceEngine(this)).adviceProxyTracing(CommandExecutorTaskAdvice.class,
CommandExecutorTaskAdvice.class, JDBCExecutorCallbackAdvice.class);
+ public Collection<ClassPointcuts> getProxyPointcuts() {
+ return new TracingAdviceEngine(new
PointcutDefinitionServiceEngine(this)).adviceProxy(CommandExecutorTaskAdvice.class,
CommandExecutorTaskAdvice.class, JDBCExecutorCallbackAdvice.class);
}
@Override
- public void installJdbcInterceptors() {
- new TracingAdviceEngine(new
PluginDefinitionServiceEngine(this)).adviceJDBCTracing();
+ public Collection<ClassPointcuts> getJDBCPointcuts() {
+ return new TracingAdviceEngine(new
PointcutDefinitionServiceEngine(this)).adviceJDBC();
}
@Override
diff --git
a/agent/plugins/tracing/type/opentracing/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
b/agent/plugins/tracing/type/opentracing/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
similarity index 95%
rename from
agent/plugins/tracing/type/opentracing/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
rename to
agent/plugins/tracing/type/opentracing/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
index 8dc7967e873..dceb2a9b065 100644
---
a/agent/plugins/tracing/type/opentracing/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
+++
b/agent/plugins/tracing/type/opentracing/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
@@ -15,4 +15,4 @@
# limitations under the License.
#
-org.apache.shardingsphere.agent.plugin.tracing.opentracing.definition.OpenTracingPluginDefinitionService
+org.apache.shardingsphere.agent.plugin.tracing.opentracing.definition.OpenTracingPointcutDefinitionService
diff --git
a/agent/plugins/tracing/type/opentracing/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionServiceTest.java
b/agent/plugins/tracing/type/opentracing/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPointcutDefinitionServiceTest.java
similarity index 67%
rename from
agent/plugins/tracing/type/opentracing/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionServiceTest.java
rename to
agent/plugins/tracing/type/opentracing/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPointcutDefinitionServiceTest.java
index ffd3a482a96..3b7b9e3270f 100644
---
a/agent/plugins/tracing/type/opentracing/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionServiceTest.java
+++
b/agent/plugins/tracing/type/opentracing/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPointcutDefinitionServiceTest.java
@@ -17,18 +17,15 @@
package org.apache.shardingsphere.agent.plugin.tracing.opentracing.definition;
-import
org.apache.shardingsphere.agent.core.definition.ClassPointcutsRegistryFactory;
import org.junit.Test;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
-public final class OpenTracingPluginDefinitionServiceTest {
+public final class OpenTracingPointcutDefinitionServiceTest {
@Test
- public void assertInstallProxyInterceptors() {
- OpenTracingPluginDefinitionService pluginDefinitionService = new
OpenTracingPluginDefinitionService();
- pluginDefinitionService.installProxyInterceptors();
-
assertThat(ClassPointcutsRegistryFactory.getRegistry(pluginDefinitionService.getType()).getAllClassPointcuts().size(),
is(3));
+ public void assertGetProxyClassPointcuts() {
+ assertThat(new
OpenTracingPointcutDefinitionService().getProxyPointcuts().size(), is(3));
}
}
diff --git
a/agent/plugins/tracing/type/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionService.java
b/agent/plugins/tracing/type/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPointcutDefinitionService.java
similarity index 62%
rename from
agent/plugins/tracing/type/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionService.java
rename to
agent/plugins/tracing/type/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPointcutDefinitionService.java
index a408e4d154e..ae8f4cd8e0e 100644
---
a/agent/plugins/tracing/type/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionService.java
+++
b/agent/plugins/tracing/type/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPointcutDefinitionService.java
@@ -17,25 +17,28 @@
package org.apache.shardingsphere.agent.plugin.tracing.zipkin.definition;
-import
org.apache.shardingsphere.agent.core.definition.PluginDefinitionServiceEngine;
+import
org.apache.shardingsphere.agent.core.definition.PointcutDefinitionServiceEngine;
import
org.apache.shardingsphere.agent.plugin.tracing.core.advice.TracingAdviceEngine;
import
org.apache.shardingsphere.agent.plugin.tracing.zipkin.advice.CommandExecutorTaskAdvice;
import
org.apache.shardingsphere.agent.plugin.tracing.zipkin.advice.JDBCExecutorCallbackAdvice;
-import org.apache.shardingsphere.agent.spi.PluginDefinitionService;
+import org.apache.shardingsphere.agent.pointcut.ClassPointcuts;
+import org.apache.shardingsphere.agent.spi.PointcutDefinitionService;
+
+import java.util.Collection;
/**
- * Zipkin plugin definition service.
+ * Zipkin pointcut definition service.
*/
-public final class ZipkinPluginDefinitionService implements
PluginDefinitionService {
+public final class ZipkinPointcutDefinitionService implements
PointcutDefinitionService {
@Override
- public void installProxyInterceptors() {
- new TracingAdviceEngine(new
PluginDefinitionServiceEngine(this)).adviceProxyTracing(CommandExecutorTaskAdvice.class,
CommandExecutorTaskAdvice.class, JDBCExecutorCallbackAdvice.class);
+ public Collection<ClassPointcuts> getProxyPointcuts() {
+ return new TracingAdviceEngine(new
PointcutDefinitionServiceEngine(this)).adviceProxy(CommandExecutorTaskAdvice.class,
CommandExecutorTaskAdvice.class, JDBCExecutorCallbackAdvice.class);
}
@Override
- public void installJdbcInterceptors() {
- new TracingAdviceEngine(new
PluginDefinitionServiceEngine(this)).adviceJDBCTracing();
+ public Collection<ClassPointcuts> getJDBCPointcuts() {
+ return new TracingAdviceEngine(new
PointcutDefinitionServiceEngine(this)).adviceJDBC();
}
@Override
diff --git
a/agent/plugins/tracing/type/zipkin/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
b/agent/plugins/tracing/type/zipkin/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
similarity index 96%
rename from
agent/plugins/tracing/type/zipkin/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
rename to
agent/plugins/tracing/type/zipkin/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
index 988b0dedf18..4a669af245d 100644
---
a/agent/plugins/tracing/type/zipkin/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PluginDefinitionService
+++
b/agent/plugins/tracing/type/zipkin/src/main/resources/META-INF/services/org.apache.shardingsphere.agent.spi.PointcutDefinitionService
@@ -15,4 +15,4 @@
# limitations under the License.
#
-org.apache.shardingsphere.agent.plugin.tracing.zipkin.definition.ZipkinPluginDefinitionService
+org.apache.shardingsphere.agent.plugin.tracing.zipkin.definition.ZipkinPointcutDefinitionService
diff --git
a/agent/plugins/tracing/type/zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionServiceTest.java
b/agent/plugins/tracing/type/zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPointcutDefinitionServiceTest.java
similarity index 67%
rename from
agent/plugins/tracing/type/zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionServiceTest.java
rename to
agent/plugins/tracing/type/zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPointcutDefinitionServiceTest.java
index d7fd6729898..cbd0ca264ef 100644
---
a/agent/plugins/tracing/type/zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionServiceTest.java
+++
b/agent/plugins/tracing/type/zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPointcutDefinitionServiceTest.java
@@ -17,18 +17,15 @@
package org.apache.shardingsphere.agent.plugin.tracing.zipkin.definition;
-import
org.apache.shardingsphere.agent.core.definition.ClassPointcutsRegistryFactory;
import org.junit.Test;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
-public final class ZipkinPluginDefinitionServiceTest {
+public final class ZipkinPointcutDefinitionServiceTest {
@Test
- public void assertInstallProxyInterceptors() {
- ZipkinPluginDefinitionService pluginDefinitionService = new
ZipkinPluginDefinitionService();
- pluginDefinitionService.installProxyInterceptors();
-
assertThat(ClassPointcutsRegistryFactory.getRegistry(pluginDefinitionService.getType()).getAllClassPointcuts().size(),
is(3));
+ public void assertGetProxyClassPointcuts() {
+ assertThat(new
ZipkinPointcutDefinitionService().getProxyPointcuts().size(), is(3));
}
}
diff --git a/docs/document/content/dev-manual/agent.cn.md
b/docs/document/content/dev-manual/agent.cn.md
index e565a25a28c..a3714197317 100644
--- a/docs/document/content/dev-manual/agent.cn.md
+++ b/docs/document/content/dev-manual/agent.cn.md
@@ -40,9 +40,9 @@ chapter = true
| *配置标识* | *详细说明* | *全限定类名* |
| ------------- | --------------------------- | ---------- |
-| Prometheus | Prometheus 插件定义 |
[`org.apache.shardingsphere.agent.metrics.prometheus.definition.PrometheusPluginDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionService.java)
|
-| Logging | Logging 插件定义 |
[`org.apache.shardingsphere.agent.plugin.logging.base.definition.BaseLoggingPluginDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/logging/base/src/main/java/org/apache/shardingsphere/agent/plugin/logging/base/definition/BaseLoggingPluginDefinitionService.java)
|
-| Jaeger | Jaeger 插件定义 |
[`org.apache.shardingsphere.agent.plugin.tracing.jaeger.definition.JaegerPluginDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionService.java)
|
-| OpenTelemetry | OpenTelemetryTracing 插件定义 |
[`org.apache.shardingsphere.agent.plugin.tracing.opentelemetry.definition.OpenTelemetryTracingPluginDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionService.java)
|
-| OpenTracing | OpenTracing 插件定义 |
[`org.apache.shardingsphere.agent.plugin.tracing.opentracing.definition.OpenTracingPluginDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionService.java)
|
-| Zipkin | Zipkin 插件定义 |
[`org.apache.shardingsphere.agent.plugin.tracing.zipkin.definition.ZipkinPluginDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionService.java)
|
+| Prometheus | Prometheus 插件定义 |
[`org.apache.shardingsphere.agent.metrics.prometheus.definition.PrometheusPointcutDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionService.java)
|
+| Logging | Logging 插件定义 |
[`org.apache.shardingsphere.agent.plugin.logging.base.definition.BaseLoggingPointcutDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/logging/base/src/main/java/org/apache/shardingsphere/agent/plugin/logging/base/definition/BaseLoggingPluginDefinitionService.java)
|
+| Jaeger | Jaeger 插件定义 |
[`org.apache.shardingsphere.agent.plugin.tracing.jaeger.definition.JaegerPointcutDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionService.java)
|
+| OpenTelemetry | OpenTelemetryTracing 插件定义 |
[`org.apache.shardingsphere.agent.plugin.tracing.opentelemetry.definition.OpenTelemetryTracingPointcutDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionService.java)
|
+| OpenTracing | OpenTracing 插件定义 |
[`org.apache.shardingsphere.agent.plugin.tracing.opentracing.definition.OpenTracingPointcutDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionService.java)
|
+| Zipkin | Zipkin 插件定义 |
[`org.apache.shardingsphere.agent.plugin.tracing.zipkin.definition.ZipkinPointcutDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionService.java)
|
diff --git a/docs/document/content/dev-manual/agent.en.md
b/docs/document/content/dev-manual/agent.en.md
index 8f5b027da86..c3d702989f8 100644
--- a/docs/document/content/dev-manual/agent.en.md
+++ b/docs/document/content/dev-manual/agent.en.md
@@ -40,9 +40,9 @@ Agent plugin definition
| *Configuration Type* | *Description* |
*Fully-qualified class name* |
| -------------------- |--------------------------------------- |
---------------------------- |
-| Prometheus | Prometheus plugin definition |
[`org.apache.shardingsphere.agent.metrics.prometheus.definition.PrometheusPluginDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionService.java)
|
-| Logging | Logging plugin definition |
[`org.apache.shardingsphere.agent.plugin.logging.base.definition.BaseLoggingPluginDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/logging/base/src/main/java/org/apache/shardingsphere/agent/plugin/logging/base/definition/BaseLoggingPluginDefinitionService.java)
|
-| Jaeger | Jaeger plugin definition |
[`org.apache.shardingsphere.agent.plugin.tracing.jaeger.definition.JaegerPluginDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionService.java)
|
-| OpenTelemetry | OpenTelemetryTracing plugin definition |
[`org.apache.shardingsphere.agent.plugin.tracing.opentelemetry.definition.OpenTelemetryTracingPluginDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionService.java)
|
-| OpenTracing | OpenTracing plugin definition |
[`org.apache.shardingsphere.agent.plugin.tracing.opentracing.definition.OpenTracingPluginDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionService.java)
|
-| Zipkin | Zipkin plugin definition |
[`org.apache.shardingsphere.agent.plugin.tracing.zipkin.definition.ZipkinPluginDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionService.java)
|
+| Prometheus | Prometheus plugin definition |
[`org.apache.shardingsphere.agent.metrics.prometheus.definition.PrometheusPointcutDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionService.java)
|
+| Logging | Logging plugin definition |
[`org.apache.shardingsphere.agent.plugin.logging.base.definition.BaseLoggingPointcutDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/logging/base/src/main/java/org/apache/shardingsphere/agent/plugin/logging/base/definition/BaseLoggingPluginDefinitionService.java)
|
+| Jaeger | Jaeger plugin definition |
[`org.apache.shardingsphere.agent.plugin.tracing.jaeger.definition.JaegerPointcutDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionService.java)
|
+| OpenTelemetry | OpenTelemetryTracing plugin definition |
[`org.apache.shardingsphere.agent.plugin.tracing.opentelemetry.definition.OpenTelemetryTracingPointcutDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionService.java)
|
+| OpenTracing | OpenTracing plugin definition |
[`org.apache.shardingsphere.agent.plugin.tracing.opentracing.definition.OpenTracingPointcutDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionService.java)
|
+| Zipkin | Zipkin plugin definition |
[`org.apache.shardingsphere.agent.plugin.tracing.zipkin.definition.ZipkinPointcutDefinitionService`](https://github.com/apache/shardingsphere/blob/master/agent/plugins/tracing/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionService.java)
|