diff --git a/apm-collector/apm-collector-core/pom.xml b/apm-collector/apm-collector-core/pom.xml
index 3ab0bc9dcb2ddb75c912b4c234ca56bafafad65b..9b9a295651e93919550faa0e6146b3710e4cc9ec 100644
--- a/apm-collector/apm-collector-core/pom.xml
+++ b/apm-collector/apm-collector-core/pom.xml
@@ -18,10 +18,5 @@
gson
2.8.1
-
- net.bytebuddy
- byte-buddy
- 1.7.8
-
-
\ No newline at end of file
+
diff --git a/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/BootstrapFlow.java b/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/BootstrapFlow.java
index 351339218616c7642cfcc89a1e654a992730a4c9..9cd994750c920ea76ad949aa6d98cd9c59404f7c 100644
--- a/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/BootstrapFlow.java
+++ b/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/BootstrapFlow.java
@@ -58,9 +58,9 @@ public class BootstrapFlow {
}
}
logger.info("start the provider {} in {} module.", provider.name(), provider.getModuleName());
- provider.start(configuration.getModuleConfiguration(provider.getModuleName()).getProviderConfiguration(provider.name()));
-
provider.requiredCheck(provider.getModule().services());
+
+ provider.start(configuration.getModuleConfiguration(provider.getModuleName()).getProviderConfiguration(provider.name()));
}
}
diff --git a/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/ModuleManager.java b/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/ModuleManager.java
index 6bf0d4452fe1b106e1a7b4cef4918dd4982959bc..b0cad6aeefd6b7091d169902dd9315acf89198e6 100644
--- a/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/ModuleManager.java
+++ b/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/ModuleManager.java
@@ -31,7 +31,6 @@ import java.util.ServiceLoader;
*/
public class ModuleManager {
private Map loadedModules = new HashMap<>();
- private boolean isServiceInstrument = true;
/**
* Init the given modules
@@ -81,12 +80,4 @@ public class ModuleManager {
return module;
throw new ModuleNotFoundException(moduleName + " missing.");
}
-
- public boolean isServiceInstrument() {
- return isServiceInstrument;
- }
-
- public void setServiceInstrument(boolean serviceInstrument) {
- isServiceInstrument = serviceInstrument;
- }
}
diff --git a/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/ModuleProvider.java b/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/ModuleProvider.java
index aaa7ed16519165dc0fd4f21bada7986613a84b46..b0d01e4ef52723038200e895372a8ca5d8c12df2 100644
--- a/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/ModuleProvider.java
+++ b/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/ModuleProvider.java
@@ -21,7 +21,6 @@ package org.skywalking.apm.collector.core.module;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
-import org.skywalking.apm.collector.core.module.instrument.ServiceInstrumentation;
/**
* The ModuleProvider
is an implementation of a {@link Module}.
@@ -95,9 +94,6 @@ public abstract class ModuleProvider {
protected final void registerServiceImplementation(Class extends Service> serviceType,
Service service) throws ServiceNotProvidedException {
if (serviceType.isInstance(service)) {
- if (manager.isServiceInstrument()) {
-// service = ServiceInstrumentation.INSTANCE.buildServiceUnderMonitor(module.name(), name(), service);
- }
this.services.put(serviceType, service);
} else {
throw new ServiceNotProvidedException(serviceType + " is not implemented by " + service);
diff --git a/apm-collector/apm-collector-core/src/test/java/org/skywalking/apm/collector/core/module/ModuleAProvider.java b/apm-collector/apm-collector-core/src/test/java/org/skywalking/apm/collector/core/module/ModuleAProvider.java
index 332af247c695fb8afddcb7ecb52143239c97d82d..7b69ca52a1aff92685a6899d87611dc1a8cffc78 100644
--- a/apm-collector/apm-collector-core/src/test/java/org/skywalking/apm/collector/core/module/ModuleAProvider.java
+++ b/apm-collector/apm-collector-core/src/test/java/org/skywalking/apm/collector/core/module/ModuleAProvider.java
@@ -34,10 +34,10 @@ public class ModuleAProvider extends ModuleProvider {
@Override public void prepare(Properties config) throws ServiceNotProvidedException {
this.registerServiceImplementation(BaseModuleA.ServiceABusiness1.class, new ModuleABusiness1Impl());
+ this.registerServiceImplementation(BaseModuleA.ServiceABusiness2.class, new ModuleABusiness2Impl());
}
@Override public void start(Properties config) throws ServiceNotProvidedException {
- this.registerServiceImplementation(BaseModuleA.ServiceABusiness2.class, new ModuleABusiness2Impl());
}
@Override public void notifyAfterCompleted() throws ServiceNotProvidedException {
diff --git a/apm-collector/apm-collector-core/src/test/java/org/skywalking/apm/collector/core/module/ModuleBProvider.java b/apm-collector/apm-collector-core/src/test/java/org/skywalking/apm/collector/core/module/ModuleBProvider.java
index 3b5066340efd6b6fefe52354f7ea92bcac7fb220..1329595990e3a6722eacfe3e960e4cea44a385ba 100644
--- a/apm-collector/apm-collector-core/src/test/java/org/skywalking/apm/collector/core/module/ModuleBProvider.java
+++ b/apm-collector/apm-collector-core/src/test/java/org/skywalking/apm/collector/core/module/ModuleBProvider.java
@@ -34,10 +34,10 @@ public class ModuleBProvider extends ModuleProvider {
@Override public void prepare(Properties config) throws ServiceNotProvidedException {
this.registerServiceImplementation(BaseModuleB.ServiceBBusiness1.class, new ModuleBBusiness1Impl());
+ this.registerServiceImplementation(BaseModuleB.ServiceBBusiness2.class, new ModuleBBusiness2Impl());
}
@Override public void start(Properties config) throws ServiceNotProvidedException {
- this.registerServiceImplementation(BaseModuleB.ServiceBBusiness2.class, new ModuleBBusiness2Impl());
}
@Override public void notifyAfterCompleted() throws ServiceNotProvidedException {
diff --git a/apm-collector/apm-collector-core/src/test/java/org/skywalking/apm/collector/core/module/ModuleManagerTest.java b/apm-collector/apm-collector-core/src/test/java/org/skywalking/apm/collector/core/module/ModuleManagerTest.java
index 5965e1025392c7fe8cd0d0de6c69a162d8d12c59..8172d59c16cfc22db64fa3911379d7eea9e749e1 100644
--- a/apm-collector/apm-collector-core/src/test/java/org/skywalking/apm/collector/core/module/ModuleManagerTest.java
+++ b/apm-collector/apm-collector-core/src/test/java/org/skywalking/apm/collector/core/module/ModuleManagerTest.java
@@ -20,7 +20,6 @@ package org.skywalking.apm.collector.core.module;
import org.junit.Assert;
import org.junit.Test;
-import org.skywalking.apm.collector.core.module.instrument.TracedService;
/**
* @author wu-sheng
@@ -39,38 +38,4 @@ public class ModuleManagerTest {
BaseModuleA.ServiceABusiness1 serviceABusiness1 = manager.find("BaseA").provider().getService(BaseModuleA.ServiceABusiness1.class);
Assert.assertTrue(serviceABusiness1 != null);
}
-
- @Test
- public void testInstrument() throws ServiceNotProvidedException, ModuleNotFoundException, ProviderNotFoundException, DuplicateProviderException {
- ApplicationConfiguration configuration = new ApplicationConfiguration();
- configuration.addModule("Test").addProviderConfiguration("TestModule-Provider", null);
- configuration.addModule("BaseA").addProviderConfiguration("P-A", null);
- configuration.addModule("BaseB").addProviderConfiguration("P-B", null);
-
- ModuleManager manager = new ModuleManager();
- manager.setServiceInstrument(true);
- manager.init(configuration);
-
- BaseModuleA.ServiceABusiness1 serviceABusiness1 = manager.find("BaseA").getService(BaseModuleA.ServiceABusiness1.class);
-
- Assert.assertTrue(serviceABusiness1 instanceof TracedService);
-
-// for (int i = 0; i < 10000; i++)
-// serviceABusiness1.print();
-//
-// try {
-// Thread.sleep(60 * 1000L);
-// } catch (InterruptedException e) {
-// e.printStackTrace();
-// }
-//
-// for (int i = 0; i < 10000; i++)
-// serviceABusiness1.print();
-//
-// try {
-// Thread.sleep(120 * 1000L);
-// } catch (InterruptedException e) {
-// e.printStackTrace();
-// }
- }
}
diff --git a/apm-collector/apm-collector-instrument/pom.xml b/apm-collector/apm-collector-instrument/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..39817d613a863ea738f0a15cf3afd9ae2c308de2
--- /dev/null
+++ b/apm-collector/apm-collector-instrument/pom.xml
@@ -0,0 +1,44 @@
+
+
+
+
+
+ apm-collector
+ org.skywalking
+ 3.2.4-2017
+
+ 4.0.0
+
+ apm-collector-instrument
+
+
+
+ org.skywalking
+ apm-collector-core
+ ${project.version}
+
+
+ net.bytebuddy
+ byte-buddy
+ 1.7.8
+
+
+
diff --git a/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/instrument/MetricCollector.java b/apm-collector/apm-collector-instrument/src/main/java/org/skywalking/apm/collector/instrument/MetricCollector.java
similarity index 99%
rename from apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/instrument/MetricCollector.java
rename to apm-collector/apm-collector-instrument/src/main/java/org/skywalking/apm/collector/instrument/MetricCollector.java
index 00c8b16172420bb0dc5e8755abb772bb4f2dac01..cd5d92e4c067a2f0d7f561192d067dbaa1d3f7bd 100644
--- a/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/instrument/MetricCollector.java
+++ b/apm-collector/apm-collector-instrument/src/main/java/org/skywalking/apm/collector/instrument/MetricCollector.java
@@ -16,7 +16,7 @@
* Project repository: https://github.com/OpenSkywalking/skywalking
*/
-package org.skywalking.apm.collector.core.module.instrument;
+package org.skywalking.apm.collector.instrument;
import java.lang.reflect.Method;
import java.util.HashMap;
diff --git a/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/instrument/ServiceInstrumentation.java b/apm-collector/apm-collector-instrument/src/main/java/org/skywalking/apm/collector/instrument/ServiceInstrumentation.java
similarity index 98%
rename from apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/instrument/ServiceInstrumentation.java
rename to apm-collector/apm-collector-instrument/src/main/java/org/skywalking/apm/collector/instrument/ServiceInstrumentation.java
index a41a6232d06420671b5a8c4d3e5e9ddd780ac88c..7589bade5ebcc43705f47d5b1b6ca84322ba195f 100644
--- a/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/instrument/ServiceInstrumentation.java
+++ b/apm-collector/apm-collector-instrument/src/main/java/org/skywalking/apm/collector/instrument/ServiceInstrumentation.java
@@ -16,7 +16,7 @@
* Project repository: https://github.com/OpenSkywalking/skywalking
*/
-package org.skywalking.apm.collector.core.module.instrument;
+package org.skywalking.apm.collector.instrument;
import net.bytebuddy.ByteBuddy;
import net.bytebuddy.description.method.MethodDescription;
diff --git a/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/instrument/ServiceMetricTracing.java b/apm-collector/apm-collector-instrument/src/main/java/org/skywalking/apm/collector/instrument/ServiceMetricTracing.java
similarity index 97%
rename from apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/instrument/ServiceMetricTracing.java
rename to apm-collector/apm-collector-instrument/src/main/java/org/skywalking/apm/collector/instrument/ServiceMetricTracing.java
index 1f99ffc94f39279c3deab73d11d7ed3b47bac404..94052a05441af20705d0c933ed9a3caaccffe942 100644
--- a/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/instrument/ServiceMetricTracing.java
+++ b/apm-collector/apm-collector-instrument/src/main/java/org/skywalking/apm/collector/instrument/ServiceMetricTracing.java
@@ -16,7 +16,7 @@
* Project repository: https://github.com/OpenSkywalking/skywalking
*/
-package org.skywalking.apm.collector.core.module.instrument;
+package org.skywalking.apm.collector.instrument;
import java.lang.reflect.Method;
import java.util.concurrent.Callable;
diff --git a/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/instrument/TracedService.java b/apm-collector/apm-collector-instrument/src/main/java/org/skywalking/apm/collector/instrument/TracedService.java
similarity index 80%
rename from apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/instrument/TracedService.java
rename to apm-collector/apm-collector-instrument/src/main/java/org/skywalking/apm/collector/instrument/TracedService.java
index 7cec836caaea430872c327227ff3411c511e7ed0..2925338c8daf5a7d78c8e1177c3d6c2c499fdf65 100644
--- a/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/instrument/TracedService.java
+++ b/apm-collector/apm-collector-instrument/src/main/java/org/skywalking/apm/collector/instrument/TracedService.java
@@ -16,13 +16,10 @@
* Project repository: https://github.com/OpenSkywalking/skywalking
*/
-package org.skywalking.apm.collector.core.module.instrument;
-
-import org.skywalking.apm.collector.core.module.ModuleManager;
+package org.skywalking.apm.collector.instrument;
/**
- * The TracedService
implementation are dynamic class, generated by {@link ServiceInstrumentation}, when
- * {@link ModuleManager#isServiceInstrument} is true.
+ * The TracedService
implementation are dynamic class, generated by {@link ServiceInstrumentation}.
*
* By that, all the services metrics are collected, and report in the certain cycle through console.
*
diff --git a/apm-collector/pom.xml b/apm-collector/pom.xml
index 048731b38708ab9c28c086b69bccb96fa8df8a46..03ee98a81b76a7485ee9518cf0fb0ae85109dcc9 100644
--- a/apm-collector/pom.xml
+++ b/apm-collector/pom.xml
@@ -45,6 +45,7 @@
apm-collector-remote
apm-collector-stream
apm-collector-queue
+ apm-collector-instrument
@@ -83,4 +84,4 @@
-
\ No newline at end of file
+