This is an automated email from the ASF dual-hosted git repository.

wusheng pushed a commit to branch fix-mesh
in repository https://gitbox.apache.org/repos/asf/incubator-skywalking.git

commit 25fd79b19ca7c731740cf0bb2468a335a967ce6d
Author: Wu Sheng <[email protected]>
AuthorDate: Fri Nov 2 11:31:06 2018 +0800

    Endpoint register to client and server side based on detect point.
---
 .../server/receiver/mesh/ServiceMeshMetricDataDecorator.java   | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git 
a/oap-server/server-receiver-plugin/skywalking-mesh-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/mesh/ServiceMeshMetricDataDecorator.java
 
b/oap-server/server-receiver-plugin/skywalking-mesh-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/mesh/ServiceMeshMetricDataDecorator.java
index 887ecde..3dae80d 100644
--- 
a/oap-server/server-receiver-plugin/skywalking-mesh-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/mesh/ServiceMeshMetricDataDecorator.java
+++ 
b/oap-server/server-receiver-plugin/skywalking-mesh-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/mesh/ServiceMeshMetricDataDecorator.java
@@ -88,8 +88,14 @@ public class ServiceMeshMetricDataDecorator {
         if (destServiceId != Const.NONE) {
             DetectPoint point = origin.getDetectPoint();
 
-            endpointId = 
CoreRegisterLinker.getEndpointInventoryRegister().getOrCreate(destServiceId, 
endpoint,
-                
org.apache.skywalking.oap.server.core.source.DetectPoint.fromMeshDetectPoint(point));
+            if (DetectPoint.client.equals(point)) {
+                endpointId = 
CoreRegisterLinker.getEndpointInventoryRegister().getOrCreate(sourceServiceId, 
endpoint,
+                    
org.apache.skywalking.oap.server.core.source.DetectPoint.fromMeshDetectPoint(point));
+            } else {
+                endpointId = 
CoreRegisterLinker.getEndpointInventoryRegister().getOrCreate(destServiceId, 
endpoint,
+                    
org.apache.skywalking.oap.server.core.source.DetectPoint.fromMeshDetectPoint(point));
+            }
+
             if (endpointId != Const.NONE) {
             } else {
                 isRegistered = false;

Reply via email to