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/24 06:16:49 UTC

[incubator-servicecomb-java-chassis] 03/05: SCB-12 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 bc662532f2efb1748cf8162d54d4fda8b6edd60b
Author: zhengyangyong <ya...@huawei.com>
AuthorDate: Wed Jan 17 09:22:49 2018 +0800

    SCB-12 fix pr comment
    
    Signed-off-by: zhengyangyong <ya...@huawei.com>
---
 .../metrics/core/custom/WindowCounterService.java  |  4 +--
 .../metrics/core/TestHealthCheckerManager.java     | 16 ++++++------
 .../metrics/core/TestHealthCheckerPublisher.java   |  6 ++---
 .../servicecomb/metrics/core/TestPublisher.java    |  2 +-
 .../samples/metrics/custom/ShopDemoService.java    | 16 ++++++++++--
 .../src/main/resources/microservice.yaml           | 30 ++++++++++++++++++++++
 6 files changed, 57 insertions(+), 17 deletions(-)

diff --git a/metrics/metrics-core/src/main/java/org/apache/servicecomb/metrics/core/custom/WindowCounterService.java b/metrics/metrics-core/src/main/java/org/apache/servicecomb/metrics/core/custom/WindowCounterService.java
index e510047..26ba380 100644
--- a/metrics/metrics-core/src/main/java/org/apache/servicecomb/metrics/core/custom/WindowCounterService.java
+++ b/metrics/metrics-core/src/main/java/org/apache/servicecomb/metrics/core/custom/WindowCounterService.java
@@ -18,10 +18,10 @@
 package org.apache.servicecomb.metrics.core.custom;
 
 /**
- GaugeService is complex service for manage Window Time-related Step Counter,
+ WindowCounterService is complex service for manage Window Time-related Step Counter,
  It will output total,count,tps,rate,average,max and min
  examples:
- if record three time in one window,and window time = 2000 (2 seconds), like :
+ if record four time in one window,and window time = 2000 (2 seconds), like :
  record("Order Amount",100)
  record("Order Amount",200)
  record("Order Amount",300)
diff --git a/metrics/metrics-core/src/test/java/org/apache/servicecomb/metrics/core/TestHealthCheckerManager.java b/metrics/metrics-core/src/test/java/org/apache/servicecomb/metrics/core/TestHealthCheckerManager.java
index 1d25569..507ff77 100644
--- a/metrics/metrics-core/src/test/java/org/apache/servicecomb/metrics/core/TestHealthCheckerManager.java
+++ b/metrics/metrics-core/src/test/java/org/apache/servicecomb/metrics/core/TestHealthCheckerManager.java
@@ -87,18 +87,18 @@ public class TestHealthCheckerManager {
 
     Map<String, HealthCheckResult> results = manager.check();
 
-    Assert.assertTrue(results.get("default").isHealthy());
+    Assert.assertEquals(true,results.get("default").isHealthy());
 
     DefaultHealthCheckExtraData data = JsonUtils.OBJ_MAPPER
         .readValue(results.get("default").getExtraData(), DefaultHealthCheckExtraData.class);
-    Assert.assertTrue(data.getAppId().equals("appId"));
-    Assert.assertTrue(data.getServiceName().equals("serviceName"));
-    Assert.assertTrue(data.getServiceVersion().equals("0.0.1"));
-    Assert.assertTrue(data.getInstanceId().equals("001"));
-    Assert.assertTrue(data.getHostName().equals("localhost"));
-    Assert.assertTrue(data.getEndpoints().equals("127.0.0.1,192.168.0.100"));
+    Assert.assertEquals("appId",data.getAppId());
+    Assert.assertEquals("serviceName",data.getServiceName());
+    Assert.assertEquals("0.0.1",data.getServiceVersion());
+    Assert.assertEquals("001",data.getInstanceId());
+    Assert.assertEquals("localhost",data.getHostName());
+    Assert.assertEquals("127.0.0.1,192.168.0.100",data.getEndpoints());
 
     HealthCheckResult result = manager.check("test");
-    Assert.assertTrue(!result.isHealthy());
+    Assert.assertEquals(false,result.isHealthy());
   }
 }
diff --git a/metrics/metrics-core/src/test/java/org/apache/servicecomb/metrics/core/TestHealthCheckerPublisher.java b/metrics/metrics-core/src/test/java/org/apache/servicecomb/metrics/core/TestHealthCheckerPublisher.java
index bef712e..3fb16e6 100644
--- a/metrics/metrics-core/src/test/java/org/apache/servicecomb/metrics/core/TestHealthCheckerPublisher.java
+++ b/metrics/metrics-core/src/test/java/org/apache/servicecomb/metrics/core/TestHealthCheckerPublisher.java
@@ -48,11 +48,9 @@ public class TestHealthCheckerPublisher {
 
     HealthCheckerPublisher publisher = new DefaultHealthCheckerPublisher(manager);
     Map<String, HealthCheckResult> content = publisher.health();
-    Assert.assertTrue(JsonUtils.writeValueAsString(content.get("default"))
-        .equals(JsonUtils.writeValueAsString(result)));
+    Assert.assertEquals(JsonUtils.writeValueAsString(result),JsonUtils.writeValueAsString(content.get("default")));
 
     HealthCheckResult checkResult = publisher.healthWithName("default");
-    Assert.assertTrue(JsonUtils.writeValueAsString(checkResult)
-        .equals(JsonUtils.writeValueAsString(result)));
+    Assert.assertEquals(JsonUtils.writeValueAsString(result),JsonUtils.writeValueAsString(checkResult));
   }
 }
diff --git a/metrics/metrics-core/src/test/java/org/apache/servicecomb/metrics/core/TestPublisher.java b/metrics/metrics-core/src/test/java/org/apache/servicecomb/metrics/core/TestPublisher.java
index 1586b46..8650fc5 100644
--- a/metrics/metrics-core/src/test/java/org/apache/servicecomb/metrics/core/TestPublisher.java
+++ b/metrics/metrics-core/src/test/java/org/apache/servicecomb/metrics/core/TestPublisher.java
@@ -54,7 +54,7 @@ public class TestPublisher {
     Assert.assertEquals(31, metricsMap.size());
 
     List<Long> appliedWindowTime = publisher.getAppliedWindowTime();
-    Assert.assertEquals(appliedWindowTime.size(), 3);
+    Assert.assertEquals(3, appliedWindowTime.size());
     Assert.assertThat(appliedWindowTime, containsInAnyOrder(Arrays.asList(1000L, 2000L, 3000L).toArray()));
   }
 }
diff --git a/samples/custom-business-metrics/src/main/java/org/apache/servicecomb/samples/metrics/custom/ShopDemoService.java b/samples/custom-business-metrics/src/main/java/org/apache/servicecomb/samples/metrics/custom/ShopDemoService.java
index 1245339..6e5faec 100644
--- a/samples/custom-business-metrics/src/main/java/org/apache/servicecomb/samples/metrics/custom/ShopDemoService.java
+++ b/samples/custom-business-metrics/src/main/java/org/apache/servicecomb/samples/metrics/custom/ShopDemoService.java
@@ -42,6 +42,8 @@ public class ShopDemoService {
     this.counterService = counterService;
     this.gaugeService = gaugeService;
     this.windowCounterService = windowCounterService;
+
+    login(null,null);
   }
 
   public void login(String name, String password) {
@@ -60,16 +62,18 @@ public class ShopDemoService {
     //sim record order process time
     windowCounterService.record("Order Latency", System.currentTimeMillis() - start);
 
+    //plus one
     windowCounterService.record("Order Count", 1);
 
-    //only support long,please do unit convert ,$99.00 -> $9900 , $59.99 -> 5999
+    //only support long,please do unit convert ,$99.00 dollar -> $9900 cent, $59.99 dollar -> $5999 cent
     windowCounterService.record("Order Amount", (long) round(amount * 100, 0));
   }
 
   public void discount(double value) {
     //make a discount to Levis Jeans
 
-    gaugeService.update("Levis Jeans", value);
+    //record current Levis Jeans Discount
+    gaugeService.update("Levis Jeans Discount", value);
   }
 
   private double round(double value, int places) {
@@ -79,4 +83,12 @@ public class ShopDemoService {
     }
     return 0;
   }
+
+  /*  Output of RegistryMetric.customMetrics :
+   *  Active User
+   *  Order Latency (total,count,tps,rate,average,max,min)
+   *  Order Count (total,count,tps,rate,average,max,min)
+   *  Order Amount (total,count,tps,rate,average,max,min)
+   *  Levis Jeans Discount
+   */
 }
diff --git a/samples/custom-business-metrics/src/main/resources/microservice.yaml b/samples/custom-business-metrics/src/main/resources/microservice.yaml
new file mode 100644
index 0000000..c1c9226
--- /dev/null
+++ b/samples/custom-business-metrics/src/main/resources/microservice.yaml
@@ -0,0 +1,30 @@
+#
+## ---------------------------------------------------------------------------
+## Licensed to the Apache Software Foundation (ASF) under one or more
+## contributor license agreements.  See the NOTICE file distributed with
+## this work for additional information regarding copyright ownership.
+## The ASF licenses this file to You under the Apache License, Version 2.0
+## (the "License"); you may not use this file except in compliance with
+## the License.  You may obtain a copy of the License at
+##
+##      http://www.apache.org/licenses/LICENSE-2.0
+##
+## Unless required by applicable law or agreed to in writing, software
+## distributed under the License is distributed on an "AS IS" BASIS,
+## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+## See the License for the specific language governing permissions and
+## limitations under the License.
+## ---------------------------------------------------------------------------
+
+# all interconnected microservices must belong to an application wth the same ID
+APPLICATION_ID: metrics
+service_description:
+# name of the declaring microservice
+  name: metricsCustom
+  version: 0.0.1
+cse:
+  service:
+    registry:
+      address: http://127.0.0.1:30100
+  rest:
+    address: 0.0.0.0:7777
\ No newline at end of file

-- 
To stop receiving notification emails like this one, please contact
ningjiang@apache.org.