You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by wu...@apache.org on 2020/03/25 04:07:21 UTC
[skywalking] 01/01: Finish step one, source and entity changed.
This is an automated email from the ASF dual-hosted git repository.
wusheng pushed a commit to branch remove-endpoint-register
in repository https://gitbox.apache.org/repos/asf/skywalking.git
commit 675c0b02a206be0965f173db6126a6b592bdff19
Author: Wu Sheng <wu...@foxmail.com>
AuthorDate: Wed Mar 25 12:06:44 2020 +0800
Finish step one, source and entity changed.
---
.../server/core/alarm/provider/NotifyHandler.java | 24 ++---
.../core/alarm/provider/NotifyHandlerTest.java | 8 +-
.../apache/skywalking/oap/server/core/Const.java | 3 +-
.../skywalking/oap/server/core/CoreModule.java | 4 -
.../oap/server/core/CoreModuleProvider.java | 15 +--
.../oap/server/core/analysis/Stream.java | 5 +
.../core/analysis/manual/RelationDefineUtil.java | 53 +++++++++-
.../manual/endpoint/EndpointTraffic.java} | 96 ++++++++++++------
.../endpoint/EndpointTrafficDispatcher.java} | 24 +++--
.../EndpointCallRelationDispatcher.java | 6 +-
.../EndpointRelationServerSideMetrics.java | 68 ++++++-------
.../analysis/manual/log/AbstractLogRecord.java | 10 +-
.../service/ServiceRelationClientSideMetrics.java | 6 +-
.../service/ServiceRelationServerSideMetrics.java | 9 +-
.../analysis/worker/MetricsStreamProcessor.java | 37 +++----
.../server/core/cache/EndpointInventoryCache.java | 108 ---------------------
.../server/core/query/AggregationQueryService.java | 77 ++++++++-------
.../oap/server/core/query/LogQueryService.java | 32 +++---
.../server/core/query/MetadataQueryService.java | 32 +++---
.../server/core/query/ProfileTaskQueryService.java | 38 ++------
.../server/core/query/TopologyQueryService.java | 19 +---
.../oap/server/core/query/TraceQueryService.java | 55 +++++------
.../oap/server/core/query/entity/Call.java | 12 +--
.../oap/server/core/query/entity/EndpointInfo.java | 2 +-
.../oap/server/core/query/entity/Log.java | 1 -
.../oap/server/core/query/entity/Node.java | 2 +-
.../service/EndpointInventoryRegister.java | 87 -----------------
.../oap/server/core/source/DefaultScopeDefine.java | 2 +-
.../oap/server/core/source/Endpoint.java | 15 +--
.../oap/server/core/source/EndpointRelation.java | 19 ++--
.../storage/cache/IEndpointInventoryCacheDAO.java | 4 +-
.../oap/query/graphql/resolver/MetadataQuery.java | 10 +-
.../src/main/resources/query-protocol | 2 +-
.../server/receiver/jaeger/JaegerGRPCHandler.java | 2 +-
.../mesh/ServiceMeshMetricDataDecorator.java | 11 ---
.../receiver/mesh/TelemetryDataDispatcher.java | 1 -
.../handler/v6/grpc/RegisterServiceHandler.java | 8 +-
.../sharing/server/CoreRegisterLinker.java | 8 +-
.../parser/decorator/ReferenceDecorator.java | 44 ---------
.../provider/parser/decorator/SpanDecorator.java | 15 ---
.../listener/endpoint/MultiScopesSpanListener.java | 34 ++-----
.../parser/listener/endpoint/SourceBuilder.java | 9 --
.../standardization/ReferenceIdExchanger.java | 8 +-
.../parser/standardization/SpanExchanger.java | 8 +-
.../server/receiver/zipkin/trace/SpanForward.java | 2 +-
.../cache/EndpointInventoryCacheEsDAO.java | 14 +--
.../elasticsearch/query/AggregationQueryEsDAO.java | 4 +-
.../plugin/elasticsearch/query/LogQueryEsDAO.java | 18 ++--
.../elasticsearch/query/MetadataQueryEsDAO.java | 18 ++--
.../elasticsearch/query/TopologyQueryEsDAO.java | 11 ++-
.../cache/EndpointInventoryCacheEs7DAO.java | 8 +-
.../elasticsearch7/query/LogQueryEs7DAO.java | 23 +++--
.../elasticsearch7/query/MetadataQueryEs7DAO.java | 6 +-
.../plugin/influxdb/query/AggregationQuery.java | 4 +-
.../storage/plugin/influxdb/query/LogQuery.java | 8 +-
.../plugin/influxdb/query/TopologyQuery.java | 19 ++--
.../plugin/jdbc/h2/dao/H2AggregationQueryDAO.java | 4 +-
.../jdbc/h2/dao/H2EndpointInventoryCacheDAO.java | 10 +-
.../storage/plugin/jdbc/h2/dao/H2LogQueryDAO.java | 6 +-
.../plugin/jdbc/h2/dao/H2MetadataQueryDAO.java | 18 ++--
.../plugin/jdbc/h2/dao/H2TopologyQueryDAO.java | 11 ++-
.../plugin/jdbc/mysql/MySQLTableInstaller.java | 4 +-
.../tool/profile/core/MockCoreModuleProvider.java | 6 +-
63 files changed, 497 insertions(+), 730 deletions(-)
diff --git a/oap-server/server-alarm-plugin/src/main/java/org/apache/skywalking/oap/server/core/alarm/provider/NotifyHandler.java b/oap-server/server-alarm-plugin/src/main/java/org/apache/skywalking/oap/server/core/alarm/provider/NotifyHandler.java
index 2b4b547..ba7a594 100644
--- a/oap-server/server-alarm-plugin/src/main/java/org/apache/skywalking/oap/server/core/alarm/provider/NotifyHandler.java
+++ b/oap-server/server-alarm-plugin/src/main/java/org/apache/skywalking/oap/server/core/alarm/provider/NotifyHandler.java
@@ -21,6 +21,8 @@ package org.apache.skywalking.oap.server.core.alarm.provider;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.skywalking.oap.server.core.Const;
import org.apache.skywalking.oap.server.core.CoreModule;
import org.apache.skywalking.oap.server.core.alarm.AlarmCallback;
import org.apache.skywalking.oap.server.core.alarm.EndpointMetaInAlarm;
@@ -32,19 +34,17 @@ import org.apache.skywalking.oap.server.core.alarm.provider.grpc.GRPCCallback;
import org.apache.skywalking.oap.server.core.analysis.metrics.Metrics;
import org.apache.skywalking.oap.server.core.analysis.metrics.MetricsMetaInfo;
import org.apache.skywalking.oap.server.core.analysis.metrics.WithMetadata;
-import org.apache.skywalking.oap.server.core.cache.EndpointInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInstanceInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInventoryCache;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
import org.apache.skywalking.oap.server.core.register.ServiceInstanceInventory;
import org.apache.skywalking.oap.server.core.register.ServiceInventory;
import org.apache.skywalking.oap.server.core.source.DefaultScopeDefine;
import org.apache.skywalking.oap.server.library.module.ModuleManager;
+@Slf4j
public class NotifyHandler implements MetricsNotify {
private ServiceInventoryCache serviceInventoryCache;
private ServiceInstanceInventoryCache serviceInstanceInventoryCache;
- private EndpointInventoryCache endpointInventoryCache;
private final AlarmCore core;
private final AlarmRulesWatcher alarmRulesWatcher;
@@ -60,7 +60,8 @@ public class NotifyHandler implements MetricsNotify {
MetricsMetaInfo meta = withMetadata.getMeta();
int scope = meta.getScope();
- if (!DefaultScopeDefine.inServiceCatalog(scope) && !DefaultScopeDefine.inServiceInstanceCatalog(scope) && !DefaultScopeDefine
+ if (!DefaultScopeDefine.inServiceCatalog(scope) && !DefaultScopeDefine.inServiceInstanceCatalog(
+ scope) && !DefaultScopeDefine
.inEndpointCatalog(scope)) {
return;
}
@@ -83,16 +84,18 @@ public class NotifyHandler implements MetricsNotify {
instanceMetaInAlarm.setName(serviceInstanceInventory.getName());
metaInAlarm = instanceMetaInAlarm;
} else if (DefaultScopeDefine.inEndpointCatalog(scope)) {
- int endpointId = Integer.parseInt(meta.getId());
- EndpointInventory endpointInventory = endpointInventoryCache.get(endpointId);
EndpointMetaInAlarm endpointMetaInAlarm = new EndpointMetaInAlarm();
endpointMetaInAlarm.setMetricsName(meta.getMetricsName());
- endpointMetaInAlarm.setId(endpointId);
- int serviceId = endpointInventory.getServiceId();
+ final String[] serviceIdAndEndpointName = meta.getId().split(Const.ID_PARSER_SPLIT);
+ if (serviceIdAndEndpointName.length != 2) {
+ log.warn("Can't endpoint ID {} into two parts.", meta);
+ }
+
+ int serviceId = Integer.parseInt(serviceIdAndEndpointName[0]);
ServiceInventory serviceInventory = serviceInventoryCache.get(serviceId);
- String textName = endpointInventory.getName() + " in " + serviceInventory.getName();
+ String textName = serviceIdAndEndpointName[1] + " in " + serviceInventory.getName();
endpointMetaInAlarm.setName(textName);
metaInAlarm = endpointMetaInAlarm;
@@ -120,8 +123,5 @@ public class NotifyHandler implements MetricsNotify {
serviceInstanceInventoryCache = moduleManager.find(CoreModule.NAME)
.provider()
.getService(ServiceInstanceInventoryCache.class);
- endpointInventoryCache = moduleManager.find(CoreModule.NAME)
- .provider()
- .getService(EndpointInventoryCache.class);
}
}
diff --git a/oap-server/server-alarm-plugin/src/test/java/org/apache/skywalking/oap/server/core/alarm/provider/NotifyHandlerTest.java b/oap-server/server-alarm-plugin/src/test/java/org/apache/skywalking/oap/server/core/alarm/provider/NotifyHandlerTest.java
index cd211f4..0150e7a 100644
--- a/oap-server/server-alarm-plugin/src/test/java/org/apache/skywalking/oap/server/core/alarm/provider/NotifyHandlerTest.java
+++ b/oap-server/server-alarm-plugin/src/test/java/org/apache/skywalking/oap/server/core/alarm/provider/NotifyHandlerTest.java
@@ -31,7 +31,7 @@ import org.apache.skywalking.oap.server.core.analysis.metrics.WithMetadata;
import org.apache.skywalking.oap.server.core.cache.EndpointInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInstanceInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInventoryCache;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.register.ServiceInstanceInventory;
import org.apache.skywalking.oap.server.core.register.ServiceInventory;
import org.apache.skywalking.oap.server.core.source.DefaultScopeDefine;
@@ -96,8 +96,8 @@ public class NotifyHandlerTest {
when(DefaultScopeDefine.inEndpointCatalog(0)).thenReturn(true);
String endpointInventoryName = "endpoint-inventory-name";
- EndpointInventory endpointInventory = mock(EndpointInventory.class);
- when(endpointInventory.getName()).thenReturn(endpointInventoryName);
+ EndpointTraffic endpointTraffic = mock(EndpointTraffic.class);
+ when(endpointTraffic.getName()).thenReturn(endpointInventoryName);
String serviceInventoryName = "service-inventory-name";
ServiceInventory serviceInventory = mock(ServiceInventory.class);
@@ -105,7 +105,7 @@ public class NotifyHandlerTest {
when(serviceInventoryCache.get(anyInt())).thenReturn(serviceInventory);
- when(endpointInventoryCache.get(anyInt())).thenReturn(endpointInventory);
+ when(endpointInventoryCache.get(anyInt())).thenReturn(endpointTraffic);
ArgumentCaptor<MetaInAlarm> metaCaptor = ArgumentCaptor.forClass(MetaInAlarm.class);
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/Const.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/Const.java
index 213f482..cc1f2c8 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/Const.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/Const.java
@@ -21,6 +21,7 @@ package org.apache.skywalking.oap.server.core;
public class Const {
public static final int NONE = 0;
public static final String ID_SPLIT = "_";
+ public static final String ID_PARSER_SPLIT = "\\_";
public static final String LINE = "-";
public static final String SPACE = " ";
public static final String KEY_VALUE_SPLIT = ",";
@@ -28,7 +29,7 @@ public class Const {
public static final String ARRAY_PARSER_SPLIT = "\\|";
public static final int USER_SERVICE_ID = 1;
public static final int USER_INSTANCE_ID = 1;
- public static final int USER_ENDPOINT_ID = 1;
+ public static final String USER_ENDPOINT_NAME = "User";
public static final int INEXISTENCE_ENDPOINT_ID = -1;
public static final String USER_CODE = "User";
public static final String SEGMENT_SPAN_SPLIT = "S";
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModule.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModule.java
index e7fa4af..1260903 100755
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModule.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModule.java
@@ -20,7 +20,6 @@ package org.apache.skywalking.oap.server.core;
import java.util.ArrayList;
import java.util.List;
-import org.apache.skywalking.oap.server.core.cache.EndpointInventoryCache;
import org.apache.skywalking.oap.server.core.cache.NetworkAddressInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ProfileTaskCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInstanceInventoryCache;
@@ -39,7 +38,6 @@ import org.apache.skywalking.oap.server.core.query.ProfileTaskQueryService;
import org.apache.skywalking.oap.server.core.query.TopNRecordsQueryService;
import org.apache.skywalking.oap.server.core.query.TopologyQueryService;
import org.apache.skywalking.oap.server.core.query.TraceQueryService;
-import org.apache.skywalking.oap.server.core.register.service.IEndpointInventoryRegister;
import org.apache.skywalking.oap.server.core.register.service.INetworkAddressInventoryRegister;
import org.apache.skywalking.oap.server.core.register.service.IServiceInstanceInventoryRegister;
import org.apache.skywalking.oap.server.core.register.service.IServiceInventoryRegister;
@@ -122,14 +120,12 @@ public class CoreModule extends ModuleDefine {
private void addRegisterService(List<Class> classes) {
classes.add(IServiceInventoryRegister.class);
classes.add(IServiceInstanceInventoryRegister.class);
- classes.add(IEndpointInventoryRegister.class);
classes.add(INetworkAddressInventoryRegister.class);
}
private void addCacheService(List<Class> classes) {
classes.add(ServiceInventoryCache.class);
classes.add(ServiceInstanceInventoryCache.class);
- classes.add(EndpointInventoryCache.class);
classes.add(NetworkAddressInventoryCache.class);
}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModuleProvider.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModuleProvider.java
index cd4c639..b7d0fa5 100755
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModuleProvider.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModuleProvider.java
@@ -30,7 +30,6 @@ import org.apache.skywalking.oap.server.core.analysis.worker.MetricsStreamProces
import org.apache.skywalking.oap.server.core.analysis.worker.TopNStreamProcessor;
import org.apache.skywalking.oap.server.core.annotation.AnnotationScan;
import org.apache.skywalking.oap.server.core.cache.CacheUpdateTimer;
-import org.apache.skywalking.oap.server.core.cache.EndpointInventoryCache;
import org.apache.skywalking.oap.server.core.cache.NetworkAddressInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ProfileTaskCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInstanceInventoryCache;
@@ -55,8 +54,6 @@ import org.apache.skywalking.oap.server.core.query.ProfileTaskQueryService;
import org.apache.skywalking.oap.server.core.query.TopNRecordsQueryService;
import org.apache.skywalking.oap.server.core.query.TopologyQueryService;
import org.apache.skywalking.oap.server.core.query.TraceQueryService;
-import org.apache.skywalking.oap.server.core.register.service.EndpointInventoryRegister;
-import org.apache.skywalking.oap.server.core.register.service.IEndpointInventoryRegister;
import org.apache.skywalking.oap.server.core.register.service.INetworkAddressInventoryRegister;
import org.apache.skywalking.oap.server.core.register.service.IServiceInstanceInventoryRegister;
import org.apache.skywalking.oap.server.core.register.service.IServiceInventoryRegister;
@@ -170,7 +167,8 @@ public class CoreModuleProvider extends ModuleProvider {
if (moduleConfig.isGRPCSslEnabled()) {
grpcServer = new GRPCServer(moduleConfig.getGRPCHost(), moduleConfig.getGRPCPort(),
Paths.get(moduleConfig.getGRPCSslCertChainPath()).toFile(),
- Paths.get(moduleConfig.getGRPCSslKeyPath()).toFile());
+ Paths.get(moduleConfig.getGRPCSslKeyPath()).toFile()
+ );
} else {
grpcServer = new GRPCServer(moduleConfig.getGRPCHost(), moduleConfig.getGRPCPort());
}
@@ -223,11 +221,6 @@ public class CoreModuleProvider extends ModuleProvider {
IServiceInstanceInventoryRegister.class, new ServiceInstanceInventoryRegister(getManager()));
this.registerServiceImplementation(
- EndpointInventoryCache.class, new EndpointInventoryCache(getManager(), moduleConfig));
- this.registerServiceImplementation(
- IEndpointInventoryRegister.class, new EndpointInventoryRegister(getManager()));
-
- this.registerServiceImplementation(
NetworkAddressInventoryCache.class, new NetworkAddressInventoryCache(getManager(), moduleConfig));
this.registerServiceImplementation(
INetworkAddressInventoryRegister.class, new NetworkAddressInventoryRegister(getManager()));
@@ -254,7 +247,9 @@ public class CoreModuleProvider extends ModuleProvider {
if (moduleConfig.isGRPCSslEnabled()) {
this.remoteClientManager = new RemoteClientManager(getManager(), moduleConfig.getRemoteTimeout(),
- Paths.get(moduleConfig.getGRPCSslTrustedCAPath()).toFile());
+ Paths.get(moduleConfig.getGRPCSslTrustedCAPath())
+ .toFile()
+ );
} else {
this.remoteClientManager = new RemoteClientManager(getManager(), moduleConfig.getRemoteTimeout());
}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/Stream.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/Stream.java
index 0cf0f38..35fd888 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/Stream.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/Stream.java
@@ -59,4 +59,9 @@ public @interface Stream {
* InventoryStreamProcessor}, {@link TopNStreamProcessor} and {@link NoneStreamingProcessor} for more details.
*/
Class<? extends StreamProcessor> processor();
+
+ /**
+ * @return true if this metrics stream support down sampling.
+ */
+ boolean supportDownSampling() default true;
}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/RelationDefineUtil.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/RelationDefineUtil.java
index 9aa698e..7c9c6ef 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/RelationDefineUtil.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/RelationDefineUtil.java
@@ -18,12 +18,16 @@
package org.apache.skywalking.oap.server.core.analysis.manual;
+import java.nio.charset.StandardCharsets;
+import java.util.Base64;
import lombok.Getter;
import org.apache.skywalking.oap.server.core.Const;
+import org.apache.skywalking.oap.server.core.UnexpectedException;
public class RelationDefineUtil {
public static String buildEntityId(RelationDefine define) {
- return String.valueOf(define.source) + Const.ID_SPLIT + String.valueOf(define.dest) + Const.ID_SPLIT + String.valueOf(define.componentId);
+ return String.valueOf(define.source) + Const.ID_SPLIT + String.valueOf(
+ define.dest) + Const.ID_SPLIT + String.valueOf(define.componentId);
}
/**
@@ -37,6 +41,32 @@ public class RelationDefineUtil {
return new RelationDefine(Integer.parseInt(parts[0]), Integer.parseInt(parts[1]), Integer.parseInt(parts[2]));
}
+ public static String buildEndpointEntityId(EndpointRelationDefine define) {
+ return define.sourceServiceId
+ + Const.ID_SPLIT
+ + Base64.getEncoder().encode(define.source.getBytes(StandardCharsets.UTF_8))
+ + Const.ID_SPLIT
+ + define.destServiceId
+ + Const.ID_SPLIT
+ + Base64.getEncoder().encode(define.dest.getBytes(StandardCharsets.UTF_8))
+ + Const.ID_SPLIT
+ + define.componentId;
+ }
+
+ public static EndpointRelationDefine splitEndpointEntityId(String entityId) {
+ String[] parts = entityId.split(Const.ID_SPLIT);
+ if (parts.length != 5) {
+ throw new UnexpectedException("Illegal Service/Endpoint Relation entity id, " + entityId);
+ }
+ return new EndpointRelationDefine(
+ Integer.parseInt(parts[0]),
+ new String(Base64.getDecoder().decode(parts[1]), StandardCharsets.UTF_8),
+ Integer.parseInt(parts[2]),
+ new String(Base64.getDecoder().decode(parts[3]), StandardCharsets.UTF_8),
+ Integer.parseInt(parts[4])
+ );
+ }
+
@Getter
public static class RelationDefine {
private int source;
@@ -49,4 +79,25 @@ public class RelationDefineUtil {
this.componentId = componentId;
}
}
+
+ @Getter
+ public static class EndpointRelationDefine {
+ private int sourceServiceId;
+ private String source;
+ private int destServiceId;
+ private String dest;
+ private int componentId;
+
+ public EndpointRelationDefine(final int sourceServiceId,
+ final String source,
+ final int destServiceId,
+ final String dest,
+ final int componentId) {
+ this.sourceServiceId = sourceServiceId;
+ this.source = source;
+ this.destServiceId = destServiceId;
+ this.dest = dest;
+ this.componentId = componentId;
+ }
+ }
}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/register/EndpointInventory.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/EndpointTraffic.java
similarity index 64%
rename from oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/register/EndpointInventory.java
rename to oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/EndpointTraffic.java
index d4ad3fe..3286e41 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/register/EndpointInventory.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/EndpointTraffic.java
@@ -16,7 +16,7 @@
*
*/
-package org.apache.skywalking.oap.server.core.register;
+package org.apache.skywalking.oap.server.core.analysis.manual.endpoint;
import com.google.common.base.Strings;
import java.util.HashMap;
@@ -24,21 +24,23 @@ import java.util.Map;
import lombok.Getter;
import lombok.Setter;
import org.apache.skywalking.oap.server.core.Const;
+import org.apache.skywalking.oap.server.core.UnexpectedException;
import org.apache.skywalking.oap.server.core.analysis.Stream;
-import org.apache.skywalking.oap.server.core.register.worker.InventoryStreamProcessor;
+import org.apache.skywalking.oap.server.core.analysis.metrics.Metrics;
+import org.apache.skywalking.oap.server.core.analysis.worker.MetricsStreamProcessor;
import org.apache.skywalking.oap.server.core.remote.grpc.proto.RemoteData;
import org.apache.skywalking.oap.server.core.source.DefaultScopeDefine;
import org.apache.skywalking.oap.server.core.source.ScopeDeclaration;
import org.apache.skywalking.oap.server.core.storage.StorageBuilder;
import org.apache.skywalking.oap.server.core.storage.annotation.Column;
-import static org.apache.skywalking.oap.server.core.source.DefaultScopeDefine.ENDPOINT_INVENTORY;
+import static org.apache.skywalking.oap.server.core.source.DefaultScopeDefine.ENDPOINT_TRAFFIC;
-@ScopeDeclaration(id = ENDPOINT_INVENTORY, name = "EndpointInventory")
-@Stream(name = EndpointInventory.INDEX_NAME, scopeId = DefaultScopeDefine.ENDPOINT_INVENTORY, builder = EndpointInventory.Builder.class, processor = InventoryStreamProcessor.class)
-public class EndpointInventory extends RegisterSource {
+@ScopeDeclaration(id = ENDPOINT_TRAFFIC, name = "EndpointTraffic")
+@Stream(name = EndpointTraffic.INDEX_NAME, scopeId = DefaultScopeDefine.ENDPOINT_TRAFFIC, builder = EndpointTraffic.Builder.class, processor = MetricsStreamProcessor.class)
+public class EndpointTraffic extends Metrics {
- public static final String INDEX_NAME = "endpoint_inventory";
+ public static final String INDEX_NAME = "endpoint_traffic";
public static final String SERVICE_ID = "service_id";
public static final String NAME = "name";
@@ -46,6 +48,9 @@ public class EndpointInventory extends RegisterSource {
@Setter
@Getter
+ private String entityId;
+ @Setter
+ @Getter
@Column(columnName = SERVICE_ID)
private int serviceId;
@Setter
@@ -61,6 +66,18 @@ public class EndpointInventory extends RegisterSource {
return serviceId + Const.ID_SPLIT + endpointName + Const.ID_SPLIT + detectPoint;
}
+ /**
+ * @param id in the storage of endpoint traffic
+ * @return [serviceId, endpointName, detectPoint]
+ */
+ public static String[] splitID(String id) {
+ final String[] strings = id.split(Const.ID_PARSER_SPLIT);
+ if (strings.length != 3) {
+ throw new UnexpectedException("Can't split endpoint id into 3 parts, " + id);
+ }
+ return strings;
+ }
+
@Override
public String id() {
return buildId(serviceId, name, detectPoint);
@@ -84,7 +101,7 @@ public class EndpointInventory extends RegisterSource {
if (getClass() != obj.getClass())
return false;
- EndpointInventory source = (EndpointInventory) obj;
+ EndpointTraffic source = (EndpointTraffic) obj;
if (serviceId != source.getServiceId())
return false;
if (!name.equals(source.getName()))
@@ -95,13 +112,10 @@ public class EndpointInventory extends RegisterSource {
@Override
public RemoteData.Builder serialize() {
RemoteData.Builder remoteBuilder = RemoteData.newBuilder();
- remoteBuilder.addDataIntegers(getSequence());
remoteBuilder.addDataIntegers(serviceId);
remoteBuilder.addDataIntegers(detectPoint);
- remoteBuilder.addDataLongs(getRegisterTime());
- remoteBuilder.addDataLongs(getHeartbeatTime());
- remoteBuilder.addDataLongs(getLastUpdateTime());
+ remoteBuilder.addDataLongs(getTimeBucket());
remoteBuilder.addDataStrings(Strings.isNullOrEmpty(name) ? Const.EMPTY_STRING : name);
return remoteBuilder;
@@ -109,47 +123,67 @@ public class EndpointInventory extends RegisterSource {
@Override
public void deserialize(RemoteData remoteData) {
- setSequence(remoteData.getDataIntegers(0));
- setServiceId(remoteData.getDataIntegers(1));
- setDetectPoint(remoteData.getDataIntegers(2));
+ setServiceId(remoteData.getDataIntegers(0));
+ setDetectPoint(remoteData.getDataIntegers(1));
- setRegisterTime(remoteData.getDataLongs(0));
- setHeartbeatTime(remoteData.getDataLongs(1));
- setLastUpdateTime(remoteData.getDataLongs(2));
+ setTimeBucket(remoteData.getDataLongs(0));
setName(remoteData.getDataStrings(0));
}
@Override
public int remoteHashCode() {
- return 0;
+ int result = 17;
+ result = 31 * result + serviceId;
+ result = 31 * result + name.hashCode();
+ result = 31 * result + detectPoint;
+ return result;
+ }
+
+ @Override
+ public void combine(final Metrics metrics) {
+
+ }
+
+ @Override
+ public void calculate() {
+
+ }
+
+ @Override
+ public Metrics toHour() {
+ return null;
+ }
+
+ @Override
+ public Metrics toDay() {
+ return null;
+ }
+
+ @Override
+ public Metrics toMonth() {
+ return null;
}
- public static class Builder implements StorageBuilder<EndpointInventory> {
+ public static class Builder implements StorageBuilder<EndpointTraffic> {
@Override
- public EndpointInventory map2Data(Map<String, Object> dbMap) {
- EndpointInventory inventory = new EndpointInventory();
- inventory.setSequence(((Number) dbMap.get(SEQUENCE)).intValue());
+ public EndpointTraffic map2Data(Map<String, Object> dbMap) {
+ EndpointTraffic inventory = new EndpointTraffic();
inventory.setServiceId(((Number) dbMap.get(SERVICE_ID)).intValue());
inventory.setName((String) dbMap.get(NAME));
inventory.setDetectPoint(((Number) dbMap.get(DETECT_POINT)).intValue());
- inventory.setRegisterTime(((Number) dbMap.get(REGISTER_TIME)).longValue());
- inventory.setHeartbeatTime(((Number) dbMap.get(HEARTBEAT_TIME)).longValue());
- inventory.setLastUpdateTime(((Number) dbMap.get(LAST_UPDATE_TIME)).longValue());
+ inventory.setTimeBucket(((Number) dbMap.get(TIME_BUCKET)).longValue());
return inventory;
}
@Override
- public Map<String, Object> data2Map(EndpointInventory storageData) {
+ public Map<String, Object> data2Map(EndpointTraffic storageData) {
Map<String, Object> map = new HashMap<>();
- map.put(SEQUENCE, storageData.getSequence());
map.put(SERVICE_ID, storageData.getServiceId());
map.put(NAME, storageData.getName());
map.put(DETECT_POINT, storageData.getDetectPoint());
- map.put(REGISTER_TIME, storageData.getRegisterTime());
- map.put(HEARTBEAT_TIME, storageData.getHeartbeatTime());
- map.put(LAST_UPDATE_TIME, storageData.getLastUpdateTime());
+ map.put(TIME_BUCKET, storageData.getTimeBucket());
return map;
}
}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/register/service/IEndpointInventoryRegister.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/EndpointTrafficDispatcher.java
similarity index 50%
rename from oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/register/service/IEndpointInventoryRegister.java
rename to oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/EndpointTrafficDispatcher.java
index 581f8d0..1bb0378 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/register/service/IEndpointInventoryRegister.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/EndpointTrafficDispatcher.java
@@ -16,16 +16,26 @@
*
*/
-package org.apache.skywalking.oap.server.core.register.service;
+package org.apache.skywalking.oap.server.core.analysis.manual.endpoint;
+import org.apache.skywalking.oap.server.core.analysis.SourceDispatcher;
+import org.apache.skywalking.oap.server.core.analysis.worker.MetricsStreamProcessor;
import org.apache.skywalking.oap.server.core.source.DetectPoint;
-import org.apache.skywalking.oap.server.library.module.Service;
+import org.apache.skywalking.oap.server.core.source.Endpoint;
-public interface IEndpointInventoryRegister extends Service {
+public class EndpointTrafficDispatcher implements SourceDispatcher<Endpoint> {
- int getOrCreate(int serviceId, String endpointName, DetectPoint detectPoint);
+ @Override
+ public void dispatch(final Endpoint source) {
+ generateTraffic(source);
+ }
- int get(int serviceId, String endpointName, DetectPoint detectPoint);
-
- void heartbeat(int endpointId, long heartBeatTime);
+ public void generateTraffic(final Endpoint source) {
+ EndpointTraffic traffic = new EndpointTraffic();
+ traffic.setName(source.getName());
+ traffic.setServiceId(source.getServiceId());
+ traffic.setDetectPoint(DetectPoint.SERVER.ordinal());
+ traffic.setEntityId(source.getEntityId());
+ MetricsStreamProcessor.getInstance().in(traffic);
+ }
}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpointrelation/EndpointCallRelationDispatcher.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpointrelation/EndpointCallRelationDispatcher.java
index f72e948..c018b91 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpointrelation/EndpointCallRelationDispatcher.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpointrelation/EndpointCallRelationDispatcher.java
@@ -36,10 +36,10 @@ public class EndpointCallRelationDispatcher implements SourceDispatcher<Endpoint
private void serverSide(EndpointRelation source) {
EndpointRelationServerSideMetrics metrics = new EndpointRelationServerSideMetrics();
metrics.setTimeBucket(source.getTimeBucket());
- metrics.setSourceEndpointId(source.getEndpointId());
- metrics.setDestEndpointId(source.getChildEndpointId());
+ metrics.setSourceEndpoint(source.getEndpoint());
+ metrics.setDestEndpoint(source.getChildEndpoint());
metrics.setComponentId(source.getComponentId());
- metrics.buildEntityId();
+ metrics.setEntityId(source.getEntityId());
MetricsStreamProcessor.getInstance().in(metrics);
}
}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpointrelation/EndpointRelationServerSideMetrics.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpointrelation/EndpointRelationServerSideMetrics.java
index a467bb2..85081b3 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpointrelation/EndpointRelationServerSideMetrics.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpointrelation/EndpointRelationServerSideMetrics.java
@@ -25,6 +25,7 @@ import lombok.Getter;
import lombok.Setter;
import org.apache.skywalking.oap.server.core.Const;
import org.apache.skywalking.oap.server.core.analysis.Stream;
+import org.apache.skywalking.oap.server.core.analysis.manual.RelationDefineUtil;
import org.apache.skywalking.oap.server.core.analysis.metrics.Metrics;
import org.apache.skywalking.oap.server.core.analysis.worker.MetricsStreamProcessor;
import org.apache.skywalking.oap.server.core.remote.grpc.proto.RemoteData;
@@ -37,26 +38,26 @@ import org.apache.skywalking.oap.server.core.storage.annotation.IDColumn;
public class EndpointRelationServerSideMetrics extends Metrics {
public static final String INDEX_NAME = "endpoint_relation_server_side";
- public static final String SOURCE_ENDPOINT_ID = "source_endpoint_id";
- public static final String DEST_ENDPOINT_ID = "dest_endpoint_id";
+ public static final String SOURCE_ENDPOINT = "source_endpoint";
+ public static final String DEST_ENDPOINT = "dest_endpoint";
public static final String COMPONENT_ID = "component_id";
@Setter
@Getter
- @Column(columnName = SOURCE_ENDPOINT_ID)
+ @Column(columnName = SOURCE_ENDPOINT)
@IDColumn
- private int sourceEndpointId;
+ private String sourceEndpoint;
@Setter
@Getter
- @Column(columnName = DEST_ENDPOINT_ID)
+ @Column(columnName = DEST_ENDPOINT)
@IDColumn
- private int destEndpointId;
+ private String destEndpoint;
@Setter
@Getter
@Column(columnName = COMPONENT_ID)
@IDColumn
private int componentId;
- @Setter(AccessLevel.PRIVATE)
+ @Setter
@Getter
@Column(columnName = ENTITY_ID)
@IDColumn
@@ -65,19 +66,10 @@ public class EndpointRelationServerSideMetrics extends Metrics {
@Override
public String id() {
String splitJointId = String.valueOf(getTimeBucket());
- splitJointId += Const.ID_SPLIT + sourceEndpointId;
- splitJointId += Const.ID_SPLIT + destEndpointId;
- splitJointId += Const.ID_SPLIT + componentId;
+ splitJointId += Const.ID_SPLIT + entityId;
return splitJointId;
}
- public void buildEntityId() {
- String splitJointId = String.valueOf(sourceEndpointId);
- splitJointId += Const.ID_SPLIT + String.valueOf(destEndpointId);
- splitJointId += Const.ID_SPLIT + String.valueOf(componentId);
- entityId = splitJointId;
- }
-
@Override
public void combine(Metrics metrics) {
@@ -92,8 +84,8 @@ public class EndpointRelationServerSideMetrics extends Metrics {
public Metrics toHour() {
EndpointRelationServerSideMetrics metrics = new EndpointRelationServerSideMetrics();
metrics.setTimeBucket(toTimeBucketInHour());
- metrics.setSourceEndpointId(getSourceEndpointId());
- metrics.setDestEndpointId(getDestEndpointId());
+ metrics.setSourceEndpoint(getSourceEndpoint());
+ metrics.setDestEndpoint(getDestEndpoint());
metrics.setComponentId(getComponentId());
metrics.setEntityId(getEntityId());
return metrics;
@@ -103,8 +95,8 @@ public class EndpointRelationServerSideMetrics extends Metrics {
public Metrics toDay() {
EndpointRelationServerSideMetrics metrics = new EndpointRelationServerSideMetrics();
metrics.setTimeBucket(toTimeBucketInDay());
- metrics.setSourceEndpointId(getSourceEndpointId());
- metrics.setDestEndpointId(getDestEndpointId());
+ metrics.setSourceEndpoint(getSourceEndpoint());
+ metrics.setDestEndpoint(getDestEndpoint());
metrics.setComponentId(getComponentId());
metrics.setEntityId(getEntityId());
return metrics;
@@ -114,8 +106,8 @@ public class EndpointRelationServerSideMetrics extends Metrics {
public Metrics toMonth() {
EndpointRelationServerSideMetrics metrics = new EndpointRelationServerSideMetrics();
metrics.setTimeBucket(toTimeBucketInMonth());
- metrics.setSourceEndpointId(getSourceEndpointId());
- metrics.setDestEndpointId(getDestEndpointId());
+ metrics.setSourceEndpoint(getSourceEndpoint());
+ metrics.setDestEndpoint(getDestEndpoint());
metrics.setComponentId(getComponentId());
metrics.setEntityId(getEntityId());
return metrics;
@@ -124,42 +116,42 @@ public class EndpointRelationServerSideMetrics extends Metrics {
@Override
public int remoteHashCode() {
int result = 17;
- result = 31 * result + sourceEndpointId;
- result = 31 * result + destEndpointId;
+ result = 31 * result + sourceEndpoint.hashCode();
+ result = 31 * result + destEndpoint.hashCode();
result = 31 * result + componentId;
return result;
}
@Override
public void deserialize(RemoteData remoteData) {
- setSourceEndpointId(remoteData.getDataIntegers(0));
- setDestEndpointId(remoteData.getDataIntegers(1));
- setComponentId(remoteData.getDataIntegers(2));
+ setComponentId(remoteData.getDataIntegers(0));
setTimeBucket(remoteData.getDataLongs(0));
setEntityId(remoteData.getDataStrings(0));
+ setSourceEndpoint(remoteData.getDataStrings(1));
+ setDestEndpoint(remoteData.getDataStrings(2));
}
@Override
public RemoteData.Builder serialize() {
RemoteData.Builder remoteBuilder = RemoteData.newBuilder();
- remoteBuilder.addDataIntegers(getSourceEndpointId());
- remoteBuilder.addDataIntegers(getDestEndpointId());
remoteBuilder.addDataIntegers(getComponentId());
remoteBuilder.addDataLongs(getTimeBucket());
remoteBuilder.addDataStrings(getEntityId());
+ remoteBuilder.addDataStrings(getSourceEndpoint());
+ remoteBuilder.addDataStrings(getDestEndpoint());
return remoteBuilder;
}
@Override
public int hashCode() {
int result = 17;
- result = 31 * result + sourceEndpointId;
- result = 31 * result + destEndpointId;
+ result = 31 * result + sourceEndpoint.hashCode();
+ result = 31 * result + destEndpoint.hashCode();
result = 31 * result + componentId;
result = 31 * result + (int) getTimeBucket();
return result;
@@ -175,9 +167,9 @@ public class EndpointRelationServerSideMetrics extends Metrics {
return false;
EndpointRelationServerSideMetrics metrics = (EndpointRelationServerSideMetrics) obj;
- if (sourceEndpointId != metrics.sourceEndpointId)
+ if (sourceEndpoint != metrics.sourceEndpoint)
return false;
- if (destEndpointId != metrics.destEndpointId)
+ if (destEndpoint != metrics.destEndpoint)
return false;
if (componentId != metrics.componentId)
return false;
@@ -190,8 +182,8 @@ public class EndpointRelationServerSideMetrics extends Metrics {
@Override
public EndpointRelationServerSideMetrics map2Data(Map<String, Object> dbMap) {
EndpointRelationServerSideMetrics metrics = new EndpointRelationServerSideMetrics();
- metrics.setSourceEndpointId(((Number) dbMap.get(SOURCE_ENDPOINT_ID)).intValue());
- metrics.setDestEndpointId(((Number) dbMap.get(DEST_ENDPOINT_ID)).intValue());
+ metrics.setSourceEndpoint((String) dbMap.get(SOURCE_ENDPOINT));
+ metrics.setDestEndpoint((String) dbMap.get(DEST_ENDPOINT));
metrics.setComponentId(((Number) dbMap.get(COMPONENT_ID)).intValue());
metrics.setTimeBucket(((Number) dbMap.get(TIME_BUCKET)).longValue());
metrics.setEntityId((String) dbMap.get(ENTITY_ID));
@@ -201,8 +193,8 @@ public class EndpointRelationServerSideMetrics extends Metrics {
@Override
public Map<String, Object> data2Map(EndpointRelationServerSideMetrics storageData) {
Map<String, Object> map = new HashMap<>();
- map.put(SOURCE_ENDPOINT_ID, storageData.getSourceEndpointId());
- map.put(DEST_ENDPOINT_ID, storageData.getDestEndpointId());
+ map.put(SOURCE_ENDPOINT, storageData.getSourceEndpoint());
+ map.put(DEST_ENDPOINT, storageData.getDestEndpoint());
map.put(COMPONENT_ID, storageData.getComponentId());
map.put(TIME_BUCKET, storageData.getTimeBucket());
map.put(ENTITY_ID, storageData.getEntityId());
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/log/AbstractLogRecord.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/log/AbstractLogRecord.java
index a11b53e..e7eb0ba 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/log/AbstractLogRecord.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/log/AbstractLogRecord.java
@@ -32,7 +32,7 @@ public abstract class AbstractLogRecord extends Record {
public static final String SERVICE_ID = "service_id";
public static final String SERVICE_INSTANCE_ID = "service_instance_id";
- public static final String ENDPOINT_ID = "endpoint_id";
+ public static final String ENDPOINT_NAME = "endpoint_name";
public static final String TRACE_ID = "trace_id";
public static final String IS_ERROR = "is_error";
public static final String STATUS_CODE = "status_code";
@@ -50,8 +50,8 @@ public abstract class AbstractLogRecord extends Record {
private int serviceInstanceId;
@Setter
@Getter
- @Column(columnName = ENDPOINT_ID)
- private int endpointId;
+ @Column(columnName = ENDPOINT_NAME)
+ private String endpointName;
@Setter
@Getter
@Column(columnName = TRACE_ID)
@@ -86,7 +86,7 @@ public abstract class AbstractLogRecord extends Record {
protected void map2Data(T record, Map<String, Object> dbMap) {
record.setServiceId(((Number) dbMap.get(SERVICE_ID)).intValue());
record.setServiceInstanceId(((Number) dbMap.get(SERVICE_INSTANCE_ID)).intValue());
- record.setEndpointId(((Number) dbMap.get(ENDPOINT_ID)).intValue());
+ record.setEndpointName((String) dbMap.get(ENDPOINT_NAME));
record.setIsError(((Number) dbMap.get(IS_ERROR)).intValue());
record.setTraceId((String) dbMap.get(TRACE_ID));
record.setStatusCode((String) dbMap.get(STATUS_CODE));
@@ -101,7 +101,7 @@ public abstract class AbstractLogRecord extends Record {
Map<String, Object> map = new HashMap<>();
map.put(SERVICE_ID, record.getServiceId());
map.put(SERVICE_INSTANCE_ID, record.getServiceInstanceId());
- map.put(ENDPOINT_ID, record.getEndpointId());
+ map.put(ENDPOINT_NAME, record.getEndpointName());
map.put(TRACE_ID, record.getTraceId());
map.put(IS_ERROR, record.getIsError());
map.put(STATUS_CODE, record.getStatusCode());
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/relation/service/ServiceRelationClientSideMetrics.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/relation/service/ServiceRelationClientSideMetrics.java
index 7782d59..cee1d36 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/relation/service/ServiceRelationClientSideMetrics.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/relation/service/ServiceRelationClientSideMetrics.java
@@ -71,10 +71,8 @@ public class ServiceRelationClientSideMetrics extends Metrics {
}
public void buildEntityId() {
- String splitJointId = String.valueOf(sourceServiceId);
- splitJointId += Const.ID_SPLIT + String.valueOf(destServiceId);
- splitJointId += Const.ID_SPLIT + String.valueOf(componentId);
- entityId = splitJointId;
+ entityId = RelationDefineUtil.buildEntityId(
+ new RelationDefineUtil.RelationDefine(sourceServiceId, destServiceId, componentId));
}
@Override
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/relation/service/ServiceRelationServerSideMetrics.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/relation/service/ServiceRelationServerSideMetrics.java
index bb2a562..52c175b 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/relation/service/ServiceRelationServerSideMetrics.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/relation/service/ServiceRelationServerSideMetrics.java
@@ -66,15 +66,14 @@ public class ServiceRelationServerSideMetrics extends Metrics {
@Override
public String id() {
String splitJointId = String.valueOf(getTimeBucket());
- splitJointId += Const.ID_SPLIT + RelationDefineUtil.buildEntityId(new RelationDefineUtil.RelationDefine(sourceServiceId, destServiceId, componentId));
+ splitJointId += Const.ID_SPLIT + RelationDefineUtil.buildEntityId(
+ new RelationDefineUtil.RelationDefine(sourceServiceId, destServiceId, componentId));
return splitJointId;
}
public void buildEntityId() {
- String splitJointId = String.valueOf(sourceServiceId);
- splitJointId += Const.ID_SPLIT + String.valueOf(destServiceId);
- splitJointId += Const.ID_SPLIT + String.valueOf(componentId);
- entityId = splitJointId;
+ entityId = RelationDefineUtil.buildEntityId(
+ new RelationDefineUtil.RelationDefine(sourceServiceId, destServiceId, componentId));
}
@Override
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/worker/MetricsStreamProcessor.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/worker/MetricsStreamProcessor.java
index 54c2861..6f4f608 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/worker/MetricsStreamProcessor.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/worker/MetricsStreamProcessor.java
@@ -113,24 +113,27 @@ public class MetricsStreamProcessor implements StreamProcessor<Metrics> {
MetricsPersistentWorker dayPersistentWorker = null;
MetricsPersistentWorker monthPersistentWorker = null;
- if (configService.shouldToHour()) {
- Model model = modelSetter.putIfAbsent(
- metricsClass, stream.scopeId(), new Storage(stream.name(), true, true, Downsampling.Hour), false);
- hourPersistentWorker = worker(moduleDefineHolder, metricsDAO, model);
+ MetricsTransWorker transWorker = null;
+ if (stream.supportDownSampling()) {
+ if (configService.shouldToHour()) {
+ Model model = modelSetter.putIfAbsent(
+ metricsClass, stream.scopeId(), new Storage(stream.name(), true, true, Downsampling.Hour), false);
+ hourPersistentWorker = worker(moduleDefineHolder, metricsDAO, model);
+ }
+ if (configService.shouldToDay()) {
+ Model model = modelSetter.putIfAbsent(
+ metricsClass, stream.scopeId(), new Storage(stream.name(), true, true, Downsampling.Day), false);
+ dayPersistentWorker = worker(moduleDefineHolder, metricsDAO, model);
+ }
+ if (configService.shouldToMonth()) {
+ Model model = modelSetter.putIfAbsent(
+ metricsClass, stream.scopeId(), new Storage(stream.name(), true, true, Downsampling.Month), false);
+ monthPersistentWorker = worker(moduleDefineHolder, metricsDAO, model);
+ }
+
+ transWorker = new MetricsTransWorker(
+ moduleDefineHolder, stream.name(), hourPersistentWorker, dayPersistentWorker, monthPersistentWorker);
}
- if (configService.shouldToDay()) {
- Model model = modelSetter.putIfAbsent(
- metricsClass, stream.scopeId(), new Storage(stream.name(), true, true, Downsampling.Day), false);
- dayPersistentWorker = worker(moduleDefineHolder, metricsDAO, model);
- }
- if (configService.shouldToMonth()) {
- Model model = modelSetter.putIfAbsent(
- metricsClass, stream.scopeId(), new Storage(stream.name(), true, true, Downsampling.Month), false);
- monthPersistentWorker = worker(moduleDefineHolder, metricsDAO, model);
- }
-
- MetricsTransWorker transWorker = new MetricsTransWorker(
- moduleDefineHolder, stream.name(), hourPersistentWorker, dayPersistentWorker, monthPersistentWorker);
Model model = modelSetter.putIfAbsent(
metricsClass, stream.scopeId(), new Storage(stream.name(), true, true, Downsampling.Minute), false);
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/cache/EndpointInventoryCache.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/cache/EndpointInventoryCache.java
deleted file mode 100644
index 4181a51..0000000
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/cache/EndpointInventoryCache.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * 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.
- *
- */
-
-package org.apache.skywalking.oap.server.core.cache;
-
-import com.google.common.cache.Cache;
-import com.google.common.cache.CacheBuilder;
-import java.util.Objects;
-import org.apache.skywalking.oap.server.core.Const;
-import org.apache.skywalking.oap.server.core.CoreModuleConfig;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
-import org.apache.skywalking.oap.server.core.storage.StorageModule;
-import org.apache.skywalking.oap.server.core.storage.cache.IEndpointInventoryCacheDAO;
-import org.apache.skywalking.oap.server.library.module.ModuleManager;
-import org.apache.skywalking.oap.server.library.module.Service;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import static java.util.Objects.isNull;
-import static java.util.Objects.nonNull;
-
-public class EndpointInventoryCache implements Service {
-
- private static final Logger logger = LoggerFactory.getLogger(EndpointInventoryCache.class);
-
- private final ModuleManager moduleManager;
- private final EndpointInventory userEndpoint;
- private final Cache<String, Integer> endpointNameCache;
- private final Cache<Integer, EndpointInventory> endpointIdCache;
-
- private IEndpointInventoryCacheDAO cacheDAO;
-
- public EndpointInventoryCache(ModuleManager moduleManager, CoreModuleConfig moduleConfig) {
- this.moduleManager = moduleManager;
-
- this.userEndpoint = new EndpointInventory();
- this.userEndpoint.setSequence(Const.USER_ENDPOINT_ID);
- this.userEndpoint.setName(Const.USER_CODE);
- this.userEndpoint.setServiceId(Const.USER_SERVICE_ID);
-
- long initialSize = moduleConfig.getMaxSizeOfEndpointInventory() / 10L;
- int initialCapacitySize = (int) (initialSize > Integer.MAX_VALUE ? Integer.MAX_VALUE : initialSize);
-
- endpointNameCache = CacheBuilder.newBuilder()
- .initialCapacity(initialCapacitySize)
- .maximumSize(moduleConfig.getMaxSizeOfEndpointInventory())
- .build();
- endpointIdCache = CacheBuilder.newBuilder()
- .initialCapacity(initialCapacitySize)
- .maximumSize(moduleConfig.getMaxSizeOfEndpointInventory())
- .build();
- }
-
- private IEndpointInventoryCacheDAO getCacheDAO() {
- if (isNull(cacheDAO)) {
- cacheDAO = moduleManager.find(StorageModule.NAME).provider().getService(IEndpointInventoryCacheDAO.class);
- }
- return cacheDAO;
- }
-
- public int getEndpointId(int serviceId, String endpointName, int detectPoint) {
- String id = EndpointInventory.buildId(serviceId, endpointName, detectPoint);
-
- Integer endpointId = endpointNameCache.getIfPresent(id);
-
- if (Objects.isNull(endpointId) || endpointId == Const.NONE) {
- endpointId = getCacheDAO().getEndpointId(serviceId, endpointName, detectPoint);
- if (endpointId != Const.NONE) {
- endpointNameCache.put(id, endpointId);
- }
- }
- return endpointId;
- }
-
- public EndpointInventory get(int endpointId) {
- if (Const.USER_ENDPOINT_ID == endpointId) {
- return userEndpoint;
- }
-
- EndpointInventory endpointInventory = endpointIdCache.getIfPresent(endpointId);
-
- if (isNull(endpointInventory)) {
- endpointInventory = getCacheDAO().get(endpointId);
- if (nonNull(endpointInventory)) {
- endpointIdCache.put(endpointId, endpointInventory);
- } else {
- logger.warn("EndpointInventory id {} is not in cache and persistent storage.", endpointId);
- }
- }
-
- return endpointInventory;
- }
-}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/AggregationQueryService.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/AggregationQueryService.java
index 7c8d644..9154f7b 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/AggregationQueryService.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/AggregationQueryService.java
@@ -22,12 +22,11 @@ import java.io.IOException;
import java.util.List;
import org.apache.skywalking.oap.server.core.CoreModule;
import org.apache.skywalking.oap.server.core.analysis.Downsampling;
-import org.apache.skywalking.oap.server.core.cache.EndpointInventoryCache;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.cache.ServiceInstanceInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInventoryCache;
import org.apache.skywalking.oap.server.core.query.entity.Order;
import org.apache.skywalking.oap.server.core.query.entity.TopNEntity;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
import org.apache.skywalking.oap.server.core.register.ServiceInstanceInventory;
import org.apache.skywalking.oap.server.core.register.ServiceInventory;
import org.apache.skywalking.oap.server.core.storage.StorageModule;
@@ -55,8 +54,9 @@ public class AggregationQueryService implements Service {
}
public List<TopNEntity> getServiceTopN(final String indName, final int topN, final Downsampling downsampling,
- final long startTB, final long endTB, final Order order) throws IOException {
- List<TopNEntity> topNEntities = getAggregationQueryDAO().getServiceTopN(indName, ValueColumnMetadata.INSTANCE.getValueCName(indName), topN, downsampling, startTB, endTB, order);
+ final long startTB, final long endTB, final Order order) throws IOException {
+ List<TopNEntity> topNEntities = getAggregationQueryDAO().getServiceTopN(
+ indName, ValueColumnMetadata.INSTANCE.getValueCName(indName), topN, downsampling, startTB, endTB, order);
for (TopNEntity entity : topNEntities) {
ServiceInventory inventory = moduleManager.find(CoreModule.NAME)
.provider()
@@ -69,10 +69,15 @@ public class AggregationQueryService implements Service {
return topNEntities;
}
- public List<TopNEntity> getAllServiceInstanceTopN(final String indName, final int topN,
- final Downsampling downsampling, final long startTB, final long endTB, final Order order) throws IOException {
- List<TopNEntity> topNEntities = getAggregationQueryDAO().getAllServiceInstanceTopN(indName, ValueColumnMetadata.INSTANCE
- .getValueCName(indName), topN, downsampling, startTB, endTB, order);
+ public List<TopNEntity> getAllServiceInstanceTopN(final String indName,
+ final int topN,
+ final Downsampling downsampling,
+ final long startTB,
+ final long endTB,
+ final Order order) throws IOException {
+ List<TopNEntity> topNEntities = getAggregationQueryDAO().getAllServiceInstanceTopN(
+ indName, ValueColumnMetadata.INSTANCE
+ .getValueCName(indName), topN, downsampling, startTB, endTB, order);
for (TopNEntity entity : topNEntities) {
ServiceInstanceInventory inventory = moduleManager.find(CoreModule.NAME)
.provider()
@@ -85,10 +90,16 @@ public class AggregationQueryService implements Service {
return topNEntities;
}
- public List<TopNEntity> getServiceInstanceTopN(final int serviceId, final String indName, final int topN,
- final Downsampling downsampling, final long startTB, final long endTB, final Order order) throws IOException {
- List<TopNEntity> topNEntities = getAggregationQueryDAO().getServiceInstanceTopN(serviceId, indName, ValueColumnMetadata.INSTANCE
- .getValueCName(indName), topN, downsampling, startTB, endTB, order);
+ public List<TopNEntity> getServiceInstanceTopN(final int serviceId,
+ final String indName,
+ final int topN,
+ final Downsampling downsampling,
+ final long startTB,
+ final long endTB,
+ final Order order) throws IOException {
+ List<TopNEntity> topNEntities = getAggregationQueryDAO().getServiceInstanceTopN(
+ serviceId, indName, ValueColumnMetadata.INSTANCE
+ .getValueCName(indName), topN, downsampling, startTB, endTB, order);
for (TopNEntity entity : topNEntities) {
ServiceInstanceInventory inventory = moduleManager.find(CoreModule.NAME)
.provider()
@@ -101,33 +112,33 @@ public class AggregationQueryService implements Service {
return topNEntities;
}
- public List<TopNEntity> getAllEndpointTopN(final String indName, final int topN, final Downsampling downsampling,
- final long startTB, final long endTB, final Order order) throws IOException {
- List<TopNEntity> topNEntities = getAggregationQueryDAO().getAllEndpointTopN(indName, ValueColumnMetadata.INSTANCE.getValueCName(indName), topN, downsampling, startTB, endTB, order);
+ public List<TopNEntity> getAllEndpointTopN(final String indName,
+ final int topN,
+ final Downsampling downsampling,
+ final long startTB,
+ final long endTB,
+ final Order order) throws IOException {
+ List<TopNEntity> topNEntities = getAggregationQueryDAO().getAllEndpointTopN(
+ indName, ValueColumnMetadata.INSTANCE.getValueCName(indName), topN, downsampling, startTB, endTB, order);
+
for (TopNEntity entity : topNEntities) {
- EndpointInventory inventory = moduleManager.find(CoreModule.NAME)
- .provider()
- .getService(EndpointInventoryCache.class)
- .get(Integer.parseInt(entity.getId()));
- if (inventory != null) {
- entity.setName(inventory.getName());
- }
+ entity.setName(EndpointTraffic.splitID(entity.getId())[1]);
}
return topNEntities;
}
- public List<TopNEntity> getEndpointTopN(final int serviceId, final String indName, final int topN,
- final Downsampling downsampling, final long startTB, final long endTB, final Order order) throws IOException {
- List<TopNEntity> topNEntities = getAggregationQueryDAO().getEndpointTopN(serviceId, indName, ValueColumnMetadata.INSTANCE
- .getValueCName(indName), topN, downsampling, startTB, endTB, order);
+ public List<TopNEntity> getEndpointTopN(final int serviceId,
+ final String indName,
+ final int topN,
+ final Downsampling downsampling,
+ final long startTB,
+ final long endTB,
+ final Order order) throws IOException {
+ List<TopNEntity> topNEntities = getAggregationQueryDAO().getEndpointTopN(
+ serviceId, indName, ValueColumnMetadata.INSTANCE
+ .getValueCName(indName), topN, downsampling, startTB, endTB, order);
for (TopNEntity entity : topNEntities) {
- EndpointInventory inventory = moduleManager.find(CoreModule.NAME)
- .provider()
- .getService(EndpointInventoryCache.class)
- .get(Integer.parseInt(entity.getId()));
- if (inventory != null) {
- entity.setName(inventory.getName());
- }
+ entity.setName(EndpointTraffic.splitID(entity.getId())[1]);
}
return topNEntities;
}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/LogQueryService.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/LogQueryService.java
index 13b8631..fe58e7f 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/LogQueryService.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/LogQueryService.java
@@ -21,7 +21,6 @@ package org.apache.skywalking.oap.server.core.query;
import java.io.IOException;
import org.apache.skywalking.oap.server.core.Const;
import org.apache.skywalking.oap.server.core.CoreModule;
-import org.apache.skywalking.oap.server.core.cache.EndpointInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInstanceInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInventoryCache;
import org.apache.skywalking.oap.server.core.query.entity.LogState;
@@ -38,7 +37,6 @@ public class LogQueryService implements Service {
private ILogQueryDAO logQueryDAO;
private ServiceInventoryCache serviceInventoryCache;
private ServiceInstanceInventoryCache serviceInstanceInventoryCache;
- private EndpointInventoryCache endpointInventoryCache;
public LogQueryService(ModuleManager moduleManager) {
this.moduleManager = moduleManager;
@@ -69,21 +67,21 @@ public class LogQueryService implements Service {
return serviceInstanceInventoryCache;
}
- private EndpointInventoryCache getEndpointInventoryCache() {
- if (endpointInventoryCache == null) {
- this.endpointInventoryCache = moduleManager.find(CoreModule.NAME)
- .provider()
- .getService(EndpointInventoryCache.class);
- }
- return endpointInventoryCache;
- }
-
- public Logs queryLogs(final String metricName, int serviceId, int serviceInstanceId, int endpointId, String traceId,
- LogState state, String stateCode, Pagination paging, final long startTB, final long endTB) throws IOException {
+ public Logs queryLogs(final String metricName,
+ int serviceId,
+ int serviceInstanceId,
+ int endpointId,
+ String traceId,
+ LogState state,
+ String stateCode,
+ Pagination paging,
+ final long startTB,
+ final long endTB) throws IOException {
PaginationUtils.Page page = PaginationUtils.INSTANCE.exchange(paging);
- Logs logs = getLogQueryDAO().queryLogs(metricName, serviceId, serviceInstanceId, endpointId, traceId, state, stateCode, paging, page
- .getFrom(), page.getLimit(), startTB, endTB);
+ Logs logs = getLogQueryDAO().queryLogs(
+ metricName, serviceId, serviceInstanceId, endpointId, traceId, state, stateCode, paging, page
+ .getFrom(), page.getLimit(), startTB, endTB);
logs.getLogs().forEach(log -> {
if (log.getServiceId() != Const.NONE) {
log.setServiceName(getServiceInventoryCache().get(log.getServiceId()).getName());
@@ -92,9 +90,7 @@ public class LogQueryService implements Service {
log.setServiceInstanceName(getServiceInstanceInventoryCache().get(log.getServiceInstanceId())
.getName());
}
- if (log.getEndpointId() != Const.NONE) {
- log.setEndpointName(getEndpointInventoryCache().get(log.getEndpointId()).getName());
- }
+ log.setEndpointName(log.getEndpointName());
});
return logs;
}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/MetadataQueryService.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/MetadataQueryService.java
index bae70a7..7b9454e 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/MetadataQueryService.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/MetadataQueryService.java
@@ -21,7 +21,7 @@ package org.apache.skywalking.oap.server.core.query;
import java.io.IOException;
import java.util.List;
import org.apache.skywalking.oap.server.core.CoreModule;
-import org.apache.skywalking.oap.server.core.cache.EndpointInventoryCache;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.cache.ServiceInventoryCache;
import org.apache.skywalking.oap.server.core.query.entity.ClusterBrief;
import org.apache.skywalking.oap.server.core.query.entity.Database;
@@ -29,7 +29,6 @@ import org.apache.skywalking.oap.server.core.query.entity.Endpoint;
import org.apache.skywalking.oap.server.core.query.entity.EndpointInfo;
import org.apache.skywalking.oap.server.core.query.entity.Service;
import org.apache.skywalking.oap.server.core.query.entity.ServiceInstance;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
import org.apache.skywalking.oap.server.core.register.NodeType;
import org.apache.skywalking.oap.server.core.storage.StorageModule;
import org.apache.skywalking.oap.server.core.storage.query.IMetadataQueryDAO;
@@ -40,7 +39,6 @@ public class MetadataQueryService implements org.apache.skywalking.oap.server.li
private final ModuleManager moduleManager;
private IMetadataQueryDAO metadataQueryDAO;
private ServiceInventoryCache serviceInventoryCache;
- private EndpointInventoryCache endpointInventoryCache;
public MetadataQueryService(ModuleManager moduleManager) {
this.moduleManager = moduleManager;
@@ -62,15 +60,6 @@ public class MetadataQueryService implements org.apache.skywalking.oap.server.li
return serviceInventoryCache;
}
- private EndpointInventoryCache getEndpointInventoryCache() {
- if (endpointInventoryCache == null) {
- endpointInventoryCache = moduleManager.find(CoreModule.NAME)
- .provider()
- .getService(EndpointInventoryCache.class);
- }
- return endpointInventoryCache;
- }
-
public ClusterBrief getGlobalBrief(final long startTimestamp, final long endTimestamp) throws IOException {
ClusterBrief clusterBrief = new ClusterBrief();
clusterBrief.setNumOfService(getMetadataQueryDAO().numOfService(startTimestamp, endTimestamp));
@@ -94,17 +83,17 @@ public class MetadataQueryService implements org.apache.skywalking.oap.server.li
}
public List<Service> searchServices(final long startTimestamp, final long endTimestamp,
- final String keyword) throws IOException {
+ final String keyword) throws IOException {
return getMetadataQueryDAO().searchServices(startTimestamp, endTimestamp, keyword);
}
public List<ServiceInstance> getServiceInstances(final long startTimestamp, final long endTimestamp,
- final String serviceId) throws IOException {
+ final String serviceId) throws IOException {
return getMetadataQueryDAO().getServiceInstances(startTimestamp, endTimestamp, serviceId);
}
public List<Endpoint> searchEndpoint(final String keyword, final String serviceId,
- final int limit) throws IOException {
+ final int limit) throws IOException {
return getMetadataQueryDAO().searchEndpoint(keyword, serviceId, limit);
}
@@ -112,14 +101,15 @@ public class MetadataQueryService implements org.apache.skywalking.oap.server.li
return getMetadataQueryDAO().searchService(serviceCode);
}
- public EndpointInfo getEndpointInfo(final int endpointId) throws IOException {
- EndpointInventory endpointInventory = getEndpointInventoryCache().get(endpointId);
+ public EndpointInfo getEndpointInfo(final String endpointId) throws IOException {
+ final String[] strings = EndpointTraffic.splitID(endpointId);
+ int serviceId = Integer.parseInt(strings[0]);
EndpointInfo endpointInfo = new EndpointInfo();
- endpointInfo.setId(endpointInventory.getSequence());
- endpointInfo.setName(endpointInventory.getName());
- endpointInfo.setServiceId(endpointInventory.getServiceId());
- endpointInfo.setServiceName(getServiceInventoryCache().get(endpointInventory.getServiceId()).getName());
+ endpointInfo.setId(endpointId);
+ endpointInfo.setName(strings[1]);
+ endpointInfo.setServiceId(serviceId);
+ endpointInfo.setServiceName(getServiceInventoryCache().get(serviceId).getName());
return endpointInfo;
}
}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/ProfileTaskQueryService.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/ProfileTaskQueryService.java
index 156e88f..dcc10e8 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/ProfileTaskQueryService.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/ProfileTaskQueryService.java
@@ -24,13 +24,10 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
-
import org.apache.skywalking.apm.network.language.agent.v2.SegmentObject;
-import org.apache.skywalking.oap.server.core.Const;
import org.apache.skywalking.oap.server.core.CoreModule;
import org.apache.skywalking.oap.server.core.CoreModuleConfig;
import org.apache.skywalking.oap.server.core.analysis.manual.segment.SegmentRecord;
-import org.apache.skywalking.oap.server.core.cache.EndpointInventoryCache;
import org.apache.skywalking.oap.server.core.cache.NetworkAddressInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInstanceInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInventoryCache;
@@ -45,7 +42,6 @@ import org.apache.skywalking.oap.server.core.query.entity.ProfileTask;
import org.apache.skywalking.oap.server.core.query.entity.ProfileTaskLog;
import org.apache.skywalking.oap.server.core.query.entity.ProfiledSegment;
import org.apache.skywalking.oap.server.core.query.entity.ProfiledSpan;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
import org.apache.skywalking.oap.server.core.register.ServiceInstanceInventory;
import org.apache.skywalking.oap.server.core.register.ServiceInventory;
import org.apache.skywalking.oap.server.core.storage.StorageModule;
@@ -57,7 +53,6 @@ import org.apache.skywalking.oap.server.library.module.Service;
import org.apache.skywalking.oap.server.library.util.CollectionUtils;
import static java.util.Objects.isNull;
-import static java.util.Objects.nonNull;
/**
* handle profile task queries
@@ -71,13 +66,15 @@ public class ProfileTaskQueryService implements Service {
private ServiceInstanceInventoryCache serviceInstanceInventoryCache;
private NetworkAddressInventoryCache networkAddressInventoryCache;
private IComponentLibraryCatalogService componentLibraryCatalogService;
- private EndpointInventoryCache endpointInventoryCache;
private final ProfileAnalyzer profileAnalyzer;
public ProfileTaskQueryService(ModuleManager moduleManager, CoreModuleConfig moduleConfig) {
this.moduleManager = moduleManager;
- this.profileAnalyzer = new ProfileAnalyzer(moduleManager, moduleConfig.getMaxPageSizeOfQueryProfileSnapshot(), moduleConfig.getMaxSizeOfAnalyzeProfileSnapshot());
+ this.profileAnalyzer = new ProfileAnalyzer(
+ moduleManager, moduleConfig.getMaxPageSizeOfQueryProfileSnapshot(),
+ moduleConfig.getMaxSizeOfAnalyzeProfileSnapshot()
+ );
}
private IProfileTaskQueryDAO getProfileTaskDAO() {
@@ -143,15 +140,6 @@ public class ProfileTaskQueryService implements Service {
return componentLibraryCatalogService;
}
- private EndpointInventoryCache getEndpointInventoryCache() {
- if (endpointInventoryCache == null) {
- this.endpointInventoryCache = moduleManager.find(CoreModule.NAME)
- .provider()
- .getService(EndpointInventoryCache.class);
- }
- return endpointInventoryCache;
- }
-
/**
* search profile task list
*
@@ -180,7 +168,8 @@ public class ProfileTaskQueryService implements Service {
// filter all task logs
task.setLogs(taskLogList.stream().filter(l -> Objects.equal(l.getTaskId(), task.getId())).map(l -> {
// get instance name from cache
- final ServiceInstanceInventory instanceInventory = serviceInstanceInventoryCache.get(l.getInstanceId());
+ final ServiceInstanceInventory instanceInventory = serviceInstanceInventoryCache.get(
+ l.getInstanceId());
if (instanceInventory != null) {
l.setInstanceName(instanceInventory.getName());
}
@@ -199,7 +188,8 @@ public class ProfileTaskQueryService implements Service {
return getProfileThreadSnapshotQueryDAO().queryProfiledSegments(taskId);
}
- public ProfileAnalyzation getProfileAnalyze(final String segmentId, final List<ProfileAnalyzeTimeRange> timeRanges) throws IOException {
+ public ProfileAnalyzation getProfileAnalyze(final String segmentId,
+ final List<ProfileAnalyzeTimeRange> timeRanges) throws IOException {
return profileAnalyzer.analyze(segmentId, timeRanges);
}
@@ -228,6 +218,7 @@ public class ProfileTaskQueryService implements Service {
span.setError(spanObject.getIsError());
span.setLayer(spanObject.getSpanLayer().name());
span.setType(spanObject.getSpanType().name());
+ span.setEndpointName(spanObject.getOperationName());
if (spanObject.getPeerId() == 0) {
span.setPeer(spanObject.getPeer());
@@ -235,17 +226,6 @@ public class ProfileTaskQueryService implements Service {
span.setPeer(getNetworkAddressInventoryCache().get(spanObject.getPeerId()).getName());
}
- String endpointName = spanObject.getOperationName();
- if (spanObject.getOperationNameId() != 0) {
- EndpointInventory endpointInventory = getEndpointInventoryCache().get(spanObject.getOperationNameId());
- if (nonNull(endpointInventory)) {
- endpointName = endpointInventory.getName();
- } else {
- endpointName = Const.EMPTY_STRING;
- }
- }
- span.setEndpointName(endpointName);
-
final ServiceInventory serviceInventory = getServiceInventoryCache().get(segmentObject.getServiceId());
if (serviceInventory != null) {
span.setServiceCode(serviceInventory.getName());
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/TopologyQueryService.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/TopologyQueryService.java
index 980a577..858d612 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/TopologyQueryService.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/TopologyQueryService.java
@@ -27,7 +27,6 @@ import java.util.Set;
import org.apache.skywalking.oap.server.core.Const;
import org.apache.skywalking.oap.server.core.CoreModule;
import org.apache.skywalking.oap.server.core.analysis.Downsampling;
-import org.apache.skywalking.oap.server.core.cache.EndpointInventoryCache;
import org.apache.skywalking.oap.server.core.config.IComponentLibraryCatalogService;
import org.apache.skywalking.oap.server.core.query.entity.Call;
import org.apache.skywalking.oap.server.core.query.entity.Node;
@@ -50,7 +49,6 @@ public class TopologyQueryService implements Service {
private final ModuleManager moduleManager;
private ITopologyQueryDAO topologyQueryDAO;
private IMetadataQueryDAO metadataQueryDAO;
- private EndpointInventoryCache endpointInventoryCache;
private IComponentLibraryCatalogService componentLibraryCatalogService;
public TopologyQueryService(ModuleManager moduleManager) {
@@ -80,15 +78,6 @@ public class TopologyQueryService implements Service {
return componentLibraryCatalogService;
}
- private EndpointInventoryCache getEndpointInventoryCache() {
- if (endpointInventoryCache == null) {
- endpointInventoryCache = moduleManager.find(CoreModule.NAME)
- .provider()
- .getService(EndpointInventoryCache.class);
- }
- return endpointInventoryCache;
- }
-
public Topology getGlobalTopology(final Downsampling downsampling, final long startTB,
final long endTB) throws IOException {
logger.debug("Downsampling: {}, startTimeBucket: {}, endTimeBucket: {}", downsampling, startTB, endTB);
@@ -121,7 +110,7 @@ public class TopologyQueryService implements Service {
// Client side relationships exclude the given services(#serviceIds)
// The given services(#serviceIds)'s component names have been included inside `serviceRelationServerCalls`
if (!serviceIds.contains(call.getSource())) {
- outScopeSourceServiceIds.add(call.getSource());
+ outScopeSourceServiceIds.add(Integer.parseInt(call.getSource()));
}
});
if (CollectionUtils.isNotEmpty(outScopeSourceServiceIds)) {
@@ -131,7 +120,7 @@ public class TopologyQueryService implements Service {
topology.getNodes().forEach(node -> {
if (Strings.isNullOrEmpty(node.getType())) {
for (Call.CallDetail call : sourceCalls) {
- if (node.getId() == call.getTarget()) {
+ if (node.getId().equals(call.getTarget())) {
node.setType(getComponentLibraryCatalogService().getComponentName(call.getComponentId()));
break;
}
@@ -177,7 +166,7 @@ public class TopologyQueryService implements Service {
topology.getCalls().add(call);
});
- Set<Integer> nodeIds = new HashSet<>();
+ Set<String> nodeIds = new HashSet<>();
serverSideCalls.forEach(call -> {
if (!nodeIds.contains(call.getSource())) {
topology.getNodes().add(buildEndpointNode(call.getSource()));
@@ -192,7 +181,7 @@ public class TopologyQueryService implements Service {
return topology;
}
- private Node buildEndpointNode(int endpointId) {
+ private Node buildEndpointNode(String endpointId) {
Node node = new Node();
node.setId(endpointId);
node.setName(getEndpointInventoryCache().get(endpointId).getName());
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/TraceQueryService.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/TraceQueryService.java
index a04347c..1ffdcc5 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/TraceQueryService.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/TraceQueryService.java
@@ -30,7 +30,6 @@ import org.apache.skywalking.apm.network.language.agent.v2.SpanObjectV2;
import org.apache.skywalking.oap.server.core.Const;
import org.apache.skywalking.oap.server.core.CoreModule;
import org.apache.skywalking.oap.server.core.analysis.manual.segment.SegmentRecord;
-import org.apache.skywalking.oap.server.core.cache.EndpointInventoryCache;
import org.apache.skywalking.oap.server.core.cache.NetworkAddressInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInventoryCache;
import org.apache.skywalking.oap.server.core.config.IComponentLibraryCatalogService;
@@ -44,7 +43,6 @@ import org.apache.skywalking.oap.server.core.query.entity.Span;
import org.apache.skywalking.oap.server.core.query.entity.Trace;
import org.apache.skywalking.oap.server.core.query.entity.TraceBrief;
import org.apache.skywalking.oap.server.core.query.entity.TraceState;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
import org.apache.skywalking.oap.server.core.register.ServiceInventory;
import org.apache.skywalking.oap.server.core.storage.StorageModule;
import org.apache.skywalking.oap.server.core.storage.query.ITraceQueryDAO;
@@ -59,7 +57,6 @@ public class TraceQueryService implements Service {
private final ModuleManager moduleManager;
private ITraceQueryDAO traceQueryDAO;
private ServiceInventoryCache serviceInventoryCache;
- private EndpointInventoryCache endpointInventoryCache;
private NetworkAddressInventoryCache networkAddressInventoryCache;
private IComponentLibraryCatalogService componentLibraryCatalogService;
@@ -83,15 +80,6 @@ public class TraceQueryService implements Service {
return serviceInventoryCache;
}
- private EndpointInventoryCache getEndpointInventoryCache() {
- if (endpointInventoryCache == null) {
- this.endpointInventoryCache = moduleManager.find(CoreModule.NAME)
- .provider()
- .getService(EndpointInventoryCache.class);
- }
- return endpointInventoryCache;
- }
-
private NetworkAddressInventoryCache getNetworkAddressInventoryCache() {
if (networkAddressInventoryCache == null) {
this.networkAddressInventoryCache = moduleManager.find(CoreModule.NAME)
@@ -110,14 +98,25 @@ public class TraceQueryService implements Service {
return componentLibraryCatalogService;
}
- public TraceBrief queryBasicTraces(final int serviceId, final int serviceInstanceId, final int endpointId,
- final String traceId, final String endpointName, final int minTraceDuration, int maxTraceDuration,
- final TraceState traceState, final QueryOrder queryOrder, final Pagination paging, final long startTB,
- final long endTB) throws IOException {
+ public TraceBrief queryBasicTraces(final int serviceId,
+ final int serviceInstanceId,
+ final int endpointId,
+ final String traceId,
+ final String endpointName,
+ final int minTraceDuration,
+ int maxTraceDuration,
+ final TraceState traceState,
+ final QueryOrder queryOrder,
+ final Pagination paging,
+ final long startTB,
+ final long endTB) throws IOException {
PaginationUtils.Page page = PaginationUtils.INSTANCE.exchange(paging);
- return getTraceQueryDAO().queryBasicTraces(startTB, endTB, minTraceDuration, maxTraceDuration, endpointName, serviceId, serviceInstanceId, endpointId, traceId, page
- .getLimit(), page.getFrom(), traceState, queryOrder);
+ return getTraceQueryDAO().queryBasicTraces(
+ startTB, endTB, minTraceDuration, maxTraceDuration, endpointName, serviceId, serviceInstanceId, endpointId,
+ traceId, page
+ .getLimit(), page.getFrom(), traceState, queryOrder
+ );
}
public Trace queryTrace(final String traceId) throws IOException {
@@ -131,7 +130,9 @@ public class TraceQueryService implements Service {
if (nonNull(segment)) {
SegmentObject segmentObject = SegmentObject.parseFrom(segment.getDataBinary());
trace.getSpans()
- .addAll(buildSpanV2List(traceId, segment.getSegmentId(), segment.getServiceId(), segmentObject.getSpansList()));
+ .addAll(buildSpanV2List(traceId, segment.getSegmentId(), segment.getServiceId(),
+ segmentObject.getSpansList()
+ ));
}
}
}
@@ -156,7 +157,7 @@ public class TraceQueryService implements Service {
}
private List<Span> buildSpanV2List(String traceId, String segmentId, int serviceId,
- List<SpanObjectV2> spanObjects) {
+ List<SpanObjectV2> spanObjects) {
List<Span> spans = new ArrayList<>();
spanObjects.forEach(spanObject -> {
@@ -183,16 +184,7 @@ public class TraceQueryService implements Service {
span.setPeer(getNetworkAddressInventoryCache().get(spanObject.getPeerId()).getName());
}
- String endpointName = spanObject.getOperationName();
- if (spanObject.getOperationNameId() != 0) {
- EndpointInventory endpointInventory = getEndpointInventoryCache().get(spanObject.getOperationNameId());
- if (nonNull(endpointInventory)) {
- endpointName = endpointInventory.getName();
- } else {
- endpointName = Const.EMPTY_STRING;
- }
- }
- span.setEndpointName(endpointName);
+ span.setEndpointName(spanObject.getOperationName());
final ServiceInventory serviceInventory = getServiceInventoryCache().get(serviceId);
if (serviceInventory != null) {
@@ -228,7 +220,8 @@ public class TraceQueryService implements Service {
.collect(Collectors.joining("."));
ref.setParentSegmentId(parentSegmentId);
- span.setSegmentParentSpanId(ref.getParentSegmentId() + Const.SEGMENT_SPAN_SPLIT + ref.getParentSpanId());
+ span.setSegmentParentSpanId(
+ ref.getParentSegmentId() + Const.SEGMENT_SPAN_SPLIT + ref.getParentSpanId());
span.getRefs().add(ref);
});
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/Call.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/Call.java
index e54f9a5..4f1da3d 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/Call.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/Call.java
@@ -29,8 +29,8 @@ import org.apache.skywalking.oap.server.core.source.DetectPoint;
@Getter
@Setter
public class Call {
- private Integer source;
- private Integer target;
+ private String source;
+ private String target;
private List<String> sourceComponents;
private List<String> targetComponents;
private String id;
@@ -45,11 +45,11 @@ public class Call {
detectPoints = new ArrayList<>();
}
- public void setSource(int source) {
+ public void setSource(String source) {
this.source = source;
}
- public void setTarget(int target) {
+ public void setTarget(String target) {
this.target = target;
}
@@ -84,8 +84,8 @@ public class Call {
public static class CallDetail {
@Setter(AccessLevel.PRIVATE)
private String id;
- private Integer source;
- private Integer target;
+ private String source;
+ private String target;
private DetectPoint detectPoint;
private Integer componentId;
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/EndpointInfo.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/EndpointInfo.java
index e9981f5..4554dde 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/EndpointInfo.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/EndpointInfo.java
@@ -24,7 +24,7 @@ import lombok.Setter;
@Getter
@Setter
public class EndpointInfo {
- private int id;
+ private String id;
private String name;
private int serviceId;
private String serviceName;
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/Log.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/Log.java
index a0192f6..cf774a5 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/Log.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/Log.java
@@ -29,7 +29,6 @@ public class Log {
private String serviceInstanceName;
private int serviceInstanceId;
private String endpointName;
- private int endpointId;
private String traceId;
private String timestamp;
private boolean isError;
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/Node.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/Node.java
index 4ee3afe..906a063 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/Node.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/entity/Node.java
@@ -24,7 +24,7 @@ import lombok.Setter;
@Getter
@Setter
public class Node {
- private int id;
+ private String id;
private String name;
private String type;
private boolean isReal;
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/register/service/EndpointInventoryRegister.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/register/service/EndpointInventoryRegister.java
deleted file mode 100644
index 330ee65..0000000
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/register/service/EndpointInventoryRegister.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * 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.
- *
- */
-
-package org.apache.skywalking.oap.server.core.register.service;
-
-import java.util.Objects;
-import org.apache.skywalking.oap.server.core.Const;
-import org.apache.skywalking.oap.server.core.CoreModule;
-import org.apache.skywalking.oap.server.core.cache.EndpointInventoryCache;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
-import org.apache.skywalking.oap.server.core.register.worker.InventoryStreamProcessor;
-import org.apache.skywalking.oap.server.core.source.DetectPoint;
-import org.apache.skywalking.oap.server.library.module.ModuleDefineHolder;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import static java.util.Objects.isNull;
-
-public class EndpointInventoryRegister implements IEndpointInventoryRegister {
-
- private static final Logger logger = LoggerFactory.getLogger(EndpointInventoryRegister.class);
-
- private final ModuleDefineHolder moduleDefineHolder;
- private EndpointInventoryCache cacheService;
-
- public EndpointInventoryRegister(ModuleDefineHolder moduleDefineHolder) {
- this.moduleDefineHolder = moduleDefineHolder;
- }
-
- private EndpointInventoryCache getCacheService() {
- if (isNull(cacheService)) {
- cacheService = moduleDefineHolder.find(CoreModule.NAME).provider().getService(EndpointInventoryCache.class);
- }
- return cacheService;
- }
-
- @Override
- public int getOrCreate(int serviceId, String endpointName, DetectPoint detectPoint) {
- int endpointId = getCacheService().getEndpointId(serviceId, endpointName, detectPoint.ordinal());
-
- if (endpointId == Const.NONE) {
- EndpointInventory endpointInventory = new EndpointInventory();
- endpointInventory.setServiceId(serviceId);
- endpointInventory.setName(endpointName);
- endpointInventory.setDetectPoint(detectPoint.ordinal());
-
- long now = System.currentTimeMillis();
- endpointInventory.setRegisterTime(now);
- endpointInventory.setHeartbeatTime(now);
-
- InventoryStreamProcessor.getInstance().in(endpointInventory);
- }
- return endpointId;
- }
-
- @Override
- public int get(int serviceId, String endpointName, DetectPoint detectPoint) {
- return getCacheService().getEndpointId(serviceId, endpointName, detectPoint.ordinal());
- }
-
- @Override
- public void heartbeat(int endpointId, long heartBeatTime) {
- EndpointInventory endpointInventory = getCacheService().get(endpointId);
- if (Objects.nonNull(endpointInventory)) {
- endpointInventory.setHeartbeatTime(heartBeatTime);
-
- InventoryStreamProcessor.getInstance().in(endpointInventory);
- } else {
- logger.warn("Endpoint {} heartbeat, but not found in storage.", endpointId);
- }
- }
-}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/DefaultScopeDefine.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/DefaultScopeDefine.java
index f6314b2..bfc8f5d 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/DefaultScopeDefine.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/DefaultScopeDefine.java
@@ -54,7 +54,7 @@ public class DefaultScopeDefine {
public static final int ALARM = 13;
public static final int SERVICE_INVENTORY = 14;
public static final int SERVICE_INSTANCE_INVENTORY = 15;
- public static final int ENDPOINT_INVENTORY = 16;
+ public static final int ENDPOINT_TRAFFIC = 16;
public static final int DATABASE_ACCESS = 17;
public static final int DATABASE_SLOW_STATEMENT = 18;
public static final int SERVICE_INSTANCE_CLR_CPU = 19;
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/Endpoint.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/Endpoint.java
index 370907b..a3b56ba 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/Endpoint.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/Endpoint.java
@@ -18,8 +18,11 @@
package org.apache.skywalking.oap.server.core.source;
+import java.nio.charset.StandardCharsets;
+import java.util.Base64;
import lombok.Getter;
import lombok.Setter;
+import org.apache.skywalking.oap.server.core.Const;
import static org.apache.skywalking.oap.server.core.source.DefaultScopeDefine.ENDPOINT;
import static org.apache.skywalking.oap.server.core.source.DefaultScopeDefine.ENDPOINT_CATALOG_NAME;
@@ -32,17 +35,17 @@ public class Endpoint extends Source {
return DefaultScopeDefine.ENDPOINT;
}
+ /**
+ * @since 7.1.0 SkyWalking doesn't do endpoint register. Use name directly.
+ */
@Override
public String getEntityId() {
- return String.valueOf(id);
+ return serviceId + Const.ID_SPLIT + Base64.getEncoder().encode(name.getBytes(StandardCharsets.UTF_8));
}
@Getter
@Setter
- private int id;
- @Getter
- @Setter
- @ScopeDefaultColumn.DefinedByField(columnName = "name", requireDynamicActive = true)
+ @ScopeDefaultColumn.DefinedByField(columnName = "name")
private String name;
@Getter
@Setter
@@ -50,7 +53,7 @@ public class Endpoint extends Source {
private int serviceId;
@Getter
@Setter
- @ScopeDefaultColumn.DefinedByField(columnName = "service_name", requireDynamicActive = true)
+ @ScopeDefaultColumn.DefinedByField(columnName = "service_name")
private String serviceName;
@Getter
@Setter
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/EndpointRelation.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/EndpointRelation.java
index 5a87d30..3416721 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/EndpointRelation.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/EndpointRelation.java
@@ -20,7 +20,7 @@ package org.apache.skywalking.oap.server.core.source;
import lombok.Getter;
import lombok.Setter;
-import org.apache.skywalking.oap.server.core.Const;
+import org.apache.skywalking.oap.server.core.analysis.manual.RelationDefineUtil;
import static org.apache.skywalking.oap.server.core.source.DefaultScopeDefine.ENDPOINT_RELATION;
@@ -33,17 +33,19 @@ public class EndpointRelation extends Source {
return DefaultScopeDefine.ENDPOINT_RELATION;
}
+ /**
+ * @since 7.1.0 SkyWalking doesn't do endpoint register. Use name directly.
+ */
@Override
public String getEntityId() {
- return String.valueOf(endpointId) + Const.ID_SPLIT + String.valueOf(childEndpointId);
+ return RelationDefineUtil.buildEndpointEntityId(new RelationDefineUtil.EndpointRelationDefine(
+ serviceId, endpoint, childServiceId, childEndpoint, componentId
+ ));
}
@Getter
@Setter
- private int endpointId;
- @Getter
- @Setter
- @ScopeDefaultColumn.DefinedByField(columnName = "source_endpoint_name", requireDynamicActive = true)
+ @ScopeDefaultColumn.DefinedByField(columnName = "source_endpoint_name")
private String endpoint;
@Getter
@Setter
@@ -62,10 +64,7 @@ public class EndpointRelation extends Source {
@Getter
@Setter
- private int childEndpointId;
- @Getter
- @Setter
- @ScopeDefaultColumn.DefinedByField(columnName = "child_endpoint_name", requireDynamicActive = true)
+ @ScopeDefaultColumn.DefinedByField(columnName = "child_endpoint_name")
private String childEndpoint;
@Getter
@Setter
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/cache/IEndpointInventoryCacheDAO.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/cache/IEndpointInventoryCacheDAO.java
index 6afa34a..00d41e2 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/cache/IEndpointInventoryCacheDAO.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/cache/IEndpointInventoryCacheDAO.java
@@ -18,12 +18,12 @@
package org.apache.skywalking.oap.server.core.storage.cache;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.storage.DAO;
public interface IEndpointInventoryCacheDAO extends DAO {
int getEndpointId(int serviceId, String endpointName, int detectPoint);
- EndpointInventory get(int endpointId);
+ EndpointTraffic get(int endpointId);
}
diff --git a/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/resolver/MetadataQuery.java b/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/resolver/MetadataQuery.java
index bfe4adf..8a143b7 100644
--- a/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/resolver/MetadataQuery.java
+++ b/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/resolver/MetadataQuery.java
@@ -27,6 +27,7 @@ import java.util.List;
import org.apache.skywalking.oap.query.graphql.type.Duration;
import org.apache.skywalking.oap.query.graphql.type.TimeInfo;
import org.apache.skywalking.oap.server.core.CoreModule;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.query.DurationUtils;
import org.apache.skywalking.oap.server.core.query.MetadataQueryService;
import org.apache.skywalking.oap.server.core.query.entity.ClusterBrief;
@@ -77,7 +78,7 @@ public class MetadataQuery implements GraphQLQueryResolver {
}
public List<Service> searchServices(final Duration duration,
- final String keyword) throws IOException, ParseException {
+ final String keyword) throws IOException, ParseException {
long startTimestamp = DurationUtils.INSTANCE.startTimeToTimestamp(duration.getStep(), duration.getStart());
long endTimestamp = DurationUtils.INSTANCE.endTimeToTimestamp(duration.getStep(), duration.getEnd());
@@ -89,7 +90,7 @@ public class MetadataQuery implements GraphQLQueryResolver {
}
public List<ServiceInstance> getServiceInstances(final Duration duration,
- final String serviceId) throws IOException, ParseException {
+ final String serviceId) throws IOException, ParseException {
long startTimestamp = DurationUtils.INSTANCE.startTimeToTimestamp(duration.getStep(), duration.getStart());
long endTimestamp = DurationUtils.INSTANCE.endTimeToTimestamp(duration.getStep(), duration.getEnd());
@@ -97,11 +98,12 @@ public class MetadataQuery implements GraphQLQueryResolver {
}
public List<Endpoint> searchEndpoint(final String keyword, final String serviceId,
- final int limit) throws IOException {
+ final int limit) throws IOException {
return getMetadataQueryService().searchEndpoint(keyword, serviceId, limit);
}
- public EndpointInfo getEndpointInfo(final int endpointId) throws IOException {
+
+ public EndpointInfo getEndpointInfo(final String endpointId) throws IOException {
return getMetadataQueryService().getEndpointInfo(endpointId);
}
diff --git a/oap-server/server-query-plugin/query-graphql-plugin/src/main/resources/query-protocol b/oap-server/server-query-plugin/query-graphql-plugin/src/main/resources/query-protocol
index 28f18ae..3bd7111 160000
--- a/oap-server/server-query-plugin/query-graphql-plugin/src/main/resources/query-protocol
+++ b/oap-server/server-query-plugin/query-graphql-plugin/src/main/resources/query-protocol
@@ -1 +1 @@
-Subproject commit 28f18ae8dab49e60eb3d2e5cfd1a5c884a897ad0
+Subproject commit 3bd7111b9363033752d38982551ca7324a8dd74c
diff --git a/oap-server/server-receiver-plugin/jaeger-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/jaeger/JaegerGRPCHandler.java b/oap-server/server-receiver-plugin/jaeger-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/jaeger/JaegerGRPCHandler.java
index b18ebf8..f12b549 100644
--- a/oap-server/server-receiver-plugin/jaeger-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/jaeger/JaegerGRPCHandler.java
+++ b/oap-server/server-receiver-plugin/jaeger-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/jaeger/JaegerGRPCHandler.java
@@ -124,7 +124,7 @@ public class JaegerGRPCHandler extends CollectorServiceGrpc.CollectorServiceImpl
.ordinal());
if (endpointId != Const.NONE) {
CoreRegisterLinker.getEndpointInventoryRegister()
- .getOrCreate(finalServiceId, endpointName, DetectPoint.SERVER);
+ .generate(finalServiceId, endpointName, DetectPoint.SERVER);
}
}
}
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 0e1d5f7..f3e3e19 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
@@ -91,17 +91,6 @@ public class ServiceMeshMetricDataDecorator {
isRegistered = false;
}
}
- String endpoint = origin.getEndpoint();
-
- // Service mesh doesn't register client side endpoint.
- DetectPoint point = origin.getDetectPoint();
- if (DetectPoint.server.equals(point)) {
- if (destServiceId != Const.NONE) {
- endpointId = CoreRegisterLinker.getEndpointInventoryRegister()
- .getOrCreate(destServiceId, endpoint, org.apache.skywalking.oap.server.core.source.DetectPoint
- .fromNetworkProtocolDetectPoint(point));
- }
- }
return isRegistered;
}
diff --git a/oap-server/server-receiver-plugin/skywalking-mesh-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/mesh/TelemetryDataDispatcher.java b/oap-server/server-receiver-plugin/skywalking-mesh-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/mesh/TelemetryDataDispatcher.java
index 1023162..d61c6e6 100644
--- a/oap-server/server-receiver-plugin/skywalking-mesh-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/mesh/TelemetryDataDispatcher.java
+++ b/oap-server/server-receiver-plugin/skywalking-mesh-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/mesh/TelemetryDataDispatcher.java
@@ -262,7 +262,6 @@ public class TelemetryDataDispatcher {
ServiceMeshMetric metrics = decorator.getMetric();
Endpoint endpoint = new Endpoint();
endpoint.setTimeBucket(minuteTimeBucket);
- endpoint.setId(decorator.getEndpointId());
endpoint.setName(metrics.getEndpoint());
endpoint.setServiceId(metrics.getDestServiceId());
endpoint.setServiceName(getServiceName(metrics.getDestServiceId(), metrics.getDestServiceName()));
diff --git a/oap-server/server-receiver-plugin/skywalking-register-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/register/provider/handler/v6/grpc/RegisterServiceHandler.java b/oap-server/server-receiver-plugin/skywalking-register-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/register/provider/handler/v6/grpc/RegisterServiceHandler.java
index 798ac67..90f798e 100644
--- a/oap-server/server-receiver-plugin/skywalking-register-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/register/provider/handler/v6/grpc/RegisterServiceHandler.java
+++ b/oap-server/server-receiver-plugin/skywalking-register-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/register/provider/handler/v6/grpc/RegisterServiceHandler.java
@@ -45,7 +45,7 @@ import org.apache.skywalking.oap.server.core.cache.ServiceInventoryCache;
import org.apache.skywalking.oap.server.core.register.NodeType;
import org.apache.skywalking.oap.server.core.register.ServiceInstanceInventory;
import org.apache.skywalking.oap.server.core.register.ServiceInventory;
-import org.apache.skywalking.oap.server.core.register.service.IEndpointInventoryRegister;
+import org.apache.skywalking.oap.server.core.register.service.IEndpointTrafficGenerator;
import org.apache.skywalking.oap.server.core.register.service.INetworkAddressInventoryRegister;
import org.apache.skywalking.oap.server.core.register.service.IServiceInstanceInventoryRegister;
import org.apache.skywalking.oap.server.core.register.service.IServiceInventoryRegister;
@@ -76,7 +76,7 @@ public class RegisterServiceHandler extends RegisterGrpc.RegisterImplBase implem
private final ServiceInstanceInventoryCache serviceInstanceInventoryCache;
private final IServiceInventoryRegister serviceInventoryRegister;
private final IServiceInstanceInventoryRegister serviceInstanceInventoryRegister;
- private final IEndpointInventoryRegister inventoryService;
+ private final IEndpointTrafficGenerator inventoryService;
private final INetworkAddressInventoryRegister networkAddressInventoryRegister;
public RegisterServiceHandler(ModuleManager moduleManager) {
@@ -94,7 +94,7 @@ public class RegisterServiceHandler extends RegisterGrpc.RegisterImplBase implem
.getService(IServiceInstanceInventoryRegister.class);
this.inventoryService = moduleManager.find(CoreModule.NAME)
.provider()
- .getService(IEndpointInventoryRegister.class);
+ .getService(IEndpointTrafficGenerator.class);
this.networkAddressInventoryRegister = moduleManager.find(CoreModule.NAME)
.provider()
.getService(INetworkAddressInventoryRegister.class);
@@ -209,7 +209,7 @@ public class RegisterServiceHandler extends RegisterGrpc.RegisterImplBase implem
DetectPoint detectPoint = DetectPoint.fromNetworkProtocolDetectPoint(endpoint.getFrom());
if (DetectPoint.SERVER.equals(detectPoint)) {
- int endpointId = inventoryService.getOrCreate(serviceId, endpointName, detectPoint);
+ int endpointId = inventoryService.generate(serviceId, endpointName, detectPoint);
if (endpointId != Const.NONE) {
builder.addElements(EndpointMappingElement.newBuilder()
diff --git a/oap-server/server-receiver-plugin/skywalking-sharing-server-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/sharing/server/CoreRegisterLinker.java b/oap-server/server-receiver-plugin/skywalking-sharing-server-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/sharing/server/CoreRegisterLinker.java
index 98316fb..843d425 100644
--- a/oap-server/server-receiver-plugin/skywalking-sharing-server-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/sharing/server/CoreRegisterLinker.java
+++ b/oap-server/server-receiver-plugin/skywalking-sharing-server-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/sharing/server/CoreRegisterLinker.java
@@ -21,7 +21,7 @@ package org.apache.skywalking.oap.server.receiver.sharing.server;
import org.apache.skywalking.oap.server.core.CoreModule;
import org.apache.skywalking.oap.server.core.cache.EndpointInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInventoryCache;
-import org.apache.skywalking.oap.server.core.register.service.IEndpointInventoryRegister;
+import org.apache.skywalking.oap.server.core.register.service.IEndpointTrafficGenerator;
import org.apache.skywalking.oap.server.core.register.service.IServiceInstanceInventoryRegister;
import org.apache.skywalking.oap.server.core.register.service.IServiceInventoryRegister;
import org.apache.skywalking.oap.server.library.module.ModuleManager;
@@ -30,7 +30,7 @@ public class CoreRegisterLinker {
private static volatile ModuleManager MODULE_MANAGER;
private static volatile IServiceInventoryRegister SERVICE_INVENTORY_REGISTER;
private static volatile IServiceInstanceInventoryRegister SERVICE_INSTANCE_INVENTORY_REGISTER;
- private static volatile IEndpointInventoryRegister ENDPOINT_INVENTORY_REGISTER;
+ private static volatile IEndpointTrafficGenerator ENDPOINT_INVENTORY_REGISTER;
private static volatile ServiceInventoryCache SERVICE_INVENTORY_CACHE;
private static volatile EndpointInventoryCache ENDPOINT_INVENTORY_CACHE;
@@ -56,11 +56,11 @@ public class CoreRegisterLinker {
return SERVICE_INSTANCE_INVENTORY_REGISTER;
}
- public static IEndpointInventoryRegister getEndpointInventoryRegister() {
+ public static IEndpointTrafficGenerator getEndpointInventoryRegister() {
if (ENDPOINT_INVENTORY_REGISTER == null) {
ENDPOINT_INVENTORY_REGISTER = MODULE_MANAGER.find(CoreModule.NAME)
.provider()
- .getService(IEndpointInventoryRegister.class);
+ .getService(IEndpointTrafficGenerator.class);
}
return ENDPOINT_INVENTORY_REGISTER;
}
diff --git a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/decorator/ReferenceDecorator.java b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/decorator/ReferenceDecorator.java
index 8ebfa21..05c7156 100644
--- a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/decorator/ReferenceDecorator.java
+++ b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/decorator/ReferenceDecorator.java
@@ -38,21 +38,6 @@ public class ReferenceDecorator implements StandardBuilder {
this.isOrigin = false;
}
- public int getEntryEndpointId() {
- if (isOrigin) {
- return referenceObjectV2.getEntryEndpointId();
- } else {
- return referenceBuilderV2.getEntryEndpointId();
- }
- }
-
- public void setEntryEndpointId(int value) {
- if (isOrigin) {
- toBuilder();
- }
- referenceBuilderV2.setEntryEndpointId(value);
- }
-
public String getEntryEndpointName() {
if (isOrigin) {
return referenceObjectV2.getEntryEndpoint();
@@ -61,13 +46,6 @@ public class ReferenceDecorator implements StandardBuilder {
}
}
- public void setEntryEndpointName(String value) {
- if (isOrigin) {
- toBuilder();
- }
- referenceBuilderV2.setEntryEndpoint(value);
- }
-
public int getEntryServiceInstanceId() {
if (isOrigin) {
return referenceObjectV2.getEntryServiceInstanceId();
@@ -84,21 +62,6 @@ public class ReferenceDecorator implements StandardBuilder {
}
}
- public int getParentEndpointId() {
- if (isOrigin) {
- return referenceObjectV2.getParentEndpointId();
- } else {
- return referenceBuilderV2.getParentEndpointId();
- }
- }
-
- public void setParentEndpointId(int value) {
- if (isOrigin) {
- toBuilder();
- }
- referenceBuilderV2.setParentEndpointId(value);
- }
-
public String getParentEndpointName() {
if (isOrigin) {
return referenceObjectV2.getParentEndpoint();
@@ -107,13 +70,6 @@ public class ReferenceDecorator implements StandardBuilder {
}
}
- public void setParentEndpointName(String value) {
- if (isOrigin) {
- toBuilder();
- }
- referenceBuilderV2.setParentEndpoint(value);
- }
-
public int getNetworkAddressId() {
if (isOrigin) {
return referenceObjectV2.getNetworkAddressId();
diff --git a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/decorator/SpanDecorator.java b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/decorator/SpanDecorator.java
index 8632ba6..620ca78 100644
--- a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/decorator/SpanDecorator.java
+++ b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/decorator/SpanDecorator.java
@@ -158,21 +158,6 @@ public class SpanDecorator implements StandardBuilder {
spanBuilderV2.setPeer(peer);
}
- public int getOperationNameId() {
- if (isOrigin) {
- return spanObjectV2.getOperationNameId();
- } else {
- return spanBuilderV2.getOperationNameId();
- }
- }
-
- public void setOperationNameId(int value) {
- if (isOrigin) {
- toBuilder();
- }
- spanBuilderV2.setOperationNameId(value);
- }
-
public String getOperationName() {
if (isOrigin) {
return spanObjectV2.getOperationName();
diff --git a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/listener/endpoint/MultiScopesSpanListener.java b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/listener/endpoint/MultiScopesSpanListener.java
index 68f9deb..ec70398 100755
--- a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/listener/endpoint/MultiScopesSpanListener.java
+++ b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/listener/endpoint/MultiScopesSpanListener.java
@@ -22,7 +22,6 @@ import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.stream.Collectors;
-
import lombok.extern.slf4j.Slf4j;
import org.apache.skywalking.apm.network.common.KeyStringValuePair;
import org.apache.skywalking.apm.network.language.agent.SpanLayer;
@@ -31,7 +30,6 @@ import org.apache.skywalking.apm.util.StringUtil;
import org.apache.skywalking.oap.server.core.Const;
import org.apache.skywalking.oap.server.core.CoreModule;
import org.apache.skywalking.oap.server.core.analysis.TimeBucket;
-import org.apache.skywalking.oap.server.core.cache.EndpointInventoryCache;
import org.apache.skywalking.oap.server.core.cache.NetworkAddressInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInstanceInventoryCache;
import org.apache.skywalking.oap.server.core.cache.ServiceInventoryCache;
@@ -66,7 +64,6 @@ public class MultiScopesSpanListener implements EntrySpanListener, ExitSpanListe
private final SourceReceiver sourceReceiver;
private final ServiceInstanceInventoryCache instanceInventoryCache;
private final ServiceInventoryCache serviceInventoryCache;
- private final EndpointInventoryCache endpointInventoryCache;
private final List<SourceBuilder> entrySourceBuilders;
private final List<SourceBuilder> exitSourceBuilders;
@@ -88,9 +85,6 @@ public class MultiScopesSpanListener implements EntrySpanListener, ExitSpanListe
this.serviceInventoryCache = moduleManager.find(CoreModule.NAME)
.provider()
.getService(ServiceInventoryCache.class);
- this.endpointInventoryCache = moduleManager.find(CoreModule.NAME)
- .provider()
- .getService(EndpointInventoryCache.class);
this.networkAddressInventoryCache = moduleManager.find(CoreModule.NAME)
.provider()
.getService(NetworkAddressInventoryCache.class);
@@ -121,10 +115,10 @@ public class MultiScopesSpanListener implements EntrySpanListener, ExitSpanListe
for (int i = 0; i < spanDecorator.getRefsCount(); i++) {
ReferenceDecorator reference = spanDecorator.getRefs(i);
SourceBuilder sourceBuilder = new SourceBuilder();
- if (reference.getParentEndpointId() == Const.INEXISTENCE_ENDPOINT_ID) {
- sourceBuilder.setSourceEndpointId(Const.USER_ENDPOINT_ID);
+ if (StringUtil.isEmpty(reference.getParentEndpointName())) {
+ sourceBuilder.setSourceEndpointName(Const.USER_ENDPOINT_NAME);
} else {
- sourceBuilder.setSourceEndpointId(reference.getParentEndpointId());
+ sourceBuilder.setSourceEndpointName(reference.getParentEndpointName());
}
final int networkAddressId = reference.getNetworkAddressId();
@@ -142,7 +136,7 @@ public class MultiScopesSpanListener implements EntrySpanListener, ExitSpanListe
sourceBuilder.setSourceServiceId(instanceInventoryCache.get(reference.getParentServiceInstanceId())
.getServiceId());
}
- sourceBuilder.setDestEndpointId(spanDecorator.getOperationNameId());
+ sourceBuilder.setDestEndpointName(spanDecorator.getOperationName());
sourceBuilder.setDestServiceInstanceId(segmentCoreInfo.getServiceInstanceId());
sourceBuilder.setDestServiceId(segmentCoreInfo.getServiceId());
sourceBuilder.setDetectPoint(DetectPoint.SERVER);
@@ -152,10 +146,10 @@ public class MultiScopesSpanListener implements EntrySpanListener, ExitSpanListe
}
} else {
SourceBuilder sourceBuilder = new SourceBuilder();
- sourceBuilder.setSourceEndpointId(Const.USER_ENDPOINT_ID);
+ sourceBuilder.setSourceEndpointName(Const.USER_ENDPOINT_NAME);
sourceBuilder.setSourceServiceInstanceId(Const.USER_INSTANCE_ID);
sourceBuilder.setSourceServiceId(Const.USER_SERVICE_ID);
- sourceBuilder.setDestEndpointId(spanDecorator.getOperationNameId());
+ sourceBuilder.setDestEndpointName(spanDecorator.getOperationName());
sourceBuilder.setDestServiceInstanceId(segmentCoreInfo.getServiceInstanceId());
sourceBuilder.setDestServiceId(segmentCoreInfo.getServiceId());
sourceBuilder.setDetectPoint(DetectPoint.SERVER);
@@ -262,16 +256,9 @@ public class MultiScopesSpanListener implements EntrySpanListener, ExitSpanListe
sourceBuilder.setSourceServiceInstanceName(
instanceInventoryCache.get(sourceBuilder.getSourceServiceInstanceId())
.getName());
- if (sourceBuilder.getSourceEndpointId() != Const.NONE) {
- sourceBuilder.setSourceEndpointName(endpointInventoryCache.get(sourceBuilder.getSourceEndpointId())
- .getName());
- }
sourceBuilder.setDestServiceName(serviceInventoryCache.get(sourceBuilder.getDestServiceId()).getName());
sourceBuilder.setDestServiceInstanceName(instanceInventoryCache.get(sourceBuilder.getDestServiceInstanceId())
.getName());
- if (sourceBuilder.getDestEndpointId() != Const.NONE) {
- sourceBuilder.setDestEndpointName(endpointInventoryCache.get(sourceBuilder.getDestEndpointId()).getName());
- }
}
@Override
@@ -300,12 +287,10 @@ public class MultiScopesSpanListener implements EntrySpanListener, ExitSpanListe
exitSourceBuilders.forEach(exitSourceBuilder -> {
if (nonNull(entrySpanDecorator)) {
- exitSourceBuilder.setSourceEndpointId(entrySpanDecorator.getOperationNameId());
+ exitSourceBuilder.setSourceEndpointName(entrySpanDecorator.getOperationName());
} else {
- exitSourceBuilder.setSourceEndpointId(Const.USER_ENDPOINT_ID);
+ exitSourceBuilder.setSourceEndpointName(Const.USER_ENDPOINT_NAME);
}
- exitSourceBuilder.setSourceEndpointName(endpointInventoryCache.get(exitSourceBuilder.getSourceEndpointId())
- .getName());
exitSourceBuilder.setTimeBucket(minuteTimeBucket);
sourceReceiver.receive(exitSourceBuilder.toServiceRelation());
@@ -313,7 +298,8 @@ public class MultiScopesSpanListener implements EntrySpanListener, ExitSpanListe
/*
* Some of the agent can not have the upstream real network address, such as https://github.com/apache/skywalking-nginx-lua.
*/
- String sourceLanguage = instanceInventoryCache.getServiceInstanceLanguage(exitSourceBuilder.getSourceServiceInstanceId());
+ String sourceLanguage = instanceInventoryCache.getServiceInstanceLanguage(
+ exitSourceBuilder.getSourceServiceInstanceId());
if (!config.getNoUpstreamRealAddressAgents().contains(sourceLanguage)) {
sourceReceiver.receive(exitSourceBuilder.toServiceInstanceRelation());
}
diff --git a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/listener/endpoint/SourceBuilder.java b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/listener/endpoint/SourceBuilder.java
index f6483be..ff2ebb2 100644
--- a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/listener/endpoint/SourceBuilder.java
+++ b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/listener/endpoint/SourceBuilder.java
@@ -48,9 +48,6 @@ class SourceBuilder {
private String sourceServiceInstanceName;
@Getter
@Setter
- private int sourceEndpointId;
- @Getter
- @Setter
private String sourceEndpointName;
@Getter
@Setter
@@ -66,9 +63,6 @@ class SourceBuilder {
private String destServiceInstanceName;
@Getter
@Setter
- private int destEndpointId;
- @Getter
- @Setter
private String destEndpointName;
@Getter
@Setter
@@ -176,7 +170,6 @@ class SourceBuilder {
Endpoint toEndpoint() {
Endpoint endpoint = new Endpoint();
- endpoint.setId(destEndpointId);
endpoint.setName(destEndpointName);
endpoint.setServiceId(destServiceId);
endpoint.setServiceName(destServiceName);
@@ -195,13 +188,11 @@ class SourceBuilder {
return null;
}
EndpointRelation endpointRelation = new EndpointRelation();
- endpointRelation.setEndpointId(sourceEndpointId);
endpointRelation.setEndpoint(sourceEndpointName);
endpointRelation.setServiceId(sourceServiceId);
endpointRelation.setServiceName(sourceServiceName);
endpointRelation.setServiceInstanceId(sourceServiceInstanceId);
endpointRelation.setServiceInstanceName(sourceServiceInstanceName);
- endpointRelation.setChildEndpointId(destEndpointId);
endpointRelation.setChildEndpoint(destEndpointName);
endpointRelation.setChildServiceId(destServiceId);
endpointRelation.setChildServiceName(destServiceName);
diff --git a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/standardization/ReferenceIdExchanger.java b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/standardization/ReferenceIdExchanger.java
index 5203b86..5932fa0 100644
--- a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/standardization/ReferenceIdExchanger.java
+++ b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/standardization/ReferenceIdExchanger.java
@@ -23,7 +23,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.skywalking.oap.server.core.Const;
import org.apache.skywalking.oap.server.core.CoreModule;
import org.apache.skywalking.oap.server.core.cache.ServiceInstanceInventoryCache;
-import org.apache.skywalking.oap.server.core.register.service.IEndpointInventoryRegister;
+import org.apache.skywalking.oap.server.core.register.service.IEndpointTrafficGenerator;
import org.apache.skywalking.oap.server.core.register.service.INetworkAddressInventoryRegister;
import org.apache.skywalking.oap.server.core.source.DetectPoint;
import org.apache.skywalking.oap.server.library.module.ModuleManager;
@@ -39,7 +39,7 @@ import org.apache.skywalking.oap.server.receiver.trace.provider.parser.decorator
@Slf4j
public class ReferenceIdExchanger implements IdExchanger<ReferenceDecorator> {
private static ReferenceIdExchanger EXCHANGER;
- private final IEndpointInventoryRegister endpointInventoryRegister;
+ private final IEndpointTrafficGenerator endpointInventoryRegister;
private final ServiceInstanceInventoryCache serviceInstanceInventoryCache;
private final INetworkAddressInventoryRegister networkAddressInventoryRegister;
@@ -53,7 +53,7 @@ public class ReferenceIdExchanger implements IdExchanger<ReferenceDecorator> {
private ReferenceIdExchanger(ModuleManager moduleManager) {
this.endpointInventoryRegister = moduleManager.find(CoreModule.NAME)
.provider()
- .getService(IEndpointInventoryRegister.class);
+ .getService(IEndpointTrafficGenerator.class);
this.networkAddressInventoryRegister = moduleManager.find(CoreModule.NAME)
.provider()
.getService(INetworkAddressInventoryRegister.class);
@@ -152,6 +152,6 @@ public class ReferenceIdExchanger implements IdExchanger<ReferenceDecorator> {
* agent does the exchange, then always use endpoint id.
*/
private int getEndpointId(int serviceId, String endpointName) {
- return endpointInventoryRegister.getOrCreate(serviceId, endpointName, DetectPoint.SERVER);
+ return endpointInventoryRegister.generate(serviceId, endpointName, DetectPoint.SERVER);
}
}
diff --git a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/standardization/SpanExchanger.java b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/standardization/SpanExchanger.java
index c0383b2..9a12d28 100644
--- a/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/standardization/SpanExchanger.java
+++ b/oap-server/server-receiver-plugin/skywalking-trace-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/trace/provider/parser/standardization/SpanExchanger.java
@@ -33,7 +33,7 @@ import org.apache.skywalking.oap.server.core.config.IComponentLibraryCatalogServ
import org.apache.skywalking.oap.server.core.register.NodeType;
import org.apache.skywalking.oap.server.core.register.ServiceInstanceInventory;
import org.apache.skywalking.oap.server.core.register.ServiceInventory;
-import org.apache.skywalking.oap.server.core.register.service.IEndpointInventoryRegister;
+import org.apache.skywalking.oap.server.core.register.service.IEndpointTrafficGenerator;
import org.apache.skywalking.oap.server.core.register.service.INetworkAddressInventoryRegister;
import org.apache.skywalking.oap.server.core.register.service.IServiceInstanceInventoryRegister;
import org.apache.skywalking.oap.server.core.register.service.IServiceInventoryRegister;
@@ -54,7 +54,7 @@ public class SpanExchanger implements IdExchanger<SpanDecorator> {
private final IServiceInventoryRegister serviceInventoryRegister;
private final ServiceInstanceInventoryCache serviceInstanceInventoryCacheDAO;
private final IServiceInstanceInventoryRegister serviceInstanceInventoryRegister;
- private final IEndpointInventoryRegister endpointInventoryRegister;
+ private final IEndpointTrafficGenerator endpointInventoryRegister;
private final INetworkAddressInventoryRegister networkAddressInventoryRegister;
private final IComponentLibraryCatalogService componentLibraryCatalogService;
@@ -80,7 +80,7 @@ public class SpanExchanger implements IdExchanger<SpanDecorator> {
.getService(IServiceInstanceInventoryRegister.class);
this.endpointInventoryRegister = moduleManager.find(CoreModule.NAME)
.provider()
- .getService(IEndpointInventoryRegister.class);
+ .getService(IEndpointTrafficGenerator.class);
this.networkAddressInventoryRegister = moduleManager.find(CoreModule.NAME)
.provider()
.getService(INetworkAddressInventoryRegister.class);
@@ -163,7 +163,7 @@ public class SpanExchanger implements IdExchanger<SpanDecorator> {
String endpointName = Strings.isNullOrEmpty(
standardBuilder.getOperationName()) ? Const.DOMAIN_OPERATION_NAME : standardBuilder
.getOperationName();
- int endpointId = endpointInventoryRegister.getOrCreate(
+ int endpointId = endpointInventoryRegister.generate(
serviceId, endpointName, DetectPoint.fromSpanType(standardBuilder
.getSpanType()));
diff --git a/oap-server/server-receiver-plugin/zipkin-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/zipkin/trace/SpanForward.java b/oap-server/server-receiver-plugin/zipkin-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/zipkin/trace/SpanForward.java
index 5d39bf9..27a48d4 100644
--- a/oap-server/server-receiver-plugin/zipkin-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/zipkin/trace/SpanForward.java
+++ b/oap-server/server-receiver-plugin/zipkin-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/zipkin/trace/SpanForward.java
@@ -81,7 +81,7 @@ public class SpanForward {
zipkinSpan.setEndpointId(endpointId);
} else if (config.isRegisterZipkinEndpoint()) {
CoreRegisterLinker.getEndpointInventoryRegister()
- .getOrCreate(serviceId, spanName, DetectPoint.SERVER);
+ .generate(serviceId, spanName, DetectPoint.SERVER);
}
}
}
diff --git a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/cache/EndpointInventoryCacheEsDAO.java b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/cache/EndpointInventoryCacheEsDAO.java
index c41a623..0e35acc 100644
--- a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/cache/EndpointInventoryCacheEsDAO.java
+++ b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/cache/EndpointInventoryCacheEsDAO.java
@@ -19,7 +19,7 @@
package org.apache.skywalking.oap.server.storage.plugin.elasticsearch.cache;
import org.apache.skywalking.oap.server.core.Const;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.register.RegisterSource;
import org.apache.skywalking.oap.server.core.storage.cache.IEndpointInventoryCacheDAO;
import org.apache.skywalking.oap.server.library.client.elasticsearch.ElasticSearchClient;
@@ -36,7 +36,7 @@ public class EndpointInventoryCacheEsDAO extends EsDAO implements IEndpointInven
private static final Logger logger = LoggerFactory.getLogger(EndpointInventoryCacheEsDAO.class);
- protected final EndpointInventory.Builder builder = new EndpointInventory.Builder();
+ protected final EndpointTraffic.Builder builder = new EndpointTraffic.Builder();
public EndpointInventoryCacheEsDAO(ElasticSearchClient client) {
super(client);
@@ -45,8 +45,8 @@ public class EndpointInventoryCacheEsDAO extends EsDAO implements IEndpointInven
@Override
public int getEndpointId(int serviceId, String endpointName, int detectPoint) {
try {
- String id = EndpointInventory.buildId(serviceId, endpointName, detectPoint);
- GetResponse response = getClient().get(EndpointInventory.INDEX_NAME, id);
+ String id = EndpointTraffic.buildId(serviceId, endpointName, detectPoint);
+ GetResponse response = getClient().get(EndpointTraffic.INDEX_NAME, id);
if (response.isExists()) {
return (int) response.getSource().getOrDefault(RegisterSource.SEQUENCE, 0);
} else {
@@ -59,13 +59,13 @@ public class EndpointInventoryCacheEsDAO extends EsDAO implements IEndpointInven
}
@Override
- public EndpointInventory get(int endpointId) {
+ public EndpointTraffic get(int endpointId) {
try {
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
- searchSourceBuilder.query(QueryBuilders.termQuery(EndpointInventory.SEQUENCE, endpointId));
+ searchSourceBuilder.query(QueryBuilders.termQuery(EndpointTraffic.SEQUENCE, endpointId));
searchSourceBuilder.size(1);
- SearchResponse response = getClient().search(EndpointInventory.INDEX_NAME, searchSourceBuilder);
+ SearchResponse response = getClient().search(EndpointTraffic.INDEX_NAME, searchSourceBuilder);
if (response.getHits().totalHits == 1) {
SearchHit searchHit = response.getHits().getAt(0);
return builder.map2Data(searchHit.getSourceAsMap());
diff --git a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/AggregationQueryEsDAO.java b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/AggregationQueryEsDAO.java
index e03c9bd..d2bed08 100644
--- a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/AggregationQueryEsDAO.java
+++ b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/AggregationQueryEsDAO.java
@@ -25,7 +25,7 @@ import org.apache.skywalking.oap.server.core.analysis.Downsampling;
import org.apache.skywalking.oap.server.core.analysis.metrics.Metrics;
import org.apache.skywalking.oap.server.core.query.entity.Order;
import org.apache.skywalking.oap.server.core.query.entity.TopNEntity;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.register.ServiceInstanceInventory;
import org.apache.skywalking.oap.server.core.storage.model.ModelName;
import org.apache.skywalking.oap.server.core.storage.query.IAggregationQueryDAO;
@@ -104,7 +104,7 @@ public class AggregationQueryEsDAO extends EsDAO implements IAggregationQueryDAO
sourceBuilder.query(boolQueryBuilder);
boolQueryBuilder.must().add(QueryBuilders.rangeQuery(Metrics.TIME_BUCKET).lte(endTB).gte(startTB));
- boolQueryBuilder.must().add(QueryBuilders.termQuery(EndpointInventory.SERVICE_ID, serviceId));
+ boolQueryBuilder.must().add(QueryBuilders.termQuery(EndpointTraffic.SERVICE_ID, serviceId));
return aggregation(indexName, valueCName, sourceBuilder, topN, order);
}
diff --git a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/LogQueryEsDAO.java b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/LogQueryEsDAO.java
index a76ed67..ec44f00 100644
--- a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/LogQueryEsDAO.java
+++ b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/LogQueryEsDAO.java
@@ -49,8 +49,8 @@ public class LogQueryEsDAO extends EsDAO implements ILogQueryDAO {
@Override
public Logs queryLogs(String metricName, int serviceId, int serviceInstanceId, int endpointId, String traceId,
- LogState state, String stateCode, Pagination paging, int from, int limit, long startSecondTB,
- long endSecondTB) throws IOException {
+ LogState state, String stateCode, Pagination paging, int from, int limit, long startSecondTB,
+ long endSecondTB) throws IOException {
SearchSourceBuilder sourceBuilder = SearchSourceBuilder.searchSource();
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
@@ -69,7 +69,7 @@ public class LogQueryEsDAO extends EsDAO implements ILogQueryDAO {
.add(QueryBuilders.termQuery(AbstractLogRecord.SERVICE_INSTANCE_ID, serviceInstanceId));
}
if (endpointId != Const.NONE) {
- boolQueryBuilder.must().add(QueryBuilders.termQuery(AbstractLogRecord.ENDPOINT_ID, endpointId));
+ boolQueryBuilder.must().add(QueryBuilders.termQuery(AbstractLogRecord.ENDPOINT_NAME, endpointId));
}
if (!Strings.isNullOrEmpty(stateCode)) {
boolQueryBuilder.must().add(QueryBuilders.termQuery(AbstractLogRecord.STATUS_CODE, stateCode));
@@ -79,10 +79,13 @@ public class LogQueryEsDAO extends EsDAO implements ILogQueryDAO {
}
if (LogState.ERROR.equals(state)) {
boolQueryBuilder.must()
- .add(QueryBuilders.termQuery(AbstractLogRecord.IS_ERROR, BooleanUtils.booleanToValue(true)));
+ .add(
+ QueryBuilders.termQuery(AbstractLogRecord.IS_ERROR, BooleanUtils.booleanToValue(true)));
} else if (LogState.SUCCESS.equals(state)) {
boolQueryBuilder.must()
- .add(QueryBuilders.termQuery(AbstractLogRecord.IS_ERROR, BooleanUtils.booleanToValue(false)));
+ .add(QueryBuilders.termQuery(AbstractLogRecord.IS_ERROR,
+ BooleanUtils.booleanToValue(false)
+ ));
}
sourceBuilder.size(limit);
@@ -98,12 +101,13 @@ public class LogQueryEsDAO extends EsDAO implements ILogQueryDAO {
log.setServiceId(((Number) searchHit.getSourceAsMap().get(AbstractLogRecord.SERVICE_ID)).intValue());
log.setServiceInstanceId(((Number) searchHit.getSourceAsMap()
.get(AbstractLogRecord.SERVICE_INSTANCE_ID)).intValue());
- log.setEndpointId(((Number) searchHit.getSourceAsMap().get(AbstractLogRecord.ENDPOINT_ID)).intValue());
+ log.setEndpointName((String) searchHit.getSourceAsMap().get(AbstractLogRecord.ENDPOINT_NAME));
log.setError(BooleanUtils.valueToBoolean(((Number) searchHit.getSourceAsMap()
.get(AbstractLogRecord.IS_ERROR)).intValue()));
log.setStatusCode((String) searchHit.getSourceAsMap().get(AbstractLogRecord.STATUS_CODE));
log.setContentType(ContentType.instanceOf(((Number) searchHit.getSourceAsMap()
- .get(AbstractLogRecord.CONTENT_TYPE)).intValue()));
+ .get(
+ AbstractLogRecord.CONTENT_TYPE)).intValue()));
log.setContent((String) searchHit.getSourceAsMap().get(AbstractLogRecord.CONTENT));
logs.getLogs().add(log);
diff --git a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetadataQueryEsDAO.java b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetadataQueryEsDAO.java
index 8e23694..7c3abb5 100644
--- a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetadataQueryEsDAO.java
+++ b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/MetadataQueryEsDAO.java
@@ -32,7 +32,7 @@ import org.apache.skywalking.oap.server.core.query.entity.Endpoint;
import org.apache.skywalking.oap.server.core.query.entity.LanguageTrans;
import org.apache.skywalking.oap.server.core.query.entity.Service;
import org.apache.skywalking.oap.server.core.query.entity.ServiceInstance;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.register.NodeType;
import org.apache.skywalking.oap.server.core.register.RegisterSource;
import org.apache.skywalking.oap.server.core.register.ServiceInstanceInventory;
@@ -90,12 +90,12 @@ public class MetadataQueryEsDAO extends EsDAO implements IMetadataQueryDAO {
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
boolQueryBuilder.must()
- .add(QueryBuilders.termQuery(EndpointInventory.DETECT_POINT, DetectPoint.SERVER.ordinal()));
+ .add(QueryBuilders.termQuery(EndpointTraffic.DETECT_POINT, DetectPoint.SERVER.ordinal()));
sourceBuilder.query(boolQueryBuilder);
sourceBuilder.size(0);
- SearchResponse response = getClient().search(EndpointInventory.INDEX_NAME, sourceBuilder);
+ SearchResponse response = getClient().search(EndpointTraffic.INDEX_NAME, sourceBuilder);
return (int) response.getHits().getTotalHits();
}
@@ -218,28 +218,28 @@ public class MetadataQueryEsDAO extends EsDAO implements IMetadataQueryDAO {
SearchSourceBuilder sourceBuilder = SearchSourceBuilder.searchSource();
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
- boolQueryBuilder.must().add(QueryBuilders.termQuery(EndpointInventory.SERVICE_ID, serviceId));
+ boolQueryBuilder.must().add(QueryBuilders.termQuery(EndpointTraffic.SERVICE_ID, serviceId));
if (!Strings.isNullOrEmpty(keyword)) {
- String matchCName = MatchCNameBuilder.INSTANCE.build(EndpointInventory.NAME);
+ String matchCName = MatchCNameBuilder.INSTANCE.build(EndpointTraffic.NAME);
boolQueryBuilder.must().add(QueryBuilders.matchQuery(matchCName, keyword));
}
boolQueryBuilder.must()
- .add(QueryBuilders.termQuery(EndpointInventory.DETECT_POINT, DetectPoint.SERVER.ordinal()));
+ .add(QueryBuilders.termQuery(EndpointTraffic.DETECT_POINT, DetectPoint.SERVER.ordinal()));
sourceBuilder.query(boolQueryBuilder);
sourceBuilder.size(limit);
- SearchResponse response = getClient().search(EndpointInventory.INDEX_NAME, sourceBuilder);
+ SearchResponse response = getClient().search(EndpointTraffic.INDEX_NAME, sourceBuilder);
List<Endpoint> endpoints = new ArrayList<>();
for (SearchHit searchHit : response.getHits()) {
Map<String, Object> sourceAsMap = searchHit.getSourceAsMap();
Endpoint endpoint = new Endpoint();
- endpoint.setId(((Number) sourceAsMap.get(EndpointInventory.SEQUENCE)).intValue());
- endpoint.setName((String) sourceAsMap.get(EndpointInventory.NAME));
+ endpoint.setId(((Number) sourceAsMap.get(EndpointTraffic.SEQUENCE)).intValue());
+ endpoint.setName((String) sourceAsMap.get(EndpointTraffic.NAME));
endpoints.add(endpoint);
}
diff --git a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/TopologyQueryEsDAO.java b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/TopologyQueryEsDAO.java
index 27b66bb..24ae7fb 100644
--- a/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/TopologyQueryEsDAO.java
+++ b/oap-server/server-storage-plugin/storage-elasticsearch-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch/query/TopologyQueryEsDAO.java
@@ -21,6 +21,7 @@ package org.apache.skywalking.oap.server.storage.plugin.elasticsearch.query;
import org.apache.skywalking.oap.server.core.UnexpectedException;
import org.apache.skywalking.oap.server.core.analysis.Downsampling;
import org.apache.skywalking.oap.server.core.analysis.manual.RelationDefineUtil;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.analysis.manual.endpointrelation.EndpointRelationServerSideMetrics;
import org.apache.skywalking.oap.server.core.analysis.manual.relation.instance.ServiceInstanceRelationClientSideMetrics;
import org.apache.skywalking.oap.server.core.analysis.manual.relation.instance.ServiceInstanceRelationServerSideMetrics;
@@ -192,9 +193,9 @@ public class TopologyQueryEsDAO extends EsDAO implements ITopologyQueryDAO {
BoolQueryBuilder serviceIdBoolQuery = QueryBuilders.boolQuery();
boolQuery.must().add(serviceIdBoolQuery);
serviceIdBoolQuery.should()
- .add(QueryBuilders.termQuery(EndpointRelationServerSideMetrics.SOURCE_ENDPOINT_ID, destEndpointId));
+ .add(QueryBuilders.termQuery(EndpointRelationServerSideMetrics.SOURCE_ENDPOINT, destEndpointId));
serviceIdBoolQuery.should()
- .add(QueryBuilders.termQuery(EndpointRelationServerSideMetrics.DEST_ENDPOINT_ID, destEndpointId));
+ .add(QueryBuilders.termQuery(EndpointRelationServerSideMetrics.DEST_ENDPOINT, destEndpointId));
sourceBuilder.query(boolQuery);
@@ -212,10 +213,10 @@ public class TopologyQueryEsDAO extends EsDAO implements ITopologyQueryDAO {
for (Terms.Bucket entityBucket : entityTerms.getBuckets()) {
String entityId = entityBucket.getKeyAsString();
- RelationDefineUtil.RelationDefine relationDefine = RelationDefineUtil.splitEntityId(entityId);
+ RelationDefineUtil.EndpointRelationDefine relationDefine = RelationDefineUtil.splitEndpointEntityId(entityId);
Call.CallDetail call = new Call.CallDetail();
- call.setSource(relationDefine.getSource());
- call.setTarget(relationDefine.getDest());
+ call.setSource(EndpointTraffic.buildId(relationDefine.getSourceServiceId(), relationDefine.getSource(), DetectPoint.SERVER.ordinal()));
+ call.setTarget(EndpointTraffic.buildId(relationDefine.getDestServiceId(), relationDefine.getDest(), DetectPoint.SERVER.ordinal()));
call.setComponentId(relationDefine.getComponentId());
call.setDetectPoint(detectPoint);
call.generateID();
diff --git a/oap-server/server-storage-plugin/storage-elasticsearch7-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch7/cache/EndpointInventoryCacheEs7DAO.java b/oap-server/server-storage-plugin/storage-elasticsearch7-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch7/cache/EndpointInventoryCacheEs7DAO.java
index ea6b651..064bb6c 100644
--- a/oap-server/server-storage-plugin/storage-elasticsearch7-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch7/cache/EndpointInventoryCacheEs7DAO.java
+++ b/oap-server/server-storage-plugin/storage-elasticsearch7-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch7/cache/EndpointInventoryCacheEs7DAO.java
@@ -18,7 +18,7 @@
package org.apache.skywalking.oap.server.storage.plugin.elasticsearch7.cache;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.library.client.elasticsearch.ElasticSearchClient;
import org.apache.skywalking.oap.server.storage.plugin.elasticsearch.cache.EndpointInventoryCacheEsDAO;
import org.elasticsearch.action.search.SearchResponse;
@@ -37,13 +37,13 @@ public class EndpointInventoryCacheEs7DAO extends EndpointInventoryCacheEsDAO {
}
@Override
- public EndpointInventory get(int endpointId) {
+ public EndpointTraffic get(int endpointId) {
try {
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
- searchSourceBuilder.query(QueryBuilders.termQuery(EndpointInventory.SEQUENCE, endpointId));
+ searchSourceBuilder.query(QueryBuilders.termQuery(EndpointTraffic.SEQUENCE, endpointId));
searchSourceBuilder.size(1);
- SearchResponse response = getClient().search(EndpointInventory.INDEX_NAME, searchSourceBuilder);
+ SearchResponse response = getClient().search(EndpointTraffic.INDEX_NAME, searchSourceBuilder);
if (response.getHits().getTotalHits().value == 1) {
SearchHit searchHit = response.getHits().getAt(0);
return builder.map2Data(searchHit.getSourceAsMap());
diff --git a/oap-server/server-storage-plugin/storage-elasticsearch7-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch7/query/LogQueryEs7DAO.java b/oap-server/server-storage-plugin/storage-elasticsearch7-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch7/query/LogQueryEs7DAO.java
index ff17d72..6d2e997 100644
--- a/oap-server/server-storage-plugin/storage-elasticsearch7-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch7/query/LogQueryEs7DAO.java
+++ b/oap-server/server-storage-plugin/storage-elasticsearch7-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch7/query/LogQueryEs7DAO.java
@@ -19,6 +19,8 @@
package org.apache.skywalking.oap.server.storage.plugin.elasticsearch7.query;
import com.google.common.base.Strings;
+import java.io.IOException;
+import java.util.List;
import org.apache.skywalking.oap.server.core.Const;
import org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord;
import org.apache.skywalking.oap.server.core.analysis.record.Record;
@@ -38,9 +40,6 @@ import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.SearchHit;
import org.elasticsearch.search.builder.SearchSourceBuilder;
-import java.io.IOException;
-import java.util.List;
-
import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.TRACE_ID;
public class LogQueryEs7DAO extends EsDAO implements ILogQueryDAO {
@@ -50,8 +49,8 @@ public class LogQueryEs7DAO extends EsDAO implements ILogQueryDAO {
@Override
public Logs queryLogs(String metricName, int serviceId, int serviceInstanceId, int endpointId, String traceId,
- LogState state, String stateCode, Pagination paging, int from, int limit, long startSecondTB,
- long endSecondTB) throws IOException {
+ LogState state, String stateCode, Pagination paging, int from, int limit, long startSecondTB,
+ long endSecondTB) throws IOException {
SearchSourceBuilder sourceBuilder = SearchSourceBuilder.searchSource();
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
@@ -70,7 +69,7 @@ public class LogQueryEs7DAO extends EsDAO implements ILogQueryDAO {
.add(QueryBuilders.termQuery(AbstractLogRecord.SERVICE_INSTANCE_ID, serviceInstanceId));
}
if (endpointId != Const.NONE) {
- boolQueryBuilder.must().add(QueryBuilders.termQuery(AbstractLogRecord.ENDPOINT_ID, endpointId));
+ boolQueryBuilder.must().add(QueryBuilders.termQuery(AbstractLogRecord.ENDPOINT_NAME, endpointId));
}
if (!Strings.isNullOrEmpty(stateCode)) {
boolQueryBuilder.must().add(QueryBuilders.termQuery(AbstractLogRecord.STATUS_CODE, stateCode));
@@ -80,10 +79,13 @@ public class LogQueryEs7DAO extends EsDAO implements ILogQueryDAO {
}
if (LogState.ERROR.equals(state)) {
boolQueryBuilder.must()
- .add(QueryBuilders.termQuery(AbstractLogRecord.IS_ERROR, BooleanUtils.booleanToValue(true)));
+ .add(
+ QueryBuilders.termQuery(AbstractLogRecord.IS_ERROR, BooleanUtils.booleanToValue(true)));
} else if (LogState.SUCCESS.equals(state)) {
boolQueryBuilder.must()
- .add(QueryBuilders.termQuery(AbstractLogRecord.IS_ERROR, BooleanUtils.booleanToValue(false)));
+ .add(QueryBuilders.termQuery(AbstractLogRecord.IS_ERROR,
+ BooleanUtils.booleanToValue(false)
+ ));
}
sourceBuilder.size(limit);
@@ -99,12 +101,13 @@ public class LogQueryEs7DAO extends EsDAO implements ILogQueryDAO {
log.setServiceId(((Number) searchHit.getSourceAsMap().get(AbstractLogRecord.SERVICE_ID)).intValue());
log.setServiceInstanceId(((Number) searchHit.getSourceAsMap()
.get(AbstractLogRecord.SERVICE_INSTANCE_ID)).intValue());
- log.setEndpointId(((Number) searchHit.getSourceAsMap().get(AbstractLogRecord.ENDPOINT_ID)).intValue());
+ log.setEndpointName((String) searchHit.getSourceAsMap().get(AbstractLogRecord.ENDPOINT_NAME));
log.setError(BooleanUtils.valueToBoolean(((Number) searchHit.getSourceAsMap()
.get(AbstractLogRecord.IS_ERROR)).intValue()));
log.setStatusCode((String) searchHit.getSourceAsMap().get(AbstractLogRecord.STATUS_CODE));
log.setContentType(ContentType.instanceOf(((Number) searchHit.getSourceAsMap()
- .get(AbstractLogRecord.CONTENT_TYPE)).intValue()));
+ .get(
+ AbstractLogRecord.CONTENT_TYPE)).intValue()));
log.setContent((String) searchHit.getSourceAsMap().get(AbstractLogRecord.CONTENT));
logs.getLogs().add(log);
diff --git a/oap-server/server-storage-plugin/storage-elasticsearch7-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch7/query/MetadataQueryEs7DAO.java b/oap-server/server-storage-plugin/storage-elasticsearch7-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch7/query/MetadataQueryEs7DAO.java
index d421b69..55d1a54 100644
--- a/oap-server/server-storage-plugin/storage-elasticsearch7-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch7/query/MetadataQueryEs7DAO.java
+++ b/oap-server/server-storage-plugin/storage-elasticsearch7-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/elasticsearch7/query/MetadataQueryEs7DAO.java
@@ -19,7 +19,7 @@
package org.apache.skywalking.oap.server.storage.plugin.elasticsearch7.query;
import java.io.IOException;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.register.NodeType;
import org.apache.skywalking.oap.server.core.register.ServiceInventory;
import org.apache.skywalking.oap.server.core.source.DetectPoint;
@@ -61,12 +61,12 @@ public class MetadataQueryEs7DAO extends MetadataQueryEsDAO {
BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
boolQueryBuilder.must()
- .add(QueryBuilders.termQuery(EndpointInventory.DETECT_POINT, DetectPoint.SERVER.ordinal()));
+ .add(QueryBuilders.termQuery(EndpointTraffic.DETECT_POINT, DetectPoint.SERVER.ordinal()));
sourceBuilder.query(boolQueryBuilder);
sourceBuilder.size(0);
- SearchResponse response = getClient().search(EndpointInventory.INDEX_NAME, sourceBuilder);
+ SearchResponse response = getClient().search(EndpointTraffic.INDEX_NAME, sourceBuilder);
return (int) response.getHits().getTotalHits().value;
}
diff --git a/oap-server/server-storage-plugin/storage-influxdb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/influxdb/query/AggregationQuery.java b/oap-server/server-storage-plugin/storage-influxdb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/influxdb/query/AggregationQuery.java
index 36436bb..de8765c 100644
--- a/oap-server/server-storage-plugin/storage-influxdb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/influxdb/query/AggregationQuery.java
+++ b/oap-server/server-storage-plugin/storage-influxdb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/influxdb/query/AggregationQuery.java
@@ -27,7 +27,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.skywalking.oap.server.core.analysis.Downsampling;
import org.apache.skywalking.oap.server.core.query.entity.Order;
import org.apache.skywalking.oap.server.core.query.entity.TopNEntity;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.register.ServiceInstanceInventory;
import org.apache.skywalking.oap.server.core.storage.model.ModelName;
import org.apache.skywalking.oap.server.core.storage.query.IAggregationQueryDAO;
@@ -85,7 +85,7 @@ public class AggregationQuery implements IAggregationQueryDAO {
long startTB, long endTB, Order order) throws IOException {
return getTopNEntity(
downsampling, indName,
- subQuery(EndpointInventory.SERVICE_ID, serviceId, indName, valueCName, startTB, endTB), order, topN
+ subQuery(EndpointTraffic.SERVICE_ID, serviceId, indName, valueCName, startTB, endTB), order, topN
);
}
diff --git a/oap-server/server-storage-plugin/storage-influxdb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/influxdb/query/LogQuery.java b/oap-server/server-storage-plugin/storage-influxdb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/influxdb/query/LogQuery.java
index 6b15592..c70a802 100644
--- a/oap-server/server-storage-plugin/storage-influxdb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/influxdb/query/LogQuery.java
+++ b/oap-server/server-storage-plugin/storage-influxdb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/influxdb/query/LogQuery.java
@@ -42,7 +42,7 @@ import org.influxdb.querybuilder.clauses.ConjunctionClause;
import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.CONTENT;
import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.CONTENT_TYPE;
-import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.ENDPOINT_ID;
+import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.ENDPOINT_NAME;
import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.IS_ERROR;
import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.SERVICE_ID;
import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.SERVICE_INSTANCE_ID;
@@ -76,7 +76,7 @@ public class LogQuery implements ILogQueryDAO {
recallQuery.and(eq(SERVICE_INSTANCE_ID, serviceInstanceId));
}
if (endpointId != Const.NONE) {
- recallQuery.and(eq(ENDPOINT_ID, endpointId));
+ recallQuery.and(eq(ENDPOINT_NAME, endpointId));
}
if (!Strings.isNullOrEmpty(traceId)) {
recallQuery.and(eq(TRACE_ID, traceId));
@@ -103,7 +103,7 @@ public class LogQuery implements ILogQueryDAO {
recallQuery.limit(limit);
}
- SelectQueryImpl countQuery = select().count(ENDPOINT_ID).from(client.getDatabase(), metricName);
+ SelectQueryImpl countQuery = select().count(ENDPOINT_NAME).from(client.getDatabase(), metricName);
for (ConjunctionClause clause : recallQuery.getClauses()) {
countQuery.where(clause);
}
@@ -135,7 +135,7 @@ public class LogQuery implements ILogQueryDAO {
log.setContent((String) data.get(CONTENT));
log.setContentType(ContentType.instanceOf((int) data.get(CONTENT_TYPE)));
- log.setEndpointId((int) data.get(ENDPOINT_ID));
+ log.setEndpointName(data.get(ENDPOINT_NAME));
log.setTraceId((String) data.get(TRACE_ID));
log.setTimestamp((String) data.get(TIMESTAMP));
diff --git a/oap-server/server-storage-plugin/storage-influxdb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/influxdb/query/TopologyQuery.java b/oap-server/server-storage-plugin/storage-influxdb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/influxdb/query/TopologyQuery.java
index 34b81c8..de9e40a 100644
--- a/oap-server/server-storage-plugin/storage-influxdb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/influxdb/query/TopologyQuery.java
+++ b/oap-server/server-storage-plugin/storage-influxdb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/influxdb/query/TopologyQuery.java
@@ -25,6 +25,7 @@ import java.util.List;
import lombok.extern.slf4j.Slf4j;
import org.apache.skywalking.oap.server.core.analysis.Downsampling;
import org.apache.skywalking.oap.server.core.analysis.manual.RelationDefineUtil;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.analysis.manual.endpointrelation.EndpointRelationServerSideMetrics;
import org.apache.skywalking.oap.server.core.analysis.manual.relation.instance.ServiceInstanceRelationClientSideMetrics;
import org.apache.skywalking.oap.server.core.analysis.manual.relation.instance.ServiceInstanceRelationServerSideMetrics;
@@ -160,21 +161,21 @@ public class TopologyQuery implements ITopologyQueryDAO {
measurement,
startTB,
endTB,
- EndpointRelationServerSideMetrics.SOURCE_ENDPOINT_ID,
- EndpointRelationServerSideMetrics.DEST_ENDPOINT_ID,
+ EndpointRelationServerSideMetrics.SOURCE_ENDPOINT,
+ EndpointRelationServerSideMetrics.DEST_ENDPOINT,
Collections.emptyList()
);
- query.and(eq(EndpointRelationServerSideMetrics.DEST_ENDPOINT_ID, destEndpointId));
+ query.and(eq(EndpointRelationServerSideMetrics.DEST_ENDPOINT, destEndpointId));
WhereQueryImpl query2 = buildServiceCallsQuery(
measurement,
startTB,
endTB,
- EndpointRelationServerSideMetrics.SOURCE_ENDPOINT_ID,
- EndpointRelationServerSideMetrics.DEST_ENDPOINT_ID,
+ EndpointRelationServerSideMetrics.SOURCE_ENDPOINT,
+ EndpointRelationServerSideMetrics.DEST_ENDPOINT,
Collections.emptyList()
);
- query2.and(eq(EndpointRelationServerSideMetrics.SOURCE_ENDPOINT_ID, destEndpointId));
+ query2.and(eq(EndpointRelationServerSideMetrics.SOURCE_ENDPOINT, destEndpointId));
List<Call.CallDetail> calls = buildCalls(query, DetectPoint.SERVER);
calls.addAll(buildCalls(query2, DetectPoint.CLIENT));
@@ -243,10 +244,10 @@ public class TopologyQuery implements ITopologyQueryDAO {
series.getValues().forEach(values -> {
Call.CallDetail call = new Call.CallDetail();
String entityId = (String) values.get(1);
- RelationDefineUtil.RelationDefine relationDefine = RelationDefineUtil.splitEntityId(entityId);
+ RelationDefineUtil.EndpointRelationDefine relationDefine = RelationDefineUtil.splitEndpointEntityId(entityId);
- call.setSource(relationDefine.getSource());
- call.setTarget(relationDefine.getDest());
+ call.setSource(EndpointTraffic.buildId(relationDefine.getSourceServiceId(), relationDefine.getSource(), DetectPoint.SERVER.ordinal()));
+ call.setTarget(EndpointTraffic.buildId(relationDefine.getDestServiceId(), relationDefine.getDest(), DetectPoint.SERVER.ordinal()));
call.setComponentId(relationDefine.getComponentId());
call.setDetectPoint(detectPoint);
call.generateID();
diff --git a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2AggregationQueryDAO.java b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2AggregationQueryDAO.java
index dea2b0b..4bab452 100644
--- a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2AggregationQueryDAO.java
+++ b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2AggregationQueryDAO.java
@@ -24,7 +24,7 @@ import org.apache.skywalking.oap.server.core.analysis.Downsampling;
import org.apache.skywalking.oap.server.core.analysis.metrics.Metrics;
import org.apache.skywalking.oap.server.core.query.entity.Order;
import org.apache.skywalking.oap.server.core.query.entity.TopNEntity;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.register.ServiceInstanceInventory;
import org.apache.skywalking.oap.server.core.storage.model.ModelName;
import org.apache.skywalking.oap.server.core.storage.query.IAggregationQueryDAO;
@@ -77,7 +77,7 @@ public class H2AggregationQueryDAO implements IAggregationQueryDAO {
public List<TopNEntity> getEndpointTopN(int serviceId, String indName, String valueCName, int topN,
Downsampling downsampling, long startTB, long endTB, Order order) throws IOException {
return topNQuery(indName, valueCName, topN, downsampling, startTB, endTB, order, (sql, conditions) -> {
- sql.append(" and ").append(EndpointInventory.SERVICE_ID).append("=?");
+ sql.append(" and ").append(EndpointTraffic.SERVICE_ID).append("=?");
conditions.add(serviceId);
});
}
diff --git a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2EndpointInventoryCacheDAO.java b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2EndpointInventoryCacheDAO.java
index 9d86508..f75be15 100644
--- a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2EndpointInventoryCacheDAO.java
+++ b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2EndpointInventoryCacheDAO.java
@@ -19,7 +19,7 @@
package org.apache.skywalking.oap.server.storage.plugin.jdbc.h2.dao;
import java.io.IOException;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.storage.cache.IEndpointInventoryCacheDAO;
import org.apache.skywalking.oap.server.library.client.jdbc.hikaricp.JDBCHikariCPClient;
import org.slf4j.Logger;
@@ -35,14 +35,14 @@ public class H2EndpointInventoryCacheDAO extends H2SQLExecutor implements IEndpo
@Override
public int getEndpointId(int serviceId, String endpointName, int detectPoint) {
- String id = EndpointInventory.buildId(serviceId, endpointName, detectPoint);
- return getEntityIDByID(h2Client, EndpointInventory.SEQUENCE, EndpointInventory.INDEX_NAME, id);
+ String id = EndpointTraffic.buildId(serviceId, endpointName, detectPoint);
+ return getEntityIDByID(h2Client, EndpointTraffic.SEQUENCE, EndpointTraffic.INDEX_NAME, id);
}
@Override
- public EndpointInventory get(int endpointId) {
+ public EndpointTraffic get(int endpointId) {
try {
- return (EndpointInventory) getByColumn(h2Client, EndpointInventory.INDEX_NAME, EndpointInventory.SEQUENCE, endpointId, new EndpointInventory.Builder());
+ return (EndpointTraffic) getByColumn(h2Client, EndpointTraffic.INDEX_NAME, EndpointTraffic.SEQUENCE, endpointId, new EndpointTraffic.Builder());
} catch (IOException e) {
logger.error(e.getMessage(), e);
return null;
diff --git a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2LogQueryDAO.java b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2LogQueryDAO.java
index 80b9033..95f90a1 100644
--- a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2LogQueryDAO.java
+++ b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2LogQueryDAO.java
@@ -39,7 +39,7 @@ import java.util.List;
import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.CONTENT;
import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.CONTENT_TYPE;
-import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.ENDPOINT_ID;
+import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.ENDPOINT_NAME;
import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.SERVICE_ID;
import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.SERVICE_INSTANCE_ID;
import static org.apache.skywalking.oap.server.core.analysis.manual.log.AbstractLogRecord.STATUS_CODE;
@@ -78,7 +78,7 @@ public class H2LogQueryDAO implements ILogQueryDAO {
parameters.add(serviceInstanceId);
}
if (endpointId != Const.NONE) {
- sql.append(" and ").append(AbstractLogRecord.ENDPOINT_ID).append(" = ?");
+ sql.append(" and ").append(AbstractLogRecord.ENDPOINT_NAME).append(" = ?");
parameters.add(endpointId);
}
if (!Strings.isNullOrEmpty(stateCode)) {
@@ -114,7 +114,7 @@ public class H2LogQueryDAO implements ILogQueryDAO {
Log log = new Log();
log.setServiceId(resultSet.getInt(SERVICE_ID));
log.setServiceInstanceId(resultSet.getInt(SERVICE_INSTANCE_ID));
- log.setEndpointId(resultSet.getInt(ENDPOINT_ID));
+ log.setEndpointName(resultSet.getString(ENDPOINT_NAME));
log.setTraceId(resultSet.getString(TRACE_ID));
log.setTimestamp(resultSet.getString(TIMESTAMP));
log.setStatusCode(resultSet.getString(STATUS_CODE));
diff --git a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2MetadataQueryDAO.java b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2MetadataQueryDAO.java
index 1f3caf3..2d8f11f 100644
--- a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2MetadataQueryDAO.java
+++ b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2MetadataQueryDAO.java
@@ -35,7 +35,7 @@ import org.apache.skywalking.oap.server.core.query.entity.Endpoint;
import org.apache.skywalking.oap.server.core.query.entity.LanguageTrans;
import org.apache.skywalking.oap.server.core.query.entity.Service;
import org.apache.skywalking.oap.server.core.query.entity.ServiceInstance;
-import org.apache.skywalking.oap.server.core.register.EndpointInventory;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.register.NodeType;
import org.apache.skywalking.oap.server.core.register.RegisterSource;
import org.apache.skywalking.oap.server.core.register.ServiceInstanceInventory;
@@ -91,8 +91,8 @@ public class H2MetadataQueryDAO implements IMetadataQueryDAO {
public int numOfEndpoint() throws IOException {
StringBuilder sql = new StringBuilder();
List<Object> condition = new ArrayList<>(5);
- sql.append("select count(*) num from ").append(EndpointInventory.INDEX_NAME).append(" where ");
- sql.append(EndpointInventory.DETECT_POINT).append("=").append(DetectPoint.SERVER.ordinal());
+ sql.append("select count(*) num from ").append(EndpointTraffic.INDEX_NAME).append(" where ");
+ sql.append(EndpointTraffic.DETECT_POINT).append("=").append(DetectPoint.SERVER.ordinal());
return getNum(sql, condition);
}
@@ -238,13 +238,13 @@ public class H2MetadataQueryDAO implements IMetadataQueryDAO {
public List<Endpoint> searchEndpoint(String keyword, String serviceId, int limit) throws IOException {
StringBuilder sql = new StringBuilder();
List<Object> condition = new ArrayList<>(5);
- sql.append("select * from ").append(EndpointInventory.INDEX_NAME).append(" where ");
- sql.append(EndpointInventory.SERVICE_ID).append("=?");
+ sql.append("select * from ").append(EndpointTraffic.INDEX_NAME).append(" where ");
+ sql.append(EndpointTraffic.SERVICE_ID).append("=?");
condition.add(serviceId);
if (!Strings.isNullOrEmpty(keyword)) {
- sql.append(" and ").append(EndpointInventory.NAME).append(" like '%").append(keyword).append("%' ");
+ sql.append(" and ").append(EndpointTraffic.NAME).append(" like '%").append(keyword).append("%' ");
}
- sql.append(" and ").append(EndpointInventory.DETECT_POINT).append(" = ?");
+ sql.append(" and ").append(EndpointTraffic.DETECT_POINT).append(" = ?");
condition.add(DetectPoint.SERVER.ordinal());
sql.append(" limit ").append(limit);
@@ -254,8 +254,8 @@ public class H2MetadataQueryDAO implements IMetadataQueryDAO {
while (resultSet.next()) {
Endpoint endpoint = new Endpoint();
- endpoint.setId(resultSet.getInt(EndpointInventory.SEQUENCE));
- endpoint.setName(resultSet.getString(EndpointInventory.NAME));
+ endpoint.setId(resultSet.getInt(EndpointTraffic.SEQUENCE));
+ endpoint.setName(resultSet.getString(EndpointTraffic.NAME));
endpoints.add(endpoint);
}
}
diff --git a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2TopologyQueryDAO.java b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2TopologyQueryDAO.java
index ebf68e8..aef2e9a 100644
--- a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2TopologyQueryDAO.java
+++ b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/h2/dao/H2TopologyQueryDAO.java
@@ -26,6 +26,7 @@ import java.util.ArrayList;
import java.util.List;
import org.apache.skywalking.oap.server.core.analysis.Downsampling;
import org.apache.skywalking.oap.server.core.analysis.manual.RelationDefineUtil;
+import org.apache.skywalking.oap.server.core.analysis.manual.endpoint.EndpointTraffic;
import org.apache.skywalking.oap.server.core.analysis.manual.endpointrelation.EndpointRelationServerSideMetrics;
import org.apache.skywalking.oap.server.core.analysis.manual.relation.instance.ServiceInstanceRelationClientSideMetrics;
import org.apache.skywalking.oap.server.core.analysis.manual.relation.instance.ServiceInstanceRelationServerSideMetrics;
@@ -92,8 +93,8 @@ public class H2TopologyQueryDAO implements ITopologyQueryDAO {
long endTB, int destEndpointId) throws IOException {
String tableName = ModelName.build(downsampling, EndpointRelationServerSideMetrics.INDEX_NAME);
- List<Call.CallDetail> calls = loadEndpointFromSide(tableName, startTB, endTB, EndpointRelationServerSideMetrics.SOURCE_ENDPOINT_ID, EndpointRelationServerSideMetrics.DEST_ENDPOINT_ID, destEndpointId, false);
- calls.addAll(loadEndpointFromSide(tableName, startTB, endTB, EndpointRelationServerSideMetrics.SOURCE_ENDPOINT_ID, EndpointRelationServerSideMetrics.DEST_ENDPOINT_ID, destEndpointId, true));
+ List<Call.CallDetail> calls = loadEndpointFromSide(tableName, startTB, endTB, EndpointRelationServerSideMetrics.SOURCE_ENDPOINT, EndpointRelationServerSideMetrics.DEST_ENDPOINT, destEndpointId, false);
+ calls.addAll(loadEndpointFromSide(tableName, startTB, endTB, EndpointRelationServerSideMetrics.SOURCE_ENDPOINT, EndpointRelationServerSideMetrics.DEST_ENDPOINT, destEndpointId, true));
return calls;
}
@@ -182,10 +183,10 @@ public class H2TopologyQueryDAO implements ITopologyQueryDAO {
while (resultSet.next()) {
Call.CallDetail call = new Call.CallDetail();
String entityId = resultSet.getString(Metrics.ENTITY_ID);
- RelationDefineUtil.RelationDefine relationDefine = RelationDefineUtil.splitEntityId(entityId);
+ RelationDefineUtil.EndpointRelationDefine relationDefine = RelationDefineUtil.splitEndpointEntityId(entityId);
- call.setSource(relationDefine.getSource());
- call.setTarget(relationDefine.getDest());
+ call.setSource(EndpointTraffic.buildId(relationDefine.getSourceServiceId(), relationDefine.getSource(), DetectPoint.SERVER.ordinal()));
+ call.setTarget(EndpointTraffic.buildId(relationDefine.getDestServiceId(), relationDefine.getDest(), DetectPoint.SERVER.ordinal()));
call.setComponentId(relationDefine.getComponentId());
if (isClientSide) {
call.setDetectPoint(DetectPoint.CLIENT);
diff --git a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/mysql/MySQLTableInstaller.java b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/mysql/MySQLTableInstaller.java
index 21c2f8e..52c735d 100644
--- a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/mysql/MySQLTableInstaller.java
+++ b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/mysql/MySQLTableInstaller.java
@@ -37,7 +37,7 @@ import org.apache.skywalking.oap.server.storage.plugin.jdbc.SQLBuilder;
import org.apache.skywalking.oap.server.storage.plugin.jdbc.h2.dao.H2TableInstaller;
import static org.apache.skywalking.oap.server.core.source.DefaultScopeDefine.ALARM;
-import static org.apache.skywalking.oap.server.core.source.DefaultScopeDefine.ENDPOINT_INVENTORY;
+import static org.apache.skywalking.oap.server.core.source.DefaultScopeDefine.ENDPOINT_TRAFFIC;
import static org.apache.skywalking.oap.server.core.source.DefaultScopeDefine.NETWORK_ADDRESS;
import static org.apache.skywalking.oap.server.core.source.DefaultScopeDefine.SEGMENT;
import static org.apache.skywalking.oap.server.core.source.DefaultScopeDefine.SERVICE_INSTANCE_INVENTORY;
@@ -111,7 +111,7 @@ public class MySQLTableInstaller extends H2TableInstaller {
case SERVICE_INVENTORY:
case SERVICE_INSTANCE_INVENTORY:
case NETWORK_ADDRESS:
- case ENDPOINT_INVENTORY:
+ case ENDPOINT_TRAFFIC:
createInventoryIndexes(client, model);
return;
case SEGMENT:
diff --git a/oap-server/server-tools/profile-exporter/tool-profile-snapshot-server-mock/src/main/java/org/apache/skywalking/oap/server/tool/profile/core/MockCoreModuleProvider.java b/oap-server/server-tools/profile-exporter/tool-profile-snapshot-server-mock/src/main/java/org/apache/skywalking/oap/server/tool/profile/core/MockCoreModuleProvider.java
index 6143f9d..c55af8c 100755
--- a/oap-server/server-tools/profile-exporter/tool-profile-snapshot-server-mock/src/main/java/org/apache/skywalking/oap/server/tool/profile/core/MockCoreModuleProvider.java
+++ b/oap-server/server-tools/profile-exporter/tool-profile-snapshot-server-mock/src/main/java/org/apache/skywalking/oap/server/tool/profile/core/MockCoreModuleProvider.java
@@ -41,8 +41,8 @@ import org.apache.skywalking.oap.server.core.query.ProfileTaskQueryService;
import org.apache.skywalking.oap.server.core.query.TopNRecordsQueryService;
import org.apache.skywalking.oap.server.core.query.TopologyQueryService;
import org.apache.skywalking.oap.server.core.query.TraceQueryService;
-import org.apache.skywalking.oap.server.core.register.service.EndpointInventoryRegister;
-import org.apache.skywalking.oap.server.core.register.service.IEndpointInventoryRegister;
+import org.apache.skywalking.oap.server.core.register.service.EndpointTrafficGeneratorGenerator;
+import org.apache.skywalking.oap.server.core.register.service.IEndpointTrafficGenerator;
import org.apache.skywalking.oap.server.core.register.service.INetworkAddressInventoryRegister;
import org.apache.skywalking.oap.server.core.register.service.IServiceInstanceInventoryRegister;
import org.apache.skywalking.oap.server.core.register.service.IServiceInventoryRegister;
@@ -142,7 +142,7 @@ public class MockCoreModuleProvider extends CoreModuleProvider {
this.registerServiceImplementation(IServiceInstanceInventoryRegister.class, new ServiceInstanceInventoryRegister(getManager()));
this.registerServiceImplementation(EndpointInventoryCache.class, new EndpointInventoryCache(getManager(), moduleConfig));
- this.registerServiceImplementation(IEndpointInventoryRegister.class, new EndpointInventoryRegister(getManager()));
+ this.registerServiceImplementation(IEndpointTrafficGenerator.class, new EndpointTrafficGeneratorGenerator(getManager()));
this.registerServiceImplementation(NetworkAddressInventoryCache.class, new NetworkAddressInventoryCache(getManager(), moduleConfig));
this.registerServiceImplementation(INetworkAddressInventoryRegister.class, new NetworkAddressInventoryRegister(getManager()));