You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by ni...@apache.org on 2018/01/02 10:44:23 UTC
[incubator-servicecomb-java-chassis] 05/14: JAV-508 & SCB-11 move
metric dto from metrics-core to metrics-common and add metrics publish via
rest schema
This is an automated email from the ASF dual-hosted git repository.
ningjiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-servicecomb-java-chassis.git
commit ccdde770347b246b89efe6776345a86137426025
Author: zhengyangyong <ya...@huawei.com>
AuthorDate: Tue Dec 26 15:54:47 2017 +0800
JAV-508 & SCB-11 move metric dto from metrics-core to metrics-common and add metrics publish via rest schema
Signed-off-by: zhengyangyong <ya...@huawei.com>
---
java-chassis-dependencies/pom.xml | 10 ++++++++++
metrics/{ => metrics-common}/pom.xml | 19 ++++++++++---------
.../io/servicecomb/metrics/common}/CallMetric.java | 7 +++++--
.../metrics/common}/ConsumerInvocationMetric.java | 10 +++++++---
.../servicecomb/metrics/common}/InstanceMetric.java | 10 ++++++----
.../servicecomb/metrics/common}/InvocationMetric.java | 2 +-
.../io/servicecomb/metrics/common}/MetricsConst.java | 2 +-
.../metrics/common}/ProducerInvocationMetric.java | 13 ++++++++++---
.../servicecomb/metrics/common}/RegistryMetric.java | 18 ++++++++----------
.../io/servicecomb/metrics/common}/SystemMetric.java | 13 +++++++++----
.../io/servicecomb/metrics/common}/TimerMetric.java | 8 ++++++--
metrics/metrics-core/pom.xml | 17 +++++++++--------
.../servicecomb/metrics/core/monitor/CallMonitor.java | 2 +-
.../core/monitor/ConsumerInvocationMonitor.java | 5 +++--
.../metrics/core/monitor/DefaultSystemMonitor.java | 2 +-
.../core/monitor/ProducerInvocationMonitor.java | 4 ++--
.../metrics/core/monitor/RegistryMonitor.java | 6 +++---
.../metrics/core/monitor/SystemMonitor.java | 2 +-
.../metrics/core/monitor/TimerMonitor.java | 2 +-
.../servicecomb/metrics/core/publish/DataSource.java | 6 +++---
.../metrics/core/publish/DefaultDataSource.java | 2 +-
.../metrics/core/publish/DefaultMetricsPublisher.java | 2 +-
.../metrics/core/publish/MetricsPublisher.java | 2 +-
.../servicecomb/metrics/core/TestEventAndRunner.java | 2 +-
.../io/servicecomb/metrics/core/TestPublisher.java | 2 +-
metrics/pom.xml | 1 +
26 files changed, 103 insertions(+), 66 deletions(-)
diff --git a/java-chassis-dependencies/pom.xml b/java-chassis-dependencies/pom.xml
index 78ea724..70f1c02 100644
--- a/java-chassis-dependencies/pom.xml
+++ b/java-chassis-dependencies/pom.xml
@@ -926,6 +926,16 @@
<artifactId>edge-core</artifactId>
<version>0.6.0-SNAPSHOT</version>
</dependency>
+ <dependency>
+ <groupId>io.servicecomb</groupId>
+ <artifactId>metrics-core</artifactId>
+ <version>0.6.0-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>io.servicecomb</groupId>
+ <artifactId>metrics-common</artifactId>
+ <version>0.6.0-SNAPSHOT</version>
+ </dependency>
</dependencies>
</dependencyManagement>
diff --git a/metrics/pom.xml b/metrics/metrics-common/pom.xml
similarity index 82%
copy from metrics/pom.xml
copy to metrics/metrics-common/pom.xml
index 80203af..76d3651 100644
--- a/metrics/pom.xml
+++ b/metrics/metrics-common/pom.xml
@@ -19,19 +19,20 @@
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <packaging>pom</packaging>
<parent>
+ <artifactId>metrics</artifactId>
<groupId>io.servicecomb</groupId>
- <artifactId>java-chassis-parent</artifactId>
<version>0.6.0-SNAPSHOT</version>
- <relativePath>../parent</relativePath>
</parent>
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>metrics-common</artifactId>
- <artifactId>metrics</artifactId>
+ <dependencies>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ </dependency>
+ </dependencies>
- <modules>
- <module>metrics-core</module>
- <module>metrics-sample</module>
- </modules>
</project>
\ No newline at end of file
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/CallMetric.java b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/CallMetric.java
similarity index 87%
rename from metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/CallMetric.java
rename to metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/CallMetric.java
index 9c3b0a7..6de66b5 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/CallMetric.java
+++ b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/CallMetric.java
@@ -15,11 +15,13 @@
* limitations under the License.
*/
-package io.servicecomb.metrics.core.metric;
+package io.servicecomb.metrics.common;
import java.util.HashMap;
import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
public class CallMetric {
private final String prefix;
@@ -39,7 +41,8 @@ public class CallMetric {
this(prefix, 0, 0);
}
- public CallMetric(String prefix, long total, double tps) {
+ public CallMetric(@JsonProperty("prefix") String prefix, @JsonProperty("total") long total,
+ @JsonProperty("tps") double tps) {
this.prefix = prefix;
this.total = total;
this.tps = tps;
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/ConsumerInvocationMetric.java b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/ConsumerInvocationMetric.java
similarity index 83%
rename from metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/ConsumerInvocationMetric.java
rename to metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/ConsumerInvocationMetric.java
index 0c0ddfe..d4aee4a 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/ConsumerInvocationMetric.java
+++ b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/ConsumerInvocationMetric.java
@@ -15,11 +15,13 @@
* limitations under the License.
*/
-package io.servicecomb.metrics.core.metric;
+package io.servicecomb.metrics.common;
import java.util.HashMap;
import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
public class ConsumerInvocationMetric extends InvocationMetric {
private final TimerMetric consumerLatency;
@@ -33,8 +35,10 @@ public class ConsumerInvocationMetric extends InvocationMetric {
return consumerCall;
}
- public ConsumerInvocationMetric(String operationName, String prefix,
- TimerMetric consumerLatency, CallMetric consumerCall) {
+ public ConsumerInvocationMetric(@JsonProperty("operationName") String operationName,
+ @JsonProperty("prefix") String prefix,
+ @JsonProperty("consumerLatency") TimerMetric consumerLatency,
+ @JsonProperty("consumerCall") CallMetric consumerCall) {
super(operationName, prefix);
this.consumerLatency = consumerLatency;
this.consumerCall = consumerCall;
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/InstanceMetric.java b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/InstanceMetric.java
similarity index 80%
rename from metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/InstanceMetric.java
rename to metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/InstanceMetric.java
index 614fa48..b8dd03e 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/InstanceMetric.java
+++ b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/InstanceMetric.java
@@ -15,7 +15,9 @@
* limitations under the License.
*/
-package io.servicecomb.metrics.core.metric;
+package io.servicecomb.metrics.common;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
public class InstanceMetric {
private final SystemMetric systemMetric;
@@ -36,9 +38,9 @@ public class InstanceMetric {
return producerMetric;
}
- public InstanceMetric(SystemMetric systemMetric,
- ConsumerInvocationMetric consumerMetric,
- ProducerInvocationMetric producerMetric) {
+ public InstanceMetric(@JsonProperty("systemMetric") SystemMetric systemMetric,
+ @JsonProperty("consumerMetric") ConsumerInvocationMetric consumerMetric,
+ @JsonProperty("producerMetric") ProducerInvocationMetric producerMetric) {
this.systemMetric = systemMetric;
this.consumerMetric = consumerMetric;
this.producerMetric = producerMetric;
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/InvocationMetric.java b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/InvocationMetric.java
similarity index 96%
rename from metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/InvocationMetric.java
rename to metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/InvocationMetric.java
index c452a4e..8ecd1b9 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/InvocationMetric.java
+++ b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/InvocationMetric.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package io.servicecomb.metrics.core.metric;
+package io.servicecomb.metrics.common;
public class InvocationMetric {
private final String operationName;
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/MetricsConst.java b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/MetricsConst.java
similarity index 96%
rename from metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/MetricsConst.java
rename to metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/MetricsConst.java
index 5554796..b0d58f8 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/MetricsConst.java
+++ b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/MetricsConst.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package io.servicecomb.metrics.core;
+package io.servicecomb.metrics.common;
public class MetricsConst {
public static final String CONSUMER_PREFIX_TEMPLATE = "servicecomb.%s.consumer";
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/ProducerInvocationMetric.java b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/ProducerInvocationMetric.java
similarity index 82%
rename from metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/ProducerInvocationMetric.java
rename to metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/ProducerInvocationMetric.java
index 0692e90..aced1c7 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/ProducerInvocationMetric.java
+++ b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/ProducerInvocationMetric.java
@@ -15,11 +15,13 @@
* limitations under the License.
*/
-package io.servicecomb.metrics.core.metric;
+package io.servicecomb.metrics.common;
import java.util.HashMap;
import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
public class ProducerInvocationMetric extends InvocationMetric {
private final long waitInQueue;
@@ -51,8 +53,13 @@ public class ProducerInvocationMetric extends InvocationMetric {
return producerCall;
}
- public ProducerInvocationMetric(String operationName, String prefix, long waitInQueue,
- TimerMetric lifeTimeInQueue, TimerMetric executionTime, TimerMetric producerLatency, CallMetric producerCall) {
+ public ProducerInvocationMetric(@JsonProperty("operationName") String operationName,
+ @JsonProperty("prefix") String prefix,
+ @JsonProperty("waitInQueue") long waitInQueue,
+ @JsonProperty("lifeTimeInQueue") TimerMetric lifeTimeInQueue,
+ @JsonProperty("executionTime") TimerMetric executionTime,
+ @JsonProperty("producerLatency") TimerMetric producerLatency,
+ @JsonProperty("producerCall") CallMetric producerCall) {
super(operationName, prefix);
this.waitInQueue = waitInQueue;
this.lifeTimeInQueue = lifeTimeInQueue;
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/RegistryMetric.java b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/RegistryMetric.java
similarity index 85%
rename from metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/RegistryMetric.java
rename to metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/RegistryMetric.java
index 7bafee7..2612e72 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/RegistryMetric.java
+++ b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/RegistryMetric.java
@@ -15,20 +15,19 @@
* limitations under the License.
*/
-package io.servicecomb.metrics.core.metric;
+package io.servicecomb.metrics.common;
import java.util.HashMap;
import java.util.Map;
-import io.servicecomb.metrics.core.MetricsConst;
+import com.fasterxml.jackson.annotation.JsonProperty;
public class RegistryMetric {
+ private InstanceMetric instanceMetric;
- private final InstanceMetric instanceMetric;
+ private Map<String, ConsumerInvocationMetric> consumerMetrics;
- private final Map<String, ConsumerInvocationMetric> consumerMetrics;
-
- private final Map<String, ProducerInvocationMetric> producerMetrics;
+ private Map<String, ProducerInvocationMetric> producerMetrics;
public InstanceMetric getInstanceMetric() {
return instanceMetric;
@@ -42,10 +41,9 @@ public class RegistryMetric {
return producerMetrics;
}
- public RegistryMetric(SystemMetric systemMetric,
- Map<String, ConsumerInvocationMetric> consumerMetrics,
- Map<String, ProducerInvocationMetric> producerMetrics) {
-
+ public RegistryMetric(@JsonProperty("systemMetric") SystemMetric systemMetric,
+ @JsonProperty("consumerMetrics") Map<String, ConsumerInvocationMetric> consumerMetrics,
+ @JsonProperty("producerMetrics") Map<String, ProducerInvocationMetric> producerMetrics) {
this.consumerMetrics = consumerMetrics;
this.producerMetrics = producerMetrics;
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/SystemMetric.java b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/SystemMetric.java
similarity index 82%
rename from metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/SystemMetric.java
rename to metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/SystemMetric.java
index 68fff72..d75f311 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/SystemMetric.java
+++ b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/SystemMetric.java
@@ -15,11 +15,13 @@
* limitations under the License.
*/
-package io.servicecomb.metrics.core.metric;
+package io.servicecomb.metrics.common;
import java.util.HashMap;
import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
public class SystemMetric {
private final double cpuLoad;
@@ -81,9 +83,12 @@ public class SystemMetric {
return nonHeapUsed;
}
- public SystemMetric(double cpuLoad, int cpuRunningThreads,
- long heapInit, long heapMax, long heapCommit, long heapUsed,
- long nonHeapInit, long nonHeapMax, long nonHeapCommit, long nonHeapUsed) {
+ public SystemMetric(@JsonProperty("cpuLoad") double cpuLoad,
+ @JsonProperty("cpuRunningThreads") int cpuRunningThreads,
+ @JsonProperty("heapInit") long heapInit, @JsonProperty("heapMax") long heapMax,
+ @JsonProperty("heapCommit") long heapCommit, @JsonProperty("heapUsed") long heapUsed,
+ @JsonProperty("nonHeapInit") long nonHeapInit, @JsonProperty("nonHeapMax") long nonHeapMax,
+ @JsonProperty("nonHeapCommit") long nonHeapCommit, @JsonProperty("nonHeapUsed") long nonHeapUsed) {
this.cpuLoad = cpuLoad;
this.cpuRunningThreads = cpuRunningThreads;
this.heapInit = heapInit;
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/TimerMetric.java b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/TimerMetric.java
similarity index 88%
rename from metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/TimerMetric.java
rename to metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/TimerMetric.java
index 0c38480..fc7a2c4 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/metric/TimerMetric.java
+++ b/metrics/metrics-common/src/main/java/io/servicecomb/metrics/common/TimerMetric.java
@@ -15,11 +15,13 @@
* limitations under the License.
*/
-package io.servicecomb.metrics.core.metric;
+package io.servicecomb.metrics.common;
import java.util.HashMap;
import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
public class TimerMetric {
private final String prefix;
@@ -57,7 +59,9 @@ public class TimerMetric {
this(prefix, 0, 0, 0, 0);
}
- public TimerMetric(String prefix, long total, long count, long min, long max) {
+ public TimerMetric(@JsonProperty("prefix") String prefix,
+ @JsonProperty("total") long total, @JsonProperty("count") long count,
+ @JsonProperty("min") long min, @JsonProperty("max") long max) {
this.prefix = prefix;
this.total = total;
this.count = count;
diff --git a/metrics/metrics-core/pom.xml b/metrics/metrics-core/pom.xml
index 9a61c21..8f8fdeb 100644
--- a/metrics/metrics-core/pom.xml
+++ b/metrics/metrics-core/pom.xml
@@ -30,6 +30,14 @@
<dependencies>
<dependency>
+ <groupId>com.netflix.servo</groupId>
+ <artifactId>servo-core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>io.servicecomb</groupId>
+ <artifactId>metrics-common</artifactId>
+ </dependency>
+ <dependency>
<groupId>io.servicecomb</groupId>
<artifactId>provider-rest-common</artifactId>
</dependency>
@@ -41,14 +49,7 @@
<groupId>io.servicecomb</groupId>
<artifactId>java-chassis-core</artifactId>
</dependency>
- <dependency>
- <groupId>io.servicecomb</groupId>
- <artifactId>foundation-metrics</artifactId>
- </dependency>
- <dependency>
- <groupId>com.netflix.servo</groupId>
- <artifactId>servo-core</artifactId>
- </dependency>
+
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/CallMonitor.java b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/CallMonitor.java
index 76778ca..ab2e72d 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/CallMonitor.java
+++ b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/CallMonitor.java
@@ -21,7 +21,7 @@ import com.netflix.servo.monitor.BasicCounter;
import com.netflix.servo.monitor.MonitorConfig;
import com.netflix.servo.monitor.StepCounter;
-import io.servicecomb.metrics.core.metric.CallMetric;
+import io.servicecomb.metrics.common.CallMetric;
public class CallMonitor {
private final String prefix;
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/ConsumerInvocationMonitor.java b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/ConsumerInvocationMonitor.java
index a297ec4..bd49e51 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/ConsumerInvocationMonitor.java
+++ b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/ConsumerInvocationMonitor.java
@@ -17,8 +17,9 @@
package io.servicecomb.metrics.core.monitor;
-import io.servicecomb.metrics.core.MetricsConst;
-import io.servicecomb.metrics.core.metric.ConsumerInvocationMetric;
+
+import io.servicecomb.metrics.common.ConsumerInvocationMetric;
+import io.servicecomb.metrics.common.MetricsConst;
public class ConsumerInvocationMonitor extends InvocationMonitor {
private final TimerMonitor consumerLatency;
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/DefaultSystemMonitor.java b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/DefaultSystemMonitor.java
index d027a2c..21b42ad 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/DefaultSystemMonitor.java
+++ b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/DefaultSystemMonitor.java
@@ -24,7 +24,7 @@ import java.lang.management.ThreadMXBean;
import org.springframework.stereotype.Component;
-import io.servicecomb.metrics.core.metric.SystemMetric;
+import io.servicecomb.metrics.common.SystemMetric;
@Component
public class DefaultSystemMonitor implements SystemMonitor {
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/ProducerInvocationMonitor.java b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/ProducerInvocationMonitor.java
index b1f945f..6d63ae1 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/ProducerInvocationMonitor.java
+++ b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/ProducerInvocationMonitor.java
@@ -20,8 +20,8 @@ package io.servicecomb.metrics.core.monitor;
import com.netflix.servo.monitor.BasicCounter;
import com.netflix.servo.monitor.MonitorConfig;
-import io.servicecomb.metrics.core.MetricsConst;
-import io.servicecomb.metrics.core.metric.ProducerInvocationMetric;
+import io.servicecomb.metrics.common.MetricsConst;
+import io.servicecomb.metrics.common.ProducerInvocationMetric;
public class ProducerInvocationMonitor extends InvocationMonitor {
private final BasicCounter waitInQueue;
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/RegistryMonitor.java b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/RegistryMonitor.java
index 0772463..387c050 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/RegistryMonitor.java
+++ b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/RegistryMonitor.java
@@ -24,9 +24,9 @@ import java.util.concurrent.ConcurrentHashMap;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
-import io.servicecomb.metrics.core.metric.ConsumerInvocationMetric;
-import io.servicecomb.metrics.core.metric.ProducerInvocationMetric;
-import io.servicecomb.metrics.core.metric.RegistryMetric;
+import io.servicecomb.metrics.common.ConsumerInvocationMetric;
+import io.servicecomb.metrics.common.ProducerInvocationMetric;
+import io.servicecomb.metrics.common.RegistryMetric;
@Component
public class RegistryMonitor {
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/SystemMonitor.java b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/SystemMonitor.java
index 1780e3f..602d039 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/SystemMonitor.java
+++ b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/SystemMonitor.java
@@ -17,7 +17,7 @@
package io.servicecomb.metrics.core.monitor;
-import io.servicecomb.metrics.core.metric.SystemMetric;
+import io.servicecomb.metrics.common.SystemMetric;
public interface SystemMonitor {
double getCpuLoad();
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/TimerMonitor.java b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/TimerMonitor.java
index 1a15571..28fac96 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/TimerMonitor.java
+++ b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/monitor/TimerMonitor.java
@@ -24,7 +24,7 @@ import com.netflix.servo.monitor.MinGauge;
import com.netflix.servo.monitor.MonitorConfig;
import com.netflix.servo.monitor.StepCounter;
-import io.servicecomb.metrics.core.metric.TimerMetric;
+import io.servicecomb.metrics.common.TimerMetric;
public class TimerMonitor {
private final String prefix;
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/DataSource.java b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/DataSource.java
index 53ad61e..4eb89a6 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/DataSource.java
+++ b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/DataSource.java
@@ -19,12 +19,12 @@ package io.servicecomb.metrics.core.publish;
import java.util.List;
-import io.servicecomb.metrics.core.metric.RegistryMetric;
+import io.servicecomb.metrics.common.RegistryMetric;
public interface DataSource {
/** What's the WindowTime ?
- We all know there are two major type of metric :
+ We all know there are two major type of metric :
1.Time-unrelated,you can get the latest value any time immediately:
Counter -> increase or decrease
Guage -> set a certain one value
@@ -34,7 +34,7 @@ public interface DataSource {
Rate -> like TPS,algorithm is f = sum / second
Will be return "servicecomb.metrics.window_time" setting in microservice.yaml
- */
+ */
List<Long> getAppliedWindowTime();
//return getRegistryMetric(0)
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/DefaultDataSource.java b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/DefaultDataSource.java
index 9549884..d1ce74b 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/DefaultDataSource.java
+++ b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/DefaultDataSource.java
@@ -25,7 +25,7 @@ import org.springframework.stereotype.Component;
import com.netflix.config.DynamicPropertyFactory;
import com.netflix.servo.monitor.Pollers;
-import io.servicecomb.metrics.core.metric.RegistryMetric;
+import io.servicecomb.metrics.common.RegistryMetric;
import io.servicecomb.metrics.core.monitor.RegistryMonitor;
@Component
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/DefaultMetricsPublisher.java b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/DefaultMetricsPublisher.java
index ebc8f89..9efe24e 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/DefaultMetricsPublisher.java
+++ b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/DefaultMetricsPublisher.java
@@ -21,7 +21,7 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
-import io.servicecomb.metrics.core.metric.RegistryMetric;
+import io.servicecomb.metrics.common.RegistryMetric;
import io.servicecomb.provider.rest.common.RestSchema;
@RestSchema(schemaId = "metricsEndpoint")
diff --git a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/MetricsPublisher.java b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/MetricsPublisher.java
index 9f3873f..e87e288 100644
--- a/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/MetricsPublisher.java
+++ b/metrics/metrics-core/src/main/java/io/servicecomb/metrics/core/publish/MetricsPublisher.java
@@ -17,7 +17,7 @@
package io.servicecomb.metrics.core.publish;
-import io.servicecomb.metrics.core.metric.RegistryMetric;
+import io.servicecomb.metrics.common.RegistryMetric;
public interface MetricsPublisher {
RegistryMetric metrics();
diff --git a/metrics/metrics-core/src/test/java/io/servicecomb/metrics/core/TestEventAndRunner.java b/metrics/metrics-core/src/test/java/io/servicecomb/metrics/core/TestEventAndRunner.java
index 368b572..69e66f6 100644
--- a/metrics/metrics-core/src/test/java/io/servicecomb/metrics/core/TestEventAndRunner.java
+++ b/metrics/metrics-core/src/test/java/io/servicecomb/metrics/core/TestEventAndRunner.java
@@ -35,8 +35,8 @@ import io.servicecomb.core.metrics.InvocationFinishedEvent;
import io.servicecomb.core.metrics.InvocationStartProcessingEvent;
import io.servicecomb.core.metrics.InvocationStartedEvent;
import io.servicecomb.foundation.common.utils.EventUtils;
+import io.servicecomb.metrics.common.RegistryMetric;
import io.servicecomb.metrics.core.event.DefaultEventListenerManager;
-import io.servicecomb.metrics.core.metric.RegistryMetric;
import io.servicecomb.metrics.core.monitor.DefaultSystemMonitor;
import io.servicecomb.metrics.core.monitor.RegistryMonitor;
import io.servicecomb.metrics.core.publish.DefaultDataSource;
diff --git a/metrics/metrics-core/src/test/java/io/servicecomb/metrics/core/TestPublisher.java b/metrics/metrics-core/src/test/java/io/servicecomb/metrics/core/TestPublisher.java
index 7096937..537c69c 100644
--- a/metrics/metrics-core/src/test/java/io/servicecomb/metrics/core/TestPublisher.java
+++ b/metrics/metrics-core/src/test/java/io/servicecomb/metrics/core/TestPublisher.java
@@ -23,7 +23,7 @@ import java.util.Map;
import org.junit.Assert;
import org.junit.Test;
-import io.servicecomb.metrics.core.metric.RegistryMetric;
+import io.servicecomb.metrics.common.RegistryMetric;
import io.servicecomb.metrics.core.monitor.DefaultSystemMonitor;
import io.servicecomb.metrics.core.monitor.RegistryMonitor;
import io.servicecomb.metrics.core.monitor.SystemMonitor;
diff --git a/metrics/pom.xml b/metrics/pom.xml
index 80203af..f3cc665 100644
--- a/metrics/pom.xml
+++ b/metrics/pom.xml
@@ -33,5 +33,6 @@
<modules>
<module>metrics-core</module>
<module>metrics-sample</module>
+ <module>metrics-common</module>
</modules>
</project>
\ No newline at end of file
--
To stop receiving notification emails like this one, please contact
"commits@servicecomb.apache.org" <co...@servicecomb.apache.org>.