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:28 UTC

[incubator-servicecomb-java-chassis] 10/14: SJAV-508 & SCB-11 fix pr comment

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 7dc7ca7dbb4c26a53004ba23cb2d8c3c7a8b4663
Author: zhengyangyong <ya...@huawei.com>
AuthorDate: Thu Dec 28 11:54:49 2017 +0800

    SJAV-508 & SCB-11 fix pr comment
    
    Signed-off-by: zhengyangyong <ya...@huawei.com>
---
 .../io/servicecomb/demo/springmvc/client/SpringmvcClient.java    | 9 ++++++---
 .../src/main/resources/META-INF/spring/springmvc.client.bean.xml | 3 +++
 .../io/servicecomb/demo/springmvc/server/CodeFirstSpringmvc.java | 4 ++--
 3 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/demo/demo-springmvc/springmvc-client/src/main/java/io/servicecomb/demo/springmvc/client/SpringmvcClient.java b/demo/demo-springmvc/springmvc-client/src/main/java/io/servicecomb/demo/springmvc/client/SpringmvcClient.java
index dc19cdb..5364f37 100644
--- a/demo/demo-springmvc/springmvc-client/src/main/java/io/servicecomb/demo/springmvc/client/SpringmvcClient.java
+++ b/demo/demo-springmvc/springmvc-client/src/main/java/io/servicecomb/demo/springmvc/client/SpringmvcClient.java
@@ -34,6 +34,7 @@ import io.servicecomb.demo.controller.Person;
 import io.servicecomb.foundation.common.utils.BeanUtils;
 import io.servicecomb.foundation.common.utils.JsonUtils;
 import io.servicecomb.foundation.common.utils.Log4jUtils;
+import io.servicecomb.metrics.common.MetricsPublisher;
 import io.servicecomb.metrics.common.RegistryMetric;
 import io.servicecomb.provider.springmvc.reference.CseRestTemplate;
 import io.servicecomb.provider.springmvc.reference.RestTemplateBuilder;
@@ -46,6 +47,8 @@ public class SpringmvcClient {
 
   private static Controller controller;
 
+  private static MetricsPublisher metricsPublisher;
+
   public static void main(String[] args) throws Exception {
     templateUrlWithServiceName.setRequestFactory(new UrlWithServiceNameClientHttpRequestFactory());
     Log4jUtils.init();
@@ -59,6 +62,8 @@ public class SpringmvcClient {
   public static void run() throws Exception {
     restTemplate = RestTemplateBuilder.create();
     controller = BeanUtils.getBean("controller");
+    metricsPublisher = BeanUtils.getBean("metricsPublisher");
+
 
     String prefix = "cse://springmvc";
 
@@ -116,9 +121,7 @@ public class SpringmvcClient {
 
     //0.5.0 later version metrics integration test
     try {
-      Object obj = restTemplate.getForObject("cse://springmvc/metrics", Object.class);
-      String content = JsonUtils.writeValueAsString(obj);
-      RegistryMetric metric = JsonUtils.OBJ_MAPPER.readValue(content, RegistryMetric.class);
+      RegistryMetric metric = metricsPublisher.metrics();
 
       TestMgr.check(String.valueOf(metric.getInstanceMetric().getSystemMetric().getHeapUsed() != 0), "true");
       TestMgr.check(String.valueOf(metric.getProducerMetrics().size() == 28), "true");
diff --git a/demo/demo-springmvc/springmvc-client/src/main/resources/META-INF/spring/springmvc.client.bean.xml b/demo/demo-springmvc/springmvc-client/src/main/resources/META-INF/spring/springmvc.client.bean.xml
index b46e0b4..365b71a 100644
--- a/demo/demo-springmvc/springmvc-client/src/main/resources/META-INF/spring/springmvc.client.bean.xml
+++ b/demo/demo-springmvc/springmvc-client/src/main/resources/META-INF/spring/springmvc.client.bean.xml
@@ -28,4 +28,7 @@
 	<cse:rpc-reference id="controller" microservice-name="springmvc"
 		schema-id="controller" interface="io.servicecomb.demo.controller.Controller"></cse:rpc-reference>
 
+	<cse:rpc-reference id="metricsPublisher" microservice-name="springmvc"
+		schema-id="metricsEndpoint" interface="io.servicecomb.metrics.common.MetricsPublisher"></cse:rpc-reference>
+
 </beans>
diff --git a/demo/demo-springmvc/springmvc-server/src/main/java/io/servicecomb/demo/springmvc/server/CodeFirstSpringmvc.java b/demo/demo-springmvc/springmvc-server/src/main/java/io/servicecomb/demo/springmvc/server/CodeFirstSpringmvc.java
index bb6e0b0..96d6d8e 100644
--- a/demo/demo-springmvc/springmvc-server/src/main/java/io/servicecomb/demo/springmvc/server/CodeFirstSpringmvc.java
+++ b/demo/demo-springmvc/springmvc-server/src/main/java/io/servicecomb/demo/springmvc/server/CodeFirstSpringmvc.java
@@ -329,7 +329,7 @@ public class CodeFirstSpringmvc {
     return form1 + form2;
   }
 
-
+  //Only for 0.5.0 Integration Test
   @RequestMapping(path = "/metricsForTest", method = RequestMethod.GET)
   public String metricsForTest() {
     List<Monitor<?>> monitors = registry.getMetricsMonitors();
@@ -340,7 +340,7 @@ public class CodeFirstSpringmvc {
     try {
       return JsonUtils.writeValueAsString(values);
     } catch (JsonProcessingException e) {
-      return "{}";
+      throw new InvocationException(500, "500", "JsonProcessingException", e);
     }
   }
 }

-- 
To stop receiving notification emails like this one, please contact
"commits@servicecomb.apache.org" <co...@servicecomb.apache.org>.