This is an automated email from the ASF dual-hosted git repository.
jianglongtao 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 7e6d00dbfab Refactor agent plugin to support JDBC (#22505)
7e6d00dbfab is described below
commit 7e6d00dbfab5f016fae7736f805c34df469a2907
Author: jiangML <[email protected]>
AuthorDate: Wed Nov 30 16:16:45 2022 +0800
Refactor agent plugin to support JDBC (#22505)
* Refactor agent plugin to support JDBC
* optimize code
* optimize code
* optimize code
* remove extra spaces
* remove extra spaces
* remove extra spaces
---
.../agent/spi/boot/PluginBootService.java | 3 ++-
.../AbstractPluginDefinitionService.java | 24 +++++++++++++++-------
agent/bootstrap/pom.xml | 4 ++++
.../agent/bootstrap/ShardingSphereAgent.java | 4 ++--
.../agent/core/plugin/AdviceInstanceLoader.java | 2 +-
.../agent/core/plugin/AgentPluginLoader.java | 2 +-
.../core/plugin/PluginBootServiceManager.java | 5 +++--
.../BaseLoggingPluginDefinitionService.java | 12 +++++++++--
.../base/service/BaseLoggingPluginBootService.java | 2 +-
.../prometheus/collector/BuildInfoCollector.java | 14 +++++++++----
.../PrometheusPluginDefinitionService.java | 12 +++++------
.../service/PrometheusPluginBootService.java | 13 ++++++++----
.../collector/BuildInfoCollectorTest.java | 2 +-
.../PrometheusPluginDefinitionServiceTest.java | 2 +-
.../service/PrometheusPluginBootServiceTest.java | 2 +-
agent/plugins/pom.xml | 12 +++++++++++
.../definition/JaegerPluginDefinitionService.java | 7 ++++++-
.../service/JaegerTracingPluginBootService.java | 2 +-
.../JaegerPluginDefinitionServiceTest.java | 2 +-
.../JaegerTracingPluginBootServiceTest.java | 2 +-
...penTelemetryTracingPluginDefinitionService.java | 7 ++++++-
.../OpenTelemetryTracingPluginBootService.java | 2 +-
...elemetryTracingPluginDefinitionServiceTest.java | 2 +-
.../OpenTelemetryTracingPluginBootServiceTest.java | 2 +-
.../OpenTracingPluginDefinitionService.java | 7 ++++++-
.../service/OpenTracingPluginBootService.java | 2 +-
.../OpenTracingPluginDefinitionServiceTest.java | 2 +-
.../service/OpenTracingPluginBootServiceTest.java | 2 +-
.../definition/ZipkinPluginDefinitionService.java | 7 ++++++-
.../service/ZipkinTracingPluginBootService.java | 2 +-
.../ZipkinPluginDefinitionServiceTest.java | 2 +-
.../ZipkinTracingPluginBootServiceTest.java | 2 +-
32 files changed, 117 insertions(+), 50 deletions(-)
diff --git
a/agent/api/src/main/java/org/apache/shardingsphere/agent/spi/boot/PluginBootService.java
b/agent/api/src/main/java/org/apache/shardingsphere/agent/spi/boot/PluginBootService.java
index b8b2b554c17..7d0f36723df 100644
---
a/agent/api/src/main/java/org/apache/shardingsphere/agent/spi/boot/PluginBootService.java
+++
b/agent/api/src/main/java/org/apache/shardingsphere/agent/spi/boot/PluginBootService.java
@@ -29,6 +29,7 @@ public interface PluginBootService extends AgentTypedSPI,
AutoCloseable {
* Start plugin boot service.
*
* @param pluginConfig plugin configuration
+ * @param isEnhancedForProxy is enhanced for proxy
*/
- void start(PluginConfiguration pluginConfig);
+ void start(PluginConfiguration pluginConfig, boolean isEnhancedForProxy);
}
diff --git
a/agent/api/src/main/java/org/apache/shardingsphere/agent/spi/definition/AbstractPluginDefinitionService.java
b/agent/api/src/main/java/org/apache/shardingsphere/agent/spi/definition/AbstractPluginDefinitionService.java
index 72d054afdc7..27904109171 100644
---
a/agent/api/src/main/java/org/apache/shardingsphere/agent/spi/definition/AbstractPluginDefinitionService.java
+++
b/agent/api/src/main/java/org/apache/shardingsphere/agent/spi/definition/AbstractPluginDefinitionService.java
@@ -31,21 +31,31 @@ public abstract class AbstractPluginDefinitionService
implements PluginDefinitio
private final Map<String, PluginInterceptorPoint.Builder>
interceptorPointMap = new HashMap<>();
- /**
- * Define interceptors to collection of plugin interceptor point.
- */
- public abstract void defineInterceptors();
-
/**
* Install to collection of plugin interceptor point.
*
+ * @param isEnhancedForProxy is enhanced for proxy
* @return collection of plugin interceptor point
*/
- public final Collection<PluginInterceptorPoint> install() {
- defineInterceptors();
+ public final Collection<PluginInterceptorPoint> install(final boolean
isEnhancedForProxy) {
+ if (isEnhancedForProxy) {
+ defineProxyInterceptors();
+ } else {
+ defineJdbcInterceptors();
+ }
return
interceptorPointMap.values().stream().map(PluginInterceptorPoint.Builder::install).collect(Collectors.toList());
}
+ /**
+ * Define proxy interceptors to collection of plugin interceptor point.
+ */
+ public abstract void defineProxyInterceptors();
+
+ /**
+ * Define JDBC interceptors to collection of plugin interceptor point.
+ */
+ public abstract void defineJdbcInterceptors();
+
protected final PluginInterceptorPoint.Builder defineInterceptor(final
String classNameOfTarget) {
if (interceptorPointMap.containsKey(classNameOfTarget)) {
return interceptorPointMap.get(classNameOfTarget);
diff --git a/agent/bootstrap/pom.xml b/agent/bootstrap/pom.xml
index f9756e9be9d..bacf64ed40e 100644
--- a/agent/bootstrap/pom.xml
+++ b/agent/bootstrap/pom.xml
@@ -84,6 +84,10 @@
<pattern>net.bytebuddy</pattern>
<shadedPattern>${shade.package}.net.bytebuddy</shadedPattern>
</relocation>
+ <relocation>
+ <pattern>com.google</pattern>
+
<shadedPattern>${shade.package}.com.google</shadedPattern>
+ </relocation>
</relocations>
<filters>
<filter>
diff --git
a/agent/bootstrap/src/main/java/org/apache/shardingsphere/agent/bootstrap/ShardingSphereAgent.java
b/agent/bootstrap/src/main/java/org/apache/shardingsphere/agent/bootstrap/ShardingSphereAgent.java
index e8ac497b406..ce324c02dde 100644
---
a/agent/bootstrap/src/main/java/org/apache/shardingsphere/agent/bootstrap/ShardingSphereAgent.java
+++
b/agent/bootstrap/src/main/java/org/apache/shardingsphere/agent/bootstrap/ShardingSphereAgent.java
@@ -27,9 +27,9 @@ import
org.apache.shardingsphere.agent.config.AgentConfiguration;
import org.apache.shardingsphere.agent.config.PluginConfiguration;
import org.apache.shardingsphere.agent.core.bytebuddy.listener.LoggingListener;
import
org.apache.shardingsphere.agent.core.bytebuddy.transformer.ShardingSphereTransformer;
+import org.apache.shardingsphere.agent.core.common.AgentClassLoader;
import
org.apache.shardingsphere.agent.core.config.loader.AgentConfigurationLoader;
import
org.apache.shardingsphere.agent.core.config.registry.AgentConfigurationRegistry;
-import org.apache.shardingsphere.agent.core.common.AgentClassLoader;
import org.apache.shardingsphere.agent.core.plugin.AgentPluginLoader;
import org.apache.shardingsphere.agent.core.plugin.PluginBootServiceManager;
@@ -79,7 +79,7 @@ public final class ShardingSphereAgent {
}
private static void setupPluginBootService(final Map<String,
PluginConfiguration> pluginConfigs) {
- PluginBootServiceManager.startAllServices(pluginConfigs,
AgentClassLoader.getDefaultPluginClassloader());
+ PluginBootServiceManager.startAllServices(pluginConfigs,
AgentClassLoader.getDefaultPluginClassloader(), true);
Runtime.getRuntime().addShutdownHook(new
Thread(PluginBootServiceManager::closeAllServices));
}
diff --git
a/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/AdviceInstanceLoader.java
b/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/AdviceInstanceLoader.java
index 37bae760093..3a071a0d820 100644
---
a/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/AdviceInstanceLoader.java
+++
b/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/AdviceInstanceLoader.java
@@ -106,7 +106,7 @@ public final class AdviceInstanceLoader {
return;
}
try {
-
PluginBootServiceManager.startAllServices(AgentConfigurationRegistry.INSTANCE.get(AgentConfiguration.class).getPlugins(),
classLoader);
+
PluginBootServiceManager.startAllServices(AgentConfigurationRegistry.INSTANCE.get(AgentConfiguration.class).getPlugins(),
classLoader, false);
Runtime.getRuntime().addShutdownHook(new
Thread(PluginBootServiceManager::closeAllServices));
} finally {
isStarted = true;
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 6702b9191e4..48b122e0dc4 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
@@ -107,7 +107,7 @@ public final class AgentPluginLoader implements
PluginLoader {
private void buildPluginInterceptorPointMap(final PluginDefinitionService
pluginDefinitionService, final Map<String, PluginInterceptorPoint> pointMap) {
AbstractPluginDefinitionService definitionService =
(AbstractPluginDefinitionService) pluginDefinitionService;
- definitionService.install().forEach(each -> {
+ definitionService.install(isEnhancedForProxy).forEach(each -> {
String target = each.getClassNameOfTarget();
if (pointMap.containsKey(target)) {
PluginInterceptorPoint pluginInterceptorPoint =
pointMap.get(target);
diff --git
a/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/PluginBootServiceManager.java
b/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/PluginBootServiceManager.java
index 350a0a529cd..71b02929aa6 100644
---
a/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/PluginBootServiceManager.java
+++
b/agent/core/src/main/java/org/apache/shardingsphere/agent/core/plugin/PluginBootServiceManager.java
@@ -41,8 +41,9 @@ public final class PluginBootServiceManager {
*
* @param pluginConfigurationMap plugin configuration map
* @param classLoader classLoader
+ * @param isEnhancedForProxy is enhanced for proxy
*/
- public static void startAllServices(final Map<String, PluginConfiguration>
pluginConfigurationMap, final ClassLoader classLoader) {
+ public static void startAllServices(final Map<String, PluginConfiguration>
pluginConfigurationMap, final ClassLoader classLoader, final boolean
isEnhancedForProxy) {
ClassLoader originalClassLoader =
Thread.currentThread().getContextClassLoader();
try {
Thread.currentThread().setContextClassLoader(classLoader);
@@ -50,7 +51,7 @@ public final class PluginBootServiceManager {
AgentTypedSPIRegistry.getRegisteredServiceOptional(PluginBootService.class,
entry.getKey()).ifPresent(optional -> {
try {
LOGGER.info("Start plugin: {}", optional.getType());
- optional.start(entry.getValue());
+ optional.start(entry.getValue(), isEnhancedForProxy);
// CHECKSTYLE:OFF
} catch (final Throwable ex) {
// CHECKSTYLE:ON
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/BaseLoggingPluginDefinitionService.java
index 49c648f0712..f4083132b7c 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/BaseLoggingPluginDefinitionService.java
@@ -33,9 +33,17 @@ public final class BaseLoggingPluginDefinitionService
extends AbstractPluginDefi
private static final String SCHEMA_METADATA_LOADER_ADVICE_CLASS =
MetaDataContextsFactoryAdvice.class.getName();
@Override
- public void defineInterceptors() {
+ public void defineProxyInterceptors() {
defineInterceptor(SCHEMA_METADATA_LOADER_CLASS)
-
.aroundClassStaticMethod(ElementMatchers.named(SCHEMA_METADATA_LOADER_METHOD_NAME))
+
.aroundClassStaticMethod(ElementMatchers.named(SCHEMA_METADATA_LOADER_METHOD_NAME).and(ElementMatchers.takesArguments(4)))
+ .implement(SCHEMA_METADATA_LOADER_ADVICE_CLASS)
+ .build();
+ }
+
+ @Override
+ public void defineJdbcInterceptors() {
+ defineInterceptor(SCHEMA_METADATA_LOADER_CLASS)
+
.aroundClassStaticMethod(ElementMatchers.named(SCHEMA_METADATA_LOADER_METHOD_NAME).and(ElementMatchers.takesArguments(4)))
.implement(SCHEMA_METADATA_LOADER_ADVICE_CLASS)
.build();
}
diff --git
a/agent/plugins/logging/base/src/main/java/org/apache/shardingsphere/agent/plugin/logging/base/service/BaseLoggingPluginBootService.java
b/agent/plugins/logging/base/src/main/java/org/apache/shardingsphere/agent/plugin/logging/base/service/BaseLoggingPluginBootService.java
index 29bc7483fdc..1ae973a93fc 100644
---
a/agent/plugins/logging/base/src/main/java/org/apache/shardingsphere/agent/plugin/logging/base/service/BaseLoggingPluginBootService.java
+++
b/agent/plugins/logging/base/src/main/java/org/apache/shardingsphere/agent/plugin/logging/base/service/BaseLoggingPluginBootService.java
@@ -26,7 +26,7 @@ import
org.apache.shardingsphere.agent.spi.boot.PluginBootService;
public final class BaseLoggingPluginBootService implements PluginBootService {
@Override
- public void start(final PluginConfiguration pluginConfig) {
+ public void start(final PluginConfiguration pluginConfig, final boolean
isEnhancedForProxy) {
}
@Override
diff --git
a/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/BuildInfoCollector.java
b/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/BuildInfoCollector.java
index 1ef9bdcb970..f89d0320460 100644
---
a/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/BuildInfoCollector.java
+++
b/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/BuildInfoCollector.java
@@ -19,6 +19,7 @@ package
org.apache.shardingsphere.agent.metrics.prometheus.collector;
import io.prometheus.client.Collector;
import io.prometheus.client.GaugeMetricFamily;
+import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.shardingsphere.agent.metrics.api.constant.MetricIds;
import
org.apache.shardingsphere.agent.metrics.prometheus.wrapper.PrometheusWrapperFactory;
@@ -32,12 +33,15 @@ import java.util.Optional;
* Build information collector.
*/
@Slf4j
+@RequiredArgsConstructor
public final class BuildInfoCollector extends Collector {
private static final String PROXY_BOOTSTRAP_CLASS =
"org.apache.shardingsphere.proxy.Bootstrap";
private static final PrometheusWrapperFactory FACTORY = new
PrometheusWrapperFactory();
+ private final boolean isEnhancedForProxy;
+
@Override
public List<MetricFamilySamples> collect() {
Optional<GaugeMetricFamily> artifactInfo =
FACTORY.createGaugeMetricFamily(MetricIds.BUILD_INFO);
@@ -45,10 +49,12 @@ public final class BuildInfoCollector extends Collector {
return Collections.emptyList();
}
addMetric(artifactInfo.get(), getClass().getPackage());
- try {
- addMetric(artifactInfo.get(),
Class.forName(PROXY_BOOTSTRAP_CLASS).getPackage());
- } catch (final ClassNotFoundException ignored) {
- log.warn("No proxy class find");
+ if (isEnhancedForProxy) {
+ try {
+ addMetric(artifactInfo.get(),
Class.forName(PROXY_BOOTSTRAP_CLASS).getPackage());
+ } catch (final ClassNotFoundException ignored) {
+ log.warn("No proxy class found");
+ }
}
return Collections.singletonList(artifactInfo.get());
}
diff --git
a/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionService.java
b/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionService.java
index 651430db3c7..f7a8a3e3eb7 100644
---
a/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionService.java
+++
b/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionService.java
@@ -17,7 +17,6 @@
package org.apache.shardingsphere.agent.metrics.prometheus.definition;
-import lombok.extern.slf4j.Slf4j;
import net.bytebuddy.matcher.ElementMatchers;
import
org.apache.shardingsphere.agent.api.point.PluginInterceptorPoint.Builder;
import org.apache.shardingsphere.agent.core.entity.Interceptor;
@@ -31,11 +30,10 @@ import java.io.InputStream;
/**
* Metrics plugin definition service.
*/
-@Slf4j
public final class PrometheusPluginDefinitionService extends
AbstractPluginDefinitionService {
@Override
- public void defineInterceptors() {
+ public void defineProxyInterceptors() {
InputStream inputStream =
getClass().getResourceAsStream("/prometheus/interceptors.yaml");
Interceptors interceptors = new Yaml().loadAs(inputStream,
Interceptors.class);
for (Interceptor each : interceptors.getInterceptors()) {
@@ -45,7 +43,6 @@ public final class PrometheusPluginDefinitionService extends
AbstractPluginDefin
Builder builder = defineInterceptor(each.getTarget());
if (null != each.getConstructAdvice() &&
!("".equals(each.getConstructAdvice()))) {
builder.onConstructor(ElementMatchers.isConstructor()).implement(each.getConstructAdvice()).build();
- log.debug("Init construct: {}", each.getConstructAdvice());
}
if (null == each.getPoints()) {
continue;
@@ -54,15 +51,18 @@ public final class PrometheusPluginDefinitionService
extends AbstractPluginDefin
String[] staticPoints = each.getPoints().stream().filter(i ->
"static".equals(i.getType())).map(TargetPoint::getName).toArray(String[]::new);
if (instancePoints.length > 0) {
builder.aroundInstanceMethod(ElementMatchers.namedOneOf(instancePoints)).implement(each.getInstanceAdvice()).build();
- log.debug("Init instance: {}", each.getInstanceAdvice());
}
if (staticPoints.length > 0) {
builder.aroundClassStaticMethod(ElementMatchers.namedOneOf(staticPoints)).implement(each.getStaticAdvice()).build();
- log.debug("Init static: {}", each.getStaticAdvice());
}
}
}
+ @Override
+ public void defineJdbcInterceptors() {
+ // TODO add JDBC related interception
+ }
+
@Override
public String getType() {
return "Prometheus";
diff --git
a/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/service/PrometheusPluginBootService.java
b/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/service/PrometheusPluginBootService.java
index 0a7c33db8bf..dfcceff26c5 100644
---
a/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/service/PrometheusPluginBootService.java
+++
b/agent/plugins/metrics/prometheus/src/main/java/org/apache/shardingsphere/agent/metrics/prometheus/service/PrometheusPluginBootService.java
@@ -41,11 +41,14 @@ public final class PrometheusPluginBootService implements
PluginBootService {
private static final String KEY_JVM_INFORMATION_COLLECTOR_ENABLED =
"jvm-information-collector-enabled";
+ private boolean isEnhancedForProxy;
+
private HTTPServer httpServer;
@Override
- public void start(final PluginConfiguration pluginConfig) {
+ public void start(final PluginConfiguration pluginConfig, final boolean
isEnhancedForProxy) {
Preconditions.checkState(pluginConfig.getPort() > 0, "Prometheus
config error, host is null or port is `%s`", pluginConfig.getPort());
+ this.isEnhancedForProxy = isEnhancedForProxy;
startServer(pluginConfig);
MetricsPool.setMetricsFactory(new PrometheusWrapperFactory());
}
@@ -62,9 +65,11 @@ public final class PrometheusPluginBootService implements
PluginBootService {
}
private void registerCollector(final boolean enabled) {
- new ProxyInfoCollector().register();
- new BuildInfoCollector().register();
- new MetaDataInfoCollector().register();
+ new BuildInfoCollector(isEnhancedForProxy).register();
+ if (isEnhancedForProxy) {
+ new ProxyInfoCollector().register();
+ new MetaDataInfoCollector().register();
+ }
if (enabled) {
DefaultExports.initialize();
}
diff --git
a/agent/plugins/metrics/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/BuildInfoCollectorTest.java
b/agent/plugins/metrics/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/BuildInfoCollectorTest.java
index fcb5bda41c5..1996cbbe3c5 100644
---
a/agent/plugins/metrics/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/BuildInfoCollectorTest.java
+++
b/agent/plugins/metrics/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/collector/BuildInfoCollectorTest.java
@@ -25,6 +25,6 @@ public final class BuildInfoCollectorTest {
@Test
public void assertCollect() {
- assertFalse(new BuildInfoCollector().collect().isEmpty());
+ assertFalse(new BuildInfoCollector(true).collect().isEmpty());
}
}
diff --git
a/agent/plugins/metrics/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionServiceTest.java
b/agent/plugins/metrics/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionServiceTest.java
index 13c55166507..7aae0f1a3cd 100644
---
a/agent/plugins/metrics/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionServiceTest.java
+++
b/agent/plugins/metrics/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/definition/PrometheusPluginDefinitionServiceTest.java
@@ -26,6 +26,6 @@ public final class PrometheusPluginDefinitionServiceTest {
@Test
public void assertDefine() {
- assertThat(new PrometheusPluginDefinitionService().install().size(),
is(5));
+ assertThat(new
PrometheusPluginDefinitionService().install(true).size(), is(5));
}
}
diff --git
a/agent/plugins/metrics/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/service/PrometheusPluginBootServiceTest.java
b/agent/plugins/metrics/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/service/PrometheusPluginBootServiceTest.java
index 5afa0da2add..6f44055c8c9 100644
---
a/agent/plugins/metrics/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/service/PrometheusPluginBootServiceTest.java
+++
b/agent/plugins/metrics/prometheus/src/test/java/org/apache/shardingsphere/agent/metrics/prometheus/service/PrometheusPluginBootServiceTest.java
@@ -57,7 +57,7 @@ public final class PrometheusPluginBootServiceTest extends
ProxyContextRestorer
new ComputeNodeInstance(mock(InstanceMetaData.class)), new
StandaloneWorkerIdGenerator(), new ModeConfiguration("Standalone", null),
mock(LockContext.class),
new EventBusContext());
ProxyContext.init(new ContextManager(metaDataContexts,
instanceContext));
- PROMETHEUS_PLUGIN_BOOT_SERVICE.start(new
PluginConfiguration("localhost", 8090, "", createProperties()));
+ PROMETHEUS_PLUGIN_BOOT_SERVICE.start(new
PluginConfiguration("localhost", 8090, "", createProperties()), true);
new Socket().connect(new InetSocketAddress("localhost", 8090));
}
diff --git a/agent/plugins/pom.xml b/agent/plugins/pom.xml
index af5ec1e75dc..09c6bae0e62 100644
--- a/agent/plugins/pom.xml
+++ b/agent/plugins/pom.xml
@@ -82,6 +82,18 @@
<pattern>net.bytebuddy</pattern>
<shadedPattern>${shade.package}.net.bytebuddy</shadedPattern>
</relocation>
+ <relocation>
+ <pattern>org.yaml</pattern>
+
<shadedPattern>${shade.package}.org.yaml</shadedPattern>
+ </relocation>
+ <relocation>
+ <pattern>com.google</pattern>
+
<shadedPattern>${shade.package}.com.google</shadedPattern>
+ </relocation>
+ <relocation>
+ <pattern>org.apache.commons</pattern>
+
<shadedPattern>${shade.package}.org.apache.commons</shadedPattern>
+ </relocation>
</relocations>
<filters>
<filter>
diff --git
a/agent/plugins/tracing/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionService.java
b/agent/plugins/tracing/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionService.java
index ea8f57f39e1..8a603379f9a 100644
---
a/agent/plugins/tracing/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionService.java
+++
b/agent/plugins/tracing/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionService.java
@@ -46,7 +46,7 @@ public final class JaegerPluginDefinitionService extends
AbstractPluginDefinitio
private static final String JDBC_EXECUTOR_CALLBACK_ADVICE_CLASS =
"org.apache.shardingsphere.agent.plugin.tracing.jaeger.advice.JDBCExecutorCallbackAdvice";
@Override
- public void defineInterceptors() {
+ public void defineProxyInterceptors() {
defineInterceptor(COMMAND_EXECUTOR_TASK_ENHANCE_CLASS)
.aroundInstanceMethod(ElementMatchers.named(COMMAND_EXECUTOR_METHOD_NAME))
.implement(COMMAND_EXECUTOR_TASK_ADVICE_CLASS)
@@ -63,6 +63,11 @@ public final class JaegerPluginDefinitionService extends
AbstractPluginDefinitio
.build();
}
+ @Override
+ public void defineJdbcInterceptors() {
+ // TODO add JDBC related interception
+ }
+
@Override
public String getType() {
return "Jaeger";
diff --git
a/agent/plugins/tracing/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/service/JaegerTracingPluginBootService.java
b/agent/plugins/tracing/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/service/JaegerTracingPluginBootService.java
index 82a7fd391ff..435ddf9da7e 100644
---
a/agent/plugins/tracing/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/service/JaegerTracingPluginBootService.java
+++
b/agent/plugins/tracing/jaeger/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/service/JaegerTracingPluginBootService.java
@@ -37,7 +37,7 @@ public final class JaegerTracingPluginBootService implements
PluginBootService {
@SuppressWarnings("AccessOfSystemProperties")
@Override
- public void start(final PluginConfiguration pluginConfig) {
+ public void start(final PluginConfiguration pluginConfig, final boolean
isEnhancedForProxy) {
pluginConfig.validate("Jaeger");
pluginConfig.getProps().forEach((key, value) ->
setSystemProperty(String.valueOf(key), String.valueOf(value)));
Configuration.SamplerConfiguration samplerConfig =
Configuration.SamplerConfiguration.fromEnv();
diff --git
a/agent/plugins/tracing/jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionServiceTest.java
b/agent/plugins/tracing/jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionServiceTest.java
index 506755bb91e..11e6e79c28f 100644
---
a/agent/plugins/tracing/jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionServiceTest.java
+++
b/agent/plugins/tracing/jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/definition/JaegerPluginDefinitionServiceTest.java
@@ -26,6 +26,6 @@ public final class JaegerPluginDefinitionServiceTest {
@Test
public void assertDefine() {
- assertThat(new JaegerPluginDefinitionService().install().size(),
is(3));
+ assertThat(new JaegerPluginDefinitionService().install(true).size(),
is(3));
}
}
diff --git
a/agent/plugins/tracing/jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/service/JaegerTracingPluginBootServiceTest.java
b/agent/plugins/tracing/jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/service/JaegerTracingPluginBootServiceTest.java
index 7a26562db6b..f8a5134cb76 100644
---
a/agent/plugins/tracing/jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/service/JaegerTracingPluginBootServiceTest.java
+++
b/agent/plugins/tracing/jaeger/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/jaeger/service/JaegerTracingPluginBootServiceTest.java
@@ -34,7 +34,7 @@ public final class JaegerTracingPluginBootServiceTest {
@Test
public void assertStart() {
- jaegerTracingPluginBootService.start(new
PluginConfiguration("localhost", 5775, "", createProperties()));
+ jaegerTracingPluginBootService.start(new
PluginConfiguration("localhost", 5775, "", createProperties()), true);
assertTrue(GlobalTracer.isRegistered());
}
diff --git
a/agent/plugins/tracing/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionService.java
b/agent/plugins/tracing/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionService.java
index f5d0f332ef1..ba2f93c4c0a 100644
---
a/agent/plugins/tracing/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionService.java
+++
b/agent/plugins/tracing/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionService.java
@@ -46,7 +46,7 @@ public class OpenTelemetryTracingPluginDefinitionService
extends AbstractPluginD
private static final String JDBC_EXECUTOR_CALLBACK_ADVICE_CLASS =
"org.apache.shardingsphere.agent.plugin.tracing.opentelemetry.advice.JDBCExecutorCallbackAdvice";
@Override
- public void defineInterceptors() {
+ public void defineProxyInterceptors() {
defineInterceptor(COMMAND_EXECUTOR_TASK_ENHANCE_CLASS)
.aroundInstanceMethod(ElementMatchers.named(COMMAND_EXECUTOR_METHOD_NAME))
.implement(COMMAND_EXECUTOR_TASK_ADVICE_CLASS)
@@ -63,6 +63,11 @@ public class OpenTelemetryTracingPluginDefinitionService
extends AbstractPluginD
.build();
}
+ @Override
+ public void defineJdbcInterceptors() {
+ // TODO add JDBC related interception
+ }
+
@Override
public String getType() {
return "OpenTelemetry";
diff --git
a/agent/plugins/tracing/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/service/OpenTelemetryTracingPluginBootService.java
b/agent/plugins/tracing/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/service/OpenTelemetryTracingPluginBootService.java
index ea1bf3b7268..55184bc59f2 100644
---
a/agent/plugins/tracing/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/service/OpenTelemetryTracingPluginBootService.java
+++
b/agent/plugins/tracing/opentelemetry/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/service/OpenTelemetryTracingPluginBootService.java
@@ -25,7 +25,7 @@ import
org.apache.shardingsphere.agent.spi.boot.PluginBootService;
public class OpenTelemetryTracingPluginBootService implements
PluginBootService {
@Override
- public void start(final PluginConfiguration pluginConfig) {
+ public void start(final PluginConfiguration pluginConfig, final boolean
isEnhancedForProxy) {
pluginConfig.getProps().forEach((key, value) ->
setSystemProperty(String.valueOf(key), String.valueOf(value)));
OpenTelemetrySdk sdk = OpenTelemetrySdkAutoConfiguration.initialize();
// tracer will be created
diff --git
a/agent/plugins/tracing/opentelemetry/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionServiceTest.java
b/agent/plugins/tracing/opentelemetry/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionServiceTest.java
index cc3039be2c5..bffdbeda5e6 100644
---
a/agent/plugins/tracing/opentelemetry/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionServiceTest.java
+++
b/agent/plugins/tracing/opentelemetry/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/definition/OpenTelemetryTracingPluginDefinitionServiceTest.java
@@ -26,6 +26,6 @@ public final class
OpenTelemetryTracingPluginDefinitionServiceTest {
@Test
public void assertDefine() {
- assertThat(new
OpenTelemetryTracingPluginDefinitionService().install().size(), is(3));
+ assertThat(new
OpenTelemetryTracingPluginDefinitionService().install(true).size(), is(3));
}
}
diff --git
a/agent/plugins/tracing/opentelemetry/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/service/OpenTelemetryTracingPluginBootServiceTest.java
b/agent/plugins/tracing/opentelemetry/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/service/OpenTelemetryTracingPluginBootServiceTest.java
index 56c6d994f77..04d68c08f5b 100644
---
a/agent/plugins/tracing/opentelemetry/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/service/OpenTelemetryTracingPluginBootServiceTest.java
+++
b/agent/plugins/tracing/opentelemetry/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentelemetry/service/OpenTelemetryTracingPluginBootServiceTest.java
@@ -30,7 +30,7 @@ public final class OpenTelemetryTracingPluginBootServiceTest {
@Test
public void assertStart() {
- new OpenTelemetryTracingPluginBootService().start(new
PluginConfiguration(null, 0, null, createProperties()));
+ new OpenTelemetryTracingPluginBootService().start(new
PluginConfiguration(null, 0, null, createProperties()), true);
assertNotNull(GlobalOpenTelemetry.getTracerProvider());
assertNotNull(GlobalOpenTelemetry.getTracer("shardingsphere-agent"));
}
diff --git
a/agent/plugins/tracing/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionService.java
b/agent/plugins/tracing/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionService.java
index ed222283ce0..8260f530357 100644
---
a/agent/plugins/tracing/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionService.java
+++
b/agent/plugins/tracing/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionService.java
@@ -46,7 +46,7 @@ public final class OpenTracingPluginDefinitionService extends
AbstractPluginDefi
private static final String JDBC_EXECUTOR_CALLBACK_ADVICE_CLASS =
"org.apache.shardingsphere.agent.plugin.tracing.opentracing.advice.JDBCExecutorCallbackAdvice";
@Override
- public void defineInterceptors() {
+ public void defineProxyInterceptors() {
defineInterceptor(COMMAND_EXECUTOR_TASK_ENHANCE_CLASS)
.aroundInstanceMethod(ElementMatchers.named(COMMAND_EXECUTOR_METHOD_NAME))
.implement(COMMAND_EXECUTOR_TASK_ADVICE_CLASS)
@@ -63,6 +63,11 @@ public final class OpenTracingPluginDefinitionService
extends AbstractPluginDefi
.build();
}
+ @Override
+ public void defineJdbcInterceptors() {
+ // TODO add JDBC related interception
+ }
+
@Override
public String getType() {
return "OpenTracing";
diff --git
a/agent/plugins/tracing/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/service/OpenTracingPluginBootService.java
b/agent/plugins/tracing/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/service/OpenTracingPluginBootService.java
index 3ba67c20849..b6ec60ed663 100644
---
a/agent/plugins/tracing/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/service/OpenTracingPluginBootService.java
+++
b/agent/plugins/tracing/opentracing/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/service/OpenTracingPluginBootService.java
@@ -31,7 +31,7 @@ public final class OpenTracingPluginBootService implements
PluginBootService {
private static final String KEY_OPENTRACING_TRACER_CLASS_NAME =
"opentracing-tracer-class-name";
@Override
- public void start(final PluginConfiguration pluginConfig) {
+ public void start(final PluginConfiguration pluginConfig, final boolean
isEnhancedForProxy) {
String tracerClassName =
pluginConfig.getProps().getProperty(KEY_OPENTRACING_TRACER_CLASS_NAME);
Preconditions.checkNotNull(tracerClassName, "Can not find opentracing
tracer implementation in you config");
try {
diff --git
a/agent/plugins/tracing/opentracing/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionServiceTest.java
b/agent/plugins/tracing/opentracing/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionServiceTest.java
index c2810fd1ca1..7a48daff238 100644
---
a/agent/plugins/tracing/opentracing/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionServiceTest.java
+++
b/agent/plugins/tracing/opentracing/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/definition/OpenTracingPluginDefinitionServiceTest.java
@@ -26,6 +26,6 @@ public final class OpenTracingPluginDefinitionServiceTest {
@Test
public void assertDefine() {
- assertThat(new OpenTracingPluginDefinitionService().install().size(),
is(3));
+ assertThat(new
OpenTracingPluginDefinitionService().install(true).size(), is(3));
}
}
diff --git
a/agent/plugins/tracing/opentracing/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/service/OpenTracingPluginBootServiceTest.java
b/agent/plugins/tracing/opentracing/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/service/OpenTracingPluginBootServiceTest.java
index 0812d589cbc..ea4e890efc4 100644
---
a/agent/plugins/tracing/opentracing/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/service/OpenTracingPluginBootServiceTest.java
+++
b/agent/plugins/tracing/opentracing/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/opentracing/service/OpenTracingPluginBootServiceTest.java
@@ -32,7 +32,7 @@ public final class OpenTracingPluginBootServiceTest {
@Test
public void assertStart() {
- openTracingPluginBootService.start(new
PluginConfiguration("localhost", 8090, "", createProperties()));
+ openTracingPluginBootService.start(new
PluginConfiguration("localhost", 8090, "", createProperties()), true);
assertTrue(GlobalTracer.isRegistered());
}
diff --git
a/agent/plugins/tracing/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionService.java
b/agent/plugins/tracing/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionService.java
index 5c6dbb10177..af268658a9f 100644
---
a/agent/plugins/tracing/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionService.java
+++
b/agent/plugins/tracing/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionService.java
@@ -46,7 +46,7 @@ public final class ZipkinPluginDefinitionService extends
AbstractPluginDefinitio
private static final String JDBC_EXECUTOR_CALLBACK_ADVICE_CLASS =
"org.apache.shardingsphere.agent.plugin.tracing.zipkin.advice.JDBCExecutorCallbackAdvice";
@Override
- public void defineInterceptors() {
+ public void defineProxyInterceptors() {
defineInterceptor(COMMAND_EXECUTOR_TASK_ENHANCE_CLASS)
.aroundInstanceMethod(ElementMatchers.named(COMMAND_EXECUTOR_METHOD_NAME))
.implement(COMMAND_EXECUTOR_TASK_ADVICE_CLASS)
@@ -63,6 +63,11 @@ public final class ZipkinPluginDefinitionService extends
AbstractPluginDefinitio
.build();
}
+ @Override
+ public void defineJdbcInterceptors() {
+ // TODO add JDBC related interception
+ }
+
@Override
public String getType() {
return "Zipkin";
diff --git
a/agent/plugins/tracing/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/service/ZipkinTracingPluginBootService.java
b/agent/plugins/tracing/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/service/ZipkinTracingPluginBootService.java
index 42a965353b4..9e5c4ae5f49 100644
---
a/agent/plugins/tracing/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/service/ZipkinTracingPluginBootService.java
+++
b/agent/plugins/tracing/zipkin/src/main/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/service/ZipkinTracingPluginBootService.java
@@ -57,7 +57,7 @@ public final class ZipkinTracingPluginBootService implements
PluginBootService {
private Tracing tracing;
@Override
- public void start(final PluginConfiguration pluginConfig) {
+ public void start(final PluginConfiguration pluginConfig, final boolean
isEnhancedForProxy) {
pluginConfig.validate("Zipkin");
Properties props = pluginConfig.getProps();
String urlVersion =
Optional.ofNullable(props.getProperty(KEY_URL_VERSION)).orElse(DEFAULT_URL_VERSION);
diff --git
a/agent/plugins/tracing/zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionServiceTest.java
b/agent/plugins/tracing/zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionServiceTest.java
index b38b75cd663..6a9fbb6f4de 100644
---
a/agent/plugins/tracing/zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionServiceTest.java
+++
b/agent/plugins/tracing/zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/definition/ZipkinPluginDefinitionServiceTest.java
@@ -26,6 +26,6 @@ public final class ZipkinPluginDefinitionServiceTest {
@Test
public void assertDefine() {
- assertThat(new ZipkinPluginDefinitionService().install().size(),
is(3));
+ assertThat(new ZipkinPluginDefinitionService().install(true).size(),
is(3));
}
}
diff --git
a/agent/plugins/tracing/zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/service/ZipkinTracingPluginBootServiceTest.java
b/agent/plugins/tracing/zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/service/ZipkinTracingPluginBootServiceTest.java
index 906601d7c00..ada7b183dac 100644
---
a/agent/plugins/tracing/zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/service/ZipkinTracingPluginBootServiceTest.java
+++
b/agent/plugins/tracing/zipkin/src/test/java/org/apache/shardingsphere/agent/plugin/tracing/zipkin/service/ZipkinTracingPluginBootServiceTest.java
@@ -33,7 +33,7 @@ public final class ZipkinTracingPluginBootServiceTest {
@Test
public void assertStart() throws ReflectiveOperationException {
- zipkinTracingPluginBootService.start(new
PluginConfiguration("localhost", 9441, "", new Properties()));
+ zipkinTracingPluginBootService.start(new
PluginConfiguration("localhost", 9441, "", new Properties()), true);
Field field =
ZipkinTracingPluginBootService.class.getDeclaredField("tracing");
field.setAccessible(true);
Tracing tracing = (Tracing) field.get(zipkinTracingPluginBootService);