diff --git a/oap-server/server-receiver-plugin/skywalking-istio-telemetry-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/istio/telemetry/provider/IstioTelemetryGRPCHandler.java b/oap-server/server-receiver-plugin/skywalking-istio-telemetry-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/istio/telemetry/provider/IstioTelemetryGRPCHandler.java index bd65ade9603f5fe149ea64737f2c924657998068..6951e960d87926b5878cefc5491674c2b12401c8 100644 --- a/oap-server/server-receiver-plugin/skywalking-istio-telemetry-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/istio/telemetry/provider/IstioTelemetryGRPCHandler.java +++ b/oap-server/server-receiver-plugin/skywalking-istio-telemetry-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/istio/telemetry/provider/IstioTelemetryGRPCHandler.java @@ -18,6 +18,7 @@ package org.apache.skywalking.oap.server.receiver.istio.telemetry.provider; +import com.google.common.base.Joiner; import com.google.protobuf.Timestamp; import io.grpc.stub.StreamObserver; import io.istio.HandleMetricServiceGrpc; @@ -43,6 +44,8 @@ public class IstioTelemetryGRPCHandler extends HandleMetricServiceGrpc.HandleMet private static final Logger logger = LoggerFactory.getLogger(IstioTelemetryGRPCHandler.class); + private static final Joiner JOINER = Joiner.on("."); + @Override public void handleMetric(IstioMetricProto.HandleMetricRequest request, StreamObserver responseObserver) { if (logger.isDebugEnabled()) { @@ -79,8 +82,8 @@ public class IstioTelemetryGRPCHandler extends HandleMetricServiceGrpc.HandleMet detectPoint = DetectPoint.server; } ServiceMeshMetric metric = ServiceMeshMetric.newBuilder().setStartTime(requestTime.toEpochMilli()) - .setEndTime(responseTime.toEpochMilli()).setSourceServiceName(string(i, "sourceService")) - .setSourceServiceInstance(string(i, "sourceUID")).setDestServiceName(string(i, "destinationService")) + .setEndTime(responseTime.toEpochMilli()).setSourceServiceName(JOINER.join(string(i, "sourceService"), string(i, "sourceNamespace"))) + .setSourceServiceInstance(string(i, "sourceUID")).setDestServiceName(JOINER.join(string(i, "destinationService"), string(i, "destinationNamespace"))) .setDestServiceInstance(string(i, "destinationUID")).setEndpoint(endpoint).setLatency(latency) .setResponseCode(Math.toIntExact(responseCode)).setStatus(status).setProtocol(netProtocol).setDetectPoint(detectPoint).build(); logger.debug("Transformed metric {}", metric);