From c2a7e8e5398b5d3e1168342f4f3caa7e20ba4b32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E6=99=9F=20Wu=20Sheng?= Date: Fri, 8 Mar 2019 16:31:42 +0800 Subject: [PATCH] Bug fix. (#2333) --- .../main/resources/generator-scope-meta.yml | 32 +++++----- .../core/source/EnvoyInstanceMetric.java | 1 - .../core/source/ServiceInstanceCLRCPU.java | 2 +- .../core/source/ServiceInstanceCLRGC.java | 2 +- .../core/source/ServiceInstanceCLRThread.java | 2 +- .../core/source/ServiceInstanceJVMCPU.java | 2 +- .../core/source/ServiceInstanceJVMGC.java | 2 +- .../core/source/ServiceInstanceJVMMemory.java | 2 +- .../source/ServiceInstanceJVMMemoryPool.java | 2 +- .../envoy/MetricServiceGRPCHandler.java | 1 - .../JVMMetricReportServiceHandler.java | 10 +-- .../handler/JVMMetricsServiceHandler.java | 11 +--- .../provider/handler/JVMSourceDispatcher.java | 61 +++++++++++-------- 13 files changed, 63 insertions(+), 67 deletions(-) diff --git a/oap-server/generated-analysis/src/main/resources/generator-scope-meta.yml b/oap-server/generated-analysis/src/main/resources/generator-scope-meta.yml index 603a7668e..a93ca4ada 100644 --- a/oap-server/generated-analysis/src/main/resources/generator-scope-meta.yml +++ b/oap-server/generated-analysis/src/main/resources/generator-scope-meta.yml @@ -52,8 +52,8 @@ scopes: columnName: entity_id typeName: java.lang.String ID: true - - fieldName: serviceInstanceId - columnName: service_instance_id + - fieldName: serviceId + columnName: service_id typeName: int ID: false - name: ServiceInstanceJVMMemory @@ -62,8 +62,8 @@ scopes: columnName: entity_id typeName: java.lang.String ID: true - - fieldName: serviceInstanceId - columnName: service_instance_id + - fieldName: serviceId + columnName: service_id typeName: int ID: false - name: ServiceInstanceJVMMemoryPool @@ -72,8 +72,8 @@ scopes: columnName: entity_id typeName: java.lang.String ID: true - - fieldName: serviceInstanceId - columnName: service_instance_id + - fieldName: serviceId + columnName: service_id typeName: int ID: false - name: ServiceInstanceJVMGC @@ -82,8 +82,8 @@ scopes: columnName: entity_id typeName: java.lang.String ID: true - - fieldName: serviceInstanceId - columnName: service_instance_id + - fieldName: serviceId + columnName: service_id typeName: int ID: false - name: ServiceRelation @@ -140,8 +140,8 @@ scopes: columnName: entity_id typeName: java.lang.String ID: true - - fieldName: serviceInstanceId - columnName: service_instance_id + - fieldName: serviceId + columnName: service_id typeName: int ID: false - name: ServiceInstanceCLRGC @@ -150,8 +150,8 @@ scopes: columnName: entity_id typeName: java.lang.String ID: true - - fieldName: serviceInstanceId - columnName: service_instance_id + - fieldName: serviceId + columnName: service_id typeName: int ID: false - name: ServiceInstanceCLRThread @@ -160,8 +160,8 @@ scopes: columnName: entity_id typeName: java.lang.String ID: true - - fieldName: serviceInstanceId - columnName: service_instance_id + - fieldName: serviceId + columnName: service_id typeName: int ID: false - name: EnvoyInstanceMetric @@ -170,7 +170,7 @@ scopes: columnName: entity_id typeName: java.lang.String ID: true - - fieldName: serviceInstanceId - columnName: service_instance_id + - fieldName: serviceId + columnName: service_id typeName: int ID: false \ No newline at end of file diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/EnvoyInstanceMetric.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/EnvoyInstanceMetric.java index f2c0dff51..0a5eafbfa 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/EnvoyInstanceMetric.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/EnvoyInstanceMetric.java @@ -44,7 +44,6 @@ public class EnvoyInstanceMetric extends Source { */ @Getter @Setter private int id; @Getter @Setter private int serviceId; - @Getter @Setter private int serviceInstanceId; @Getter @Setter private String name; @Getter @Setter private String serviceName; @Getter @Setter private String metricName; diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRCPU.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRCPU.java index f5fe55b9e..0ae797afd 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRCPU.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRCPU.java @@ -39,6 +39,6 @@ public class ServiceInstanceCLRCPU extends Source { @Getter @Setter private int id; @Getter @Setter private String name; @Getter @Setter private String serviceName; - @Getter @Setter private int serviceInstanceId; + @Getter @Setter private int serviceId; @Getter @Setter private double usePercent; } \ No newline at end of file diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRGC.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRGC.java index d87253b0f..904f2f926 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRGC.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRGC.java @@ -39,7 +39,7 @@ public class ServiceInstanceCLRGC extends Source { @Getter @Setter private int id; @Getter @Setter private String name; @Getter @Setter private String serviceName; - @Getter @Setter private int serviceInstanceId; + @Getter @Setter private int serviceId; @Getter @Setter private int gen0CollectCount; @Getter @Setter private int gen1CollectCount; @Getter @Setter private int gen2CollectCount; diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRThread.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRThread.java index 877be5954..6f1e54c05 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRThread.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceCLRThread.java @@ -39,7 +39,7 @@ public class ServiceInstanceCLRThread extends Source { @Getter @Setter private int id; @Getter @Setter private String name; @Getter @Setter private String serviceName; - @Getter @Setter private int serviceInstanceId; + @Getter @Setter private int serviceId; @Getter @Setter private long availableCompletionPortThreads; @Getter @Setter private long availableWorkerThreads; @Getter @Setter private long maxCompletionPortThreads; diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMCPU.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMCPU.java index bbf0b49cc..6195d7be3 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMCPU.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMCPU.java @@ -38,6 +38,6 @@ public class ServiceInstanceJVMCPU extends Source { @Getter @Setter private int id; @Getter @Setter private String name; @Getter @Setter private String serviceName; - @Getter @Setter private int serviceInstanceId; + @Getter @Setter private int serviceId; @Getter @Setter private double usePercent; } diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMGC.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMGC.java index 0c005bcac..c76acd326 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMGC.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMGC.java @@ -38,7 +38,7 @@ public class ServiceInstanceJVMGC extends Source { @Getter @Setter private int id; @Getter @Setter private String name; @Getter @Setter private String serviceName; - @Getter @Setter private int serviceInstanceId; + @Getter @Setter private int serviceId; @Getter @Setter private GCPhrase phrase; @Getter @Setter private long time; @Getter @Setter private long count; diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemory.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemory.java index 9688f56bf..889265be0 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemory.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemory.java @@ -38,7 +38,7 @@ public class ServiceInstanceJVMMemory extends Source { @Getter @Setter private int id; @Getter @Setter private String name; @Getter @Setter private String serviceName; - @Getter @Setter private int serviceInstanceId; + @Getter @Setter private int serviceId; @Getter @Setter private boolean heapStatus; @Getter @Setter private long init; @Getter @Setter private long max; diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemoryPool.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemoryPool.java index 2e009323a..289c6e7af 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemoryPool.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceInstanceJVMMemoryPool.java @@ -38,7 +38,7 @@ public class ServiceInstanceJVMMemoryPool extends Source { @Getter @Setter private int id; @Getter @Setter private String name; @Getter @Setter private String serviceName; - @Getter @Setter private int serviceInstanceId; + @Getter @Setter private int serviceId; @Getter @Setter private MemoryPoolType poolType; @Getter @Setter private long init; @Getter @Setter private long max; diff --git a/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/MetricServiceGRPCHandler.java b/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/MetricServiceGRPCHandler.java index 48083d2a0..5ccaa885b 100644 --- a/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/MetricServiceGRPCHandler.java +++ b/oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/MetricServiceGRPCHandler.java @@ -113,7 +113,6 @@ public class MetricServiceGRPCHandler extends MetricsServiceGrpc.MetricsServiceI metricSource.setServiceId(serviceId); metricSource.setServiceName(serviceName); metricSource.setId(serviceInstanceId); - metricSource.setServiceInstanceId(serviceInstanceId); metricSource.setName(serviceInstanceName); metricSource.setMetricName(metricFamily.getName()); metricSource.setValue(value); diff --git a/oap-server/server-receiver-plugin/skywalking-jvm-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/jvm/provider/handler/JVMMetricReportServiceHandler.java b/oap-server/server-receiver-plugin/skywalking-jvm-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/jvm/provider/handler/JVMMetricReportServiceHandler.java index b4852fd65..eb40f9088 100644 --- a/oap-server/server-receiver-plugin/skywalking-jvm-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/jvm/provider/handler/JVMMetricReportServiceHandler.java +++ b/oap-server/server-receiver-plugin/skywalking-jvm-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/jvm/provider/handler/JVMMetricReportServiceHandler.java @@ -20,15 +20,11 @@ package org.apache.skywalking.oap.server.receiver.jvm.provider.handler; import io.grpc.stub.StreamObserver; import org.apache.skywalking.apm.network.common.Commands; -import org.apache.skywalking.apm.network.language.agent.v2.JVMMetricCollection; -import org.apache.skywalking.apm.network.language.agent.v2.JVMMetricReportServiceGrpc; -import org.apache.skywalking.oap.server.core.CoreModule; -import org.apache.skywalking.oap.server.core.source.SourceReceiver; +import org.apache.skywalking.apm.network.language.agent.v2.*; import org.apache.skywalking.oap.server.library.module.ModuleManager; import org.apache.skywalking.oap.server.library.server.grpc.GRPCHandler; import org.apache.skywalking.oap.server.library.util.TimeBucketUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; +import org.slf4j.*; public class JVMMetricReportServiceHandler extends JVMMetricReportServiceGrpc.JVMMetricReportServiceImplBase implements GRPCHandler { @@ -37,7 +33,7 @@ public class JVMMetricReportServiceHandler extends JVMMetricReportServiceGrpc.JV private final JVMSourceDispatcher jvmSourceDispatcher; public JVMMetricReportServiceHandler(ModuleManager moduleManager) { - this.jvmSourceDispatcher = new JVMSourceDispatcher(moduleManager.find(CoreModule.NAME).provider().getService(SourceReceiver.class)); + this.jvmSourceDispatcher = new JVMSourceDispatcher(moduleManager); } @Override public void collect(JVMMetricCollection request, StreamObserver responseObserver) { diff --git a/oap-server/server-receiver-plugin/skywalking-jvm-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/jvm/provider/handler/JVMMetricsServiceHandler.java b/oap-server/server-receiver-plugin/skywalking-jvm-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/jvm/provider/handler/JVMMetricsServiceHandler.java index b5ac978f2..ed8afdf4b 100644 --- a/oap-server/server-receiver-plugin/skywalking-jvm-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/jvm/provider/handler/JVMMetricsServiceHandler.java +++ b/oap-server/server-receiver-plugin/skywalking-jvm-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/jvm/provider/handler/JVMMetricsServiceHandler.java @@ -19,16 +19,11 @@ package org.apache.skywalking.oap.server.receiver.jvm.provider.handler; import io.grpc.stub.StreamObserver; -import org.apache.skywalking.apm.network.language.agent.Downstream; -import org.apache.skywalking.apm.network.language.agent.JVMMetrics; -import org.apache.skywalking.apm.network.language.agent.JVMMetricsServiceGrpc; -import org.apache.skywalking.oap.server.core.CoreModule; -import org.apache.skywalking.oap.server.core.source.SourceReceiver; +import org.apache.skywalking.apm.network.language.agent.*; import org.apache.skywalking.oap.server.library.module.ModuleManager; import org.apache.skywalking.oap.server.library.server.grpc.GRPCHandler; import org.apache.skywalking.oap.server.library.util.TimeBucketUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; +import org.slf4j.*; /** * @author peng-yongsheng @@ -40,7 +35,7 @@ public class JVMMetricsServiceHandler extends JVMMetricsServiceGrpc.JVMMetricsSe private final JVMSourceDispatcher jvmSourceDispatcher; public JVMMetricsServiceHandler(ModuleManager moduleManager) { - this.jvmSourceDispatcher = new JVMSourceDispatcher(moduleManager.find(CoreModule.NAME).provider().getService(SourceReceiver.class)); + this.jvmSourceDispatcher = new JVMSourceDispatcher(moduleManager); } @Override public void collect(JVMMetrics request, StreamObserver responseObserver) { diff --git a/oap-server/server-receiver-plugin/skywalking-jvm-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/jvm/provider/handler/JVMSourceDispatcher.java b/oap-server/server-receiver-plugin/skywalking-jvm-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/jvm/provider/handler/JVMSourceDispatcher.java index ab5926cf4..a977d1096 100644 --- a/oap-server/server-receiver-plugin/skywalking-jvm-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/jvm/provider/handler/JVMSourceDispatcher.java +++ b/oap-server/server-receiver-plugin/skywalking-jvm-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/jvm/provider/handler/JVMSourceDispatcher.java @@ -19,54 +19,61 @@ package org.apache.skywalking.oap.server.receiver.jvm.provider.handler; import java.util.List; -import org.apache.skywalking.apm.network.language.agent.CPU; -import org.apache.skywalking.apm.network.language.agent.GC; -import org.apache.skywalking.apm.network.language.agent.JVMMetric; -import org.apache.skywalking.apm.network.language.agent.Memory; -import org.apache.skywalking.apm.network.language.agent.MemoryPool; -import org.apache.skywalking.oap.server.core.Const; +import org.apache.skywalking.apm.network.language.agent.*; +import org.apache.skywalking.oap.server.core.*; +import org.apache.skywalking.oap.server.core.cache.ServiceInstanceInventoryCache; +import org.apache.skywalking.oap.server.core.register.ServiceInstanceInventory; import org.apache.skywalking.oap.server.core.source.GCPhrase; -import org.apache.skywalking.oap.server.core.source.MemoryPoolType; -import org.apache.skywalking.oap.server.core.source.ServiceInstanceJVMCPU; -import org.apache.skywalking.oap.server.core.source.ServiceInstanceJVMGC; -import org.apache.skywalking.oap.server.core.source.ServiceInstanceJVMMemory; -import org.apache.skywalking.oap.server.core.source.ServiceInstanceJVMMemoryPool; -import org.apache.skywalking.oap.server.core.source.SourceReceiver; +import org.apache.skywalking.oap.server.core.source.*; +import org.apache.skywalking.oap.server.library.module.ModuleManager; +import org.slf4j.*; /** * @author wusheng */ public class JVMSourceDispatcher { - private SourceReceiver sourceReceiver; + private static final Logger logger = LoggerFactory.getLogger(JVMSourceDispatcher.class); + private final SourceReceiver sourceReceiver; + private final ServiceInstanceInventoryCache instanceInventoryCache; - public JVMSourceDispatcher(SourceReceiver sourceReceiver) { - this.sourceReceiver = sourceReceiver; + public JVMSourceDispatcher(ModuleManager moduleManager) { + this.sourceReceiver = moduleManager.find(CoreModule.NAME).provider().getService(SourceReceiver.class); + instanceInventoryCache = moduleManager.find(CoreModule.NAME).provider().getService(ServiceInstanceInventoryCache.class); } void sendMetric(int serviceInstanceId, long minuteTimeBucket, JVMMetric metric) { - this.sendToCpuMetricProcess(serviceInstanceId, minuteTimeBucket, metric.getCpu()); - this.sendToMemoryMetricProcess(serviceInstanceId, minuteTimeBucket, metric.getMemoryList()); - this.sendToMemoryPoolMetricProcess(serviceInstanceId, minuteTimeBucket, metric.getMemoryPoolList()); - this.sendToGCMetricProcess(serviceInstanceId, minuteTimeBucket, metric.getGcList()); + ServiceInstanceInventory serviceInstanceInventory = instanceInventoryCache.get(serviceInstanceId); + int serviceId; + if (serviceInstanceInventory == null) { + serviceId = serviceInstanceInventory.getServiceId(); + } else { + logger.warn("Can't found service by service instance id from cache, service instance id is: {}", serviceInstanceId); + return; + } + + this.sendToCpuMetricProcess(serviceId, serviceInstanceId, minuteTimeBucket, metric.getCpu()); + this.sendToMemoryMetricProcess(serviceId, serviceInstanceId, minuteTimeBucket, metric.getMemoryList()); + this.sendToMemoryPoolMetricProcess(serviceId, serviceInstanceId, minuteTimeBucket, metric.getMemoryPoolList()); + this.sendToGCMetricProcess(serviceId, serviceInstanceId, minuteTimeBucket, metric.getGcList()); } - private void sendToCpuMetricProcess(int serviceInstanceId, long timeBucket, CPU cpu) { + private void sendToCpuMetricProcess(int serviceId, int serviceInstanceId, long timeBucket, CPU cpu) { ServiceInstanceJVMCPU serviceInstanceJVMCPU = new ServiceInstanceJVMCPU(); serviceInstanceJVMCPU.setId(serviceInstanceId); serviceInstanceJVMCPU.setName(Const.EMPTY_STRING); - serviceInstanceJVMCPU.setServiceInstanceId(serviceInstanceId); + serviceInstanceJVMCPU.setServiceId(serviceId); serviceInstanceJVMCPU.setServiceName(Const.EMPTY_STRING); serviceInstanceJVMCPU.setUsePercent(cpu.getUsagePercent()); serviceInstanceJVMCPU.setTimeBucket(timeBucket); sourceReceiver.receive(serviceInstanceJVMCPU); } - private void sendToGCMetricProcess(int serviceInstanceId, long timeBucket, List gcs) { + private void sendToGCMetricProcess(int serviceId, int serviceInstanceId, long timeBucket, List gcs) { gcs.forEach(gc -> { ServiceInstanceJVMGC serviceInstanceJVMGC = new ServiceInstanceJVMGC(); serviceInstanceJVMGC.setId(serviceInstanceId); serviceInstanceJVMGC.setName(Const.EMPTY_STRING); - serviceInstanceJVMGC.setServiceInstanceId(serviceInstanceId); + serviceInstanceJVMGC.setServiceId(serviceId); serviceInstanceJVMGC.setServiceName(Const.EMPTY_STRING); switch (gc.getPhrase()) { @@ -85,12 +92,12 @@ public class JVMSourceDispatcher { }); } - private void sendToMemoryMetricProcess(int serviceInstanceId, long timeBucket, List memories) { + private void sendToMemoryMetricProcess(int serviceId, int serviceInstanceId, long timeBucket, List memories) { memories.forEach(memory -> { ServiceInstanceJVMMemory serviceInstanceJVMMemory = new ServiceInstanceJVMMemory(); serviceInstanceJVMMemory.setId(serviceInstanceId); serviceInstanceJVMMemory.setName(Const.EMPTY_STRING); - serviceInstanceJVMMemory.setServiceInstanceId(serviceInstanceId); + serviceInstanceJVMMemory.setServiceId(serviceId); serviceInstanceJVMMemory.setServiceName(Const.EMPTY_STRING); serviceInstanceJVMMemory.setHeapStatus(memory.getIsHeap()); serviceInstanceJVMMemory.setInit(memory.getInit()); @@ -102,14 +109,14 @@ public class JVMSourceDispatcher { }); } - private void sendToMemoryPoolMetricProcess(int serviceInstanceId, long timeBucket, + private void sendToMemoryPoolMetricProcess(int serviceId, int serviceInstanceId, long timeBucket, List memoryPools) { memoryPools.forEach(memoryPool -> { ServiceInstanceJVMMemoryPool serviceInstanceJVMMemoryPool = new ServiceInstanceJVMMemoryPool(); serviceInstanceJVMMemoryPool.setId(serviceInstanceId); serviceInstanceJVMMemoryPool.setName(Const.EMPTY_STRING); - serviceInstanceJVMMemoryPool.setServiceInstanceId(serviceInstanceId); + serviceInstanceJVMMemoryPool.setServiceId(serviceId); serviceInstanceJVMMemoryPool.setServiceName(Const.EMPTY_STRING); switch (memoryPool.getType()) {