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 3dae80dea0183ba29235d5e4602a900c29375a94..8e8a87b66054d73c1717a9c9b38e658cc9625d28 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 @@ -85,21 +85,23 @@ public class ServiceMeshMetricDataDecorator { } } String endpoint = origin.getEndpoint(); - if (destServiceId != Const.NONE) { - DetectPoint point = origin.getDetectPoint(); - if (DetectPoint.client.equals(point)) { + DetectPoint point = origin.getDetectPoint(); + if (DetectPoint.client.equals(point)) { + if (sourceServiceId != Const.NONE) { endpointId = CoreRegisterLinker.getEndpointInventoryRegister().getOrCreate(sourceServiceId, endpoint, org.apache.skywalking.oap.server.core.source.DetectPoint.fromMeshDetectPoint(point)); - } else { + } + } else { + if (destServiceId != Const.NONE) { endpointId = CoreRegisterLinker.getEndpointInventoryRegister().getOrCreate(destServiceId, endpoint, org.apache.skywalking.oap.server.core.source.DetectPoint.fromMeshDetectPoint(point)); } + } - if (endpointId != Const.NONE) { - } else { - isRegistered = false; - } + if (endpointId != Const.NONE) { + } else { + isRegistered = false; } return isRegistered;