diff --git a/apm-collector/apm-collector-core/pom.xml b/apm-collector/apm-collector-core/pom.xml
index 3ab0bc9dc..9b9a29565 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/ModuleProvider.java b/apm-collector/apm-collector-core/src/main/java/org/skywalking/apm/collector/core/module/ModuleProvider.java
index d1df2c3c6..b0d01e4ef 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}.
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 45d767663..8172d59c1 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,37 +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.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 000000000..39817d613
--- /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 00c8b1617..cd5d92e4c 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 97%
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 a41a6232d..5ead66cdb 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,12 +16,13 @@
* 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;
import net.bytebuddy.implementation.MethodDelegation;
import net.bytebuddy.matcher.ElementMatcher;
+import net.bytebuddy.matcher.ElementMatchers;
import org.skywalking.apm.collector.core.module.Service;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
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 1f99ffc94..94052a054 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 7cec836ca..2925338c8 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 048731b38..03ee98a81 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
+