From c10b7b18191e2f41446100a601ad5249980f0c95 Mon Sep 17 00:00:00 2001 From: peng-yongsheng <8082209@qq.com> Date: Wed, 15 Nov 2017 11:40:49 +0800 Subject: [PATCH] Change all daos to be services. --- .../jvm/CpuMetricPersistenceWorker.java | 3 +- .../worker/jvm/GCMetricPersistenceWorker.java | 6 +- .../jvm/InstHeartBeatPersistenceWorker.java | 6 +- .../jvm/MemoryMetricPersistenceWorker.java | 6 +- .../MemoryPoolMetricPersistenceWorker.java | 6 +- .../ApplicationRegisterSerialWorker.java | 16 +- .../worker/register/InstanceIDService.java | 9 +- .../InstanceRegisterSerialWorker.java | 14 +- .../ServiceNameRegisterSerialWorker.java | 16 +- .../global/GlobalTracePersistenceWorker.java | 6 +- .../InstPerformancePersistenceWorker.java | 6 +- .../node/NodeComponentPersistenceWorker.java | 6 +- .../node/NodeMappingPersistenceWorker.java | 6 +- .../NodeReferencePersistenceWorker.java | 6 +- .../segment/SegmentCostPersistenceWorker.java | 6 +- .../segment/SegmentPersistenceWorker.java | 4 +- .../ServiceEntryPersistenceWorker.java | 6 +- .../ServiceReferencePersistenceWorker.java | 6 +- .../service/ApplicationCacheGuavaService.java | 17 +- .../service/InstanceCacheGuavaService.java | 15 +- .../service/ServiceIdCacheGuavaService.java | 11 +- .../service/ServiceNameCacheGuavaService.java | 11 +- .../apm/collector/storage/StorageModule.java | 97 ++++++++++- .../storage/base/dao/AbstractDAO.java | 10 +- .../storage/base/dao/DAOContainer.java | 51 ------ ...mDAO.java => IApplicationRegisterDAO.java} | 2 +- ...reamDAO.java => IInstanceRegisterDAO.java} | 2 +- ...mDAO.java => IServiceNameRegisterDAO.java} | 2 +- .../collector/storage/service/DAOService.java | 32 ---- .../storage/es/StorageModuleEsProvider.java | 146 +++++++++++++--- .../storage/es/base/dao/BatchEsDAO.java | 5 + .../collector/storage/es/base/dao/EsDAO.java | 4 + .../es/base/dao/EsDAODefineLoader.java | 48 ------ .../es/base/dao/EsDAODefinitionFile.java | 31 ---- .../storage/es/dao/ApplicationEsCacheDAO.java | 4 + ...DAO.java => ApplicationEsRegisterDAO.java} | 10 +- .../es/dao/CpuMetricEsPersistenceDAO.java | 5 + .../storage/es/dao/CpuMetricEsUIDAO.java | 5 + .../es/dao/GCMetricEsPersistenceDAO.java | 5 + .../storage/es/dao/GCMetricEsUIDAO.java | 5 + .../es/dao/GlobalTraceEsPersistenceDAO.java | 5 + .../storage/es/dao/GlobalTraceEsUIDAO.java | 5 + .../dao/InstPerformanceEsPersistenceDAO.java | 5 + .../es/dao/InstPerformanceEsUIDAO.java | 5 + .../storage/es/dao/InstanceEsCacheDAO.java | 4 + ...eamDAO.java => InstanceEsRegisterDAO.java} | 10 +- .../storage/es/dao/InstanceEsUIDAO.java | 5 + .../InstanceHeartBeatEsPersistenceDAO.java | 5 + .../es/dao/MemoryMetricEsPersistenceDAO.java | 5 + .../storage/es/dao/MemoryMetricEsUIDAO.java | 5 + .../dao/MemoryPoolMetricEsPersistenceDAO.java | 5 + .../es/dao/NodeComponentEsPersistenceDAO.java | 5 + .../storage/es/dao/NodeComponentEsUIDAO.java | 5 + .../es/dao/NodeMappingEsPersistenceDAO.java | 5 + .../storage/es/dao/NodeMappingEsUIDAO.java | 5 + .../es/dao/NodeReferenceEsPersistenceDAO.java | 5 + .../storage/es/dao/NodeReferenceEsUIDAO.java | 5 + .../es/dao/SegmentCostEsPersistenceDAO.java | 5 + .../storage/es/dao/SegmentCostEsUIDAO.java | 5 + .../es/dao/SegmentEsPersistenceDAO.java | 5 + .../storage/es/dao/SegmentEsUIDAO.java | 5 + .../es/dao/ServiceEntryEsPersistenceDAO.java | 5 + .../storage/es/dao/ServiceEntryEsUIDAO.java | 5 + .../storage/es/dao/ServiceNameEsCacheDAO.java | 5 + ...DAO.java => ServiceNameEsRegisterDAO.java} | 10 +- .../dao/ServiceReferenceEsPersistenceDAO.java | 5 + .../es/service/ElasticSearchDAOService.java | 44 ----- .../resources/META-INF/defines/es_dao.define | 35 ---- .../storage/h2/StorageModuleH2Provider.java | 159 ++++++++++++++---- .../storage/h2/base/dao/BatchH2DAO.java | 6 + .../collector/storage/h2/base/dao/H2DAO.java | 5 + .../h2/base/dao/H2DAODefineLoader.java | 48 ------ .../h2/base/dao/H2DAODefinitionFile.java | 31 ---- .../storage/h2/dao/ApplicationH2CacheDAO.java | 6 +- ...DAO.java => ApplicationH2RegisterDAO.java} | 10 +- .../h2/dao/CpuMetricH2PersistenceDAO.java | 5 + .../storage/h2/dao/CpuMetricH2UIDAO.java | 4 + .../h2/dao/GCMetricH2PersistenceDAO.java | 5 + .../storage/h2/dao/GCMetricH2UIDAO.java | 4 + .../h2/dao/GlobalTraceH2PersistenceDAO.java | 6 + .../storage/h2/dao/GlobalTraceH2UIDAO.java | 4 + .../dao/InstPerformanceH2PersistenceDAO.java | 4 + .../h2/dao/InstPerformanceH2UIDAO.java | 4 + .../storage/h2/dao/InstanceH2CacheDAO.java | 4 + ...eamDAO.java => InstanceH2RegisterDAO.java} | 11 +- .../storage/h2/dao/InstanceH2UIDAO.java | 4 + .../InstanceHeartBeatH2PersistenceDAO.java | 4 + .../h2/dao/MemoryMetricH2PersistenceDAO.java | 5 + .../storage/h2/dao/MemoryMetricH2UIDAO.java | 4 + .../dao/MemoryPoolMetricH2PersistenceDAO.java | 5 + .../h2/dao/NodeComponentH2PersistenceDAO.java | 4 + .../storage/h2/dao/NodeComponentH2UIDAO.java | 4 + .../h2/dao/NodeMappingH2PersistenceDAO.java | 4 + .../storage/h2/dao/NodeMappingH2UIDAO.java | 4 + .../h2/dao/NodeReferenceH2PersistenceDAO.java | 4 + .../storage/h2/dao/NodeReferenceH2UIDAO.java | 4 + .../h2/dao/SegmentCostH2PersistenceDAO.java | 5 + .../storage/h2/dao/SegmentCostH2UIDAO.java | 4 + .../h2/dao/SegmentH2PersistenceDAO.java | 5 + .../storage/h2/dao/SegmentH2UIDAO.java | 4 + .../h2/dao/ServiceEntryH2PersistenceDAO.java | 4 + .../storage/h2/dao/ServiceEntryH2UIDAO.java | 4 + .../storage/h2/dao/ServiceNameH2CacheDAO.java | 6 +- ...DAO.java => ServiceNameH2RegisterDAO.java} | 11 +- .../dao/ServiceReferenceH2PersistenceDAO.java | 4 + .../storage/h2/service/H2DAOService.java | 44 ----- .../resources/META-INF/defines/h2_dao.define | 35 ---- .../stream/worker/impl/PersistenceWorker.java | 8 +- .../ui/service/ApplicationService.java | 6 +- .../ui/service/InstanceHealthService.java | 12 +- .../ui/service/InstanceJVMService.java | 38 ++--- .../ui/service/SegmentTopService.java | 9 +- .../ui/service/ServiceTreeService.java | 10 +- .../apm/collector/ui/service/SpanService.java | 6 +- .../ui/service/TimeSynchronousService.java | 7 +- .../collector/ui/service/TraceDagService.java | 12 +- .../ui/service/TraceStackService.java | 10 +- 117 files changed, 787 insertions(+), 689 deletions(-) delete mode 100644 apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/base/dao/DAOContainer.java rename apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/{IApplicationStreamDAO.java => IApplicationRegisterDAO.java} (94%) rename apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/{IInstanceStreamDAO.java => IInstanceRegisterDAO.java} (95%) rename apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/{IServiceNameStreamDAO.java => IServiceNameRegisterDAO.java} (94%) delete mode 100644 apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/service/DAOService.java delete mode 100644 apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/EsDAODefineLoader.java delete mode 100644 apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/EsDAODefinitionFile.java rename apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/{ApplicationEsStreamDAO.java => ApplicationEsRegisterDAO.java} (89%) rename apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/{InstanceEsStreamDAO.java => InstanceEsRegisterDAO.java} (92%) rename apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/{ServiceNameEsStreamDAO.java => ServiceNameEsRegisterDAO.java} (90%) delete mode 100644 apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/service/ElasticSearchDAOService.java delete mode 100644 apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/resources/META-INF/defines/es_dao.define delete mode 100644 apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/H2DAODefineLoader.java delete mode 100644 apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/H2DAODefinitionFile.java rename apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/{ApplicationH2StreamDAO.java => ApplicationH2RegisterDAO.java} (89%) rename apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/{InstanceH2StreamDAO.java => InstanceH2RegisterDAO.java} (92%) rename apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/{ServiceNameH2StreamDAO.java => ServiceNameH2RegisterDAO.java} (90%) delete mode 100644 apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/service/H2DAOService.java delete mode 100644 apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/resources/META-INF/defines/h2_dao.define diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/CpuMetricPersistenceWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/CpuMetricPersistenceWorker.java index ef1f21c47..f4d58a9af 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/CpuMetricPersistenceWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/CpuMetricPersistenceWorker.java @@ -23,7 +23,6 @@ import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; import org.skywalking.apm.collector.storage.dao.ICpuMetricPersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.jvm.CpuMetric; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; @@ -46,7 +45,7 @@ public class CpuMetricPersistenceWorker extends PersistenceWorker { diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/GCMetricPersistenceWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/GCMetricPersistenceWorker.java index fd17f676c..49e3a6b85 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/GCMetricPersistenceWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/GCMetricPersistenceWorker.java @@ -23,7 +23,6 @@ import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; import org.skywalking.apm.collector.storage.dao.IGCMetricPersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.jvm.GCMetric; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; @@ -33,11 +32,8 @@ import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; */ public class GCMetricPersistenceWorker extends PersistenceWorker { - private final DAOService daoService; - public GCMetricPersistenceWorker(ModuleManager moduleManager) { super(moduleManager); - this.daoService = getModuleManager().find(StorageModule.NAME).getService(DAOService.class); } @Override public int id() { @@ -49,7 +45,7 @@ public class GCMetricPersistenceWorker extends PersistenceWorker { diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/InstHeartBeatPersistenceWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/InstHeartBeatPersistenceWorker.java index b7e9f2219..57b9108a3 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/InstHeartBeatPersistenceWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/InstHeartBeatPersistenceWorker.java @@ -23,7 +23,6 @@ import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; import org.skywalking.apm.collector.storage.dao.IInstanceHeartBeatPersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.register.Instance; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; @@ -33,11 +32,8 @@ import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; */ public class InstHeartBeatPersistenceWorker extends PersistenceWorker { - private final DAOService daoService; - public InstHeartBeatPersistenceWorker(ModuleManager moduleManager) { super(moduleManager); - this.daoService = getModuleManager().find(StorageModule.NAME).getService(DAOService.class); } @Override public int id() { @@ -49,7 +45,7 @@ public class InstHeartBeatPersistenceWorker extends PersistenceWorker { diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/MemoryMetricPersistenceWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/MemoryMetricPersistenceWorker.java index 42edb59ed..6840da97b 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/MemoryMetricPersistenceWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/MemoryMetricPersistenceWorker.java @@ -23,7 +23,6 @@ import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; import org.skywalking.apm.collector.storage.dao.IMemoryMetricPersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.jvm.MemoryMetric; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; @@ -33,11 +32,8 @@ import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; */ public class MemoryMetricPersistenceWorker extends PersistenceWorker { - private final DAOService daoService; - public MemoryMetricPersistenceWorker(ModuleManager moduleManager) { super(moduleManager); - this.daoService = getModuleManager().find(StorageModule.NAME).getService(DAOService.class); } @Override public int id() { @@ -49,7 +45,7 @@ public class MemoryMetricPersistenceWorker extends PersistenceWorker { diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/MemoryPoolMetricPersistenceWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/MemoryPoolMetricPersistenceWorker.java index f1450e393..f0a8257f6 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/MemoryPoolMetricPersistenceWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/jvm/MemoryPoolMetricPersistenceWorker.java @@ -23,7 +23,6 @@ import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; import org.skywalking.apm.collector.storage.dao.IMemoryPoolMetricPersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.jvm.MemoryPoolMetric; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; @@ -37,11 +36,8 @@ public class MemoryPoolMetricPersistenceWorker extends PersistenceWorker { diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/register/ApplicationRegisterSerialWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/register/ApplicationRegisterSerialWorker.java index 2b15bd4b8..ff55da51d 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/register/ApplicationRegisterSerialWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/register/ApplicationRegisterSerialWorker.java @@ -25,8 +25,7 @@ import org.skywalking.apm.collector.core.module.ModuleManager; import org.skywalking.apm.collector.core.util.Const; import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; -import org.skywalking.apm.collector.storage.dao.IApplicationStreamDAO; -import org.skywalking.apm.collector.storage.service.DAOService; +import org.skywalking.apm.collector.storage.dao.IApplicationRegisterDAO; import org.skywalking.apm.collector.storage.table.register.Application; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorker; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; @@ -41,12 +40,12 @@ public class ApplicationRegisterSerialWorker extends AbstractLocalAsyncWorker instanceRegisterGraph; + private final IInstanceRegisterDAO instanceRegisterDAO; public InstanceIDService(ModuleManager moduleManager) { this.moduleManager = moduleManager; this.instanceRegisterGraph = GraphManager.INSTANCE.createIfAbsent(RegisterStreamGraph.INSTANCE_REGISTER_GRAPH_ID, Instance.class); + this.instanceRegisterDAO = moduleManager.find(StorageModule.NAME).getService(IInstanceRegisterDAO.class); } public int getOrCreate(int applicationId, String agentUUID, long registerTime, @@ -71,8 +72,6 @@ public class InstanceIDService { public void recover(int instanceId, int applicationId, long registerTime, String osInfo) throws ModuleNotFoundException, ServiceNotProvidedException { logger.debug("instance recover, instance id: {}, application id: {}, register time: {}", instanceId, applicationId, registerTime); - DAOService daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); - IInstanceStreamDAO dao = (IInstanceStreamDAO)daoService.get(IInstanceStreamDAO.class); Instance instance = new Instance(String.valueOf(instanceId)); instance.setApplicationId(applicationId); @@ -81,6 +80,6 @@ public class InstanceIDService { instance.setHeartBeatTime(registerTime); instance.setInstanceId(instanceId); instance.setOsInfo(osInfo); - dao.save(instance); + instanceRegisterDAO.save(instance); } } diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/register/InstanceRegisterSerialWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/register/InstanceRegisterSerialWorker.java index 993a8829e..41bbd5836 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/register/InstanceRegisterSerialWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/register/InstanceRegisterSerialWorker.java @@ -23,8 +23,7 @@ import org.skywalking.apm.collector.cache.service.InstanceCacheService; import org.skywalking.apm.collector.core.module.ModuleManager; import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; -import org.skywalking.apm.collector.storage.dao.IInstanceStreamDAO; -import org.skywalking.apm.collector.storage.service.DAOService; +import org.skywalking.apm.collector.storage.dao.IInstanceRegisterDAO; import org.skywalking.apm.collector.storage.table.register.Instance; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorker; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; @@ -40,12 +39,12 @@ public class InstanceRegisterSerialWorker extends AbstractLocalAsyncWorker { - private final DAOService daoService; - public GlobalTracePersistenceWorker(ModuleManager moduleManager) { super(moduleManager); - this.daoService = getModuleManager().find(StorageModule.NAME).getService(DAOService.class); } @Override public int id() { @@ -49,7 +45,7 @@ public class GlobalTracePersistenceWorker extends PersistenceWorker { diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/instance/InstPerformancePersistenceWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/instance/InstPerformancePersistenceWorker.java index 3291a5568..002dc0015 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/instance/InstPerformancePersistenceWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/instance/InstPerformancePersistenceWorker.java @@ -23,7 +23,6 @@ import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; import org.skywalking.apm.collector.storage.dao.IInstPerformancePersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.instance.InstPerformance; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; @@ -33,11 +32,8 @@ import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; */ public class InstPerformancePersistenceWorker extends PersistenceWorker { - private final DAOService daoService; - public InstPerformancePersistenceWorker(ModuleManager moduleManager) { super(moduleManager); - this.daoService = getModuleManager().find(StorageModule.NAME).getService(DAOService.class); } @Override public int id() { @@ -49,7 +45,7 @@ public class InstPerformancePersistenceWorker extends PersistenceWorker { diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/node/NodeComponentPersistenceWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/node/NodeComponentPersistenceWorker.java index c7cb45536..f1f5a0785 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/node/NodeComponentPersistenceWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/node/NodeComponentPersistenceWorker.java @@ -23,7 +23,6 @@ import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; import org.skywalking.apm.collector.storage.dao.INodeComponentPersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.node.NodeComponent; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; @@ -33,11 +32,8 @@ import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; */ public class NodeComponentPersistenceWorker extends PersistenceWorker { - private final DAOService daoService; - public NodeComponentPersistenceWorker(ModuleManager moduleManager) { super(moduleManager); - this.daoService = getModuleManager().find(StorageModule.NAME).getService(DAOService.class); } @Override public int id() { @@ -49,7 +45,7 @@ public class NodeComponentPersistenceWorker extends PersistenceWorker { diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/node/NodeMappingPersistenceWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/node/NodeMappingPersistenceWorker.java index f52e6d5f2..5bf662bdb 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/node/NodeMappingPersistenceWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/node/NodeMappingPersistenceWorker.java @@ -23,7 +23,6 @@ import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; import org.skywalking.apm.collector.storage.dao.INodeMappingPersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.node.NodeMapping; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; @@ -33,11 +32,8 @@ import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; */ public class NodeMappingPersistenceWorker extends PersistenceWorker { - private final DAOService daoService; - public NodeMappingPersistenceWorker(ModuleManager moduleManager) { super(moduleManager); - this.daoService = getModuleManager().find(StorageModule.NAME).getService(DAOService.class); } @Override public int id() { @@ -49,7 +45,7 @@ public class NodeMappingPersistenceWorker extends PersistenceWorker { diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/noderef/NodeReferencePersistenceWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/noderef/NodeReferencePersistenceWorker.java index 7cca8dd5e..f03d8ec1e 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/noderef/NodeReferencePersistenceWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/noderef/NodeReferencePersistenceWorker.java @@ -23,7 +23,6 @@ import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; import org.skywalking.apm.collector.storage.dao.INodeReferencePersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.noderef.NodeReference; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; @@ -33,11 +32,8 @@ import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; */ public class NodeReferencePersistenceWorker extends PersistenceWorker { - private final DAOService daoService; - public NodeReferencePersistenceWorker(ModuleManager moduleManager) { super(moduleManager); - this.daoService = getModuleManager().find(StorageModule.NAME).getService(DAOService.class); } @Override public int id() { @@ -49,7 +45,7 @@ public class NodeReferencePersistenceWorker extends PersistenceWorker { diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/segment/SegmentCostPersistenceWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/segment/SegmentCostPersistenceWorker.java index 7dc0664e4..ec6c4c2ea 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/segment/SegmentCostPersistenceWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/segment/SegmentCostPersistenceWorker.java @@ -23,7 +23,6 @@ import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; import org.skywalking.apm.collector.storage.dao.ISegmentCostPersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.segment.SegmentCost; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; @@ -33,11 +32,8 @@ import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; */ public class SegmentCostPersistenceWorker extends PersistenceWorker { - private final DAOService daoService; - public SegmentCostPersistenceWorker(ModuleManager moduleManager) { super(moduleManager); - this.daoService = getModuleManager().find(StorageModule.NAME).getService(DAOService.class); } @Override public int id() { @@ -49,7 +45,7 @@ public class SegmentCostPersistenceWorker extends PersistenceWorker { diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/segment/SegmentPersistenceWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/segment/SegmentPersistenceWorker.java index c90b1689a..79f70cc53 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/segment/SegmentPersistenceWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/segment/SegmentPersistenceWorker.java @@ -23,7 +23,6 @@ import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; import org.skywalking.apm.collector.storage.dao.ISegmentPersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.segment.Segment; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; @@ -46,8 +45,7 @@ public class SegmentPersistenceWorker extends PersistenceWorker { diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/service/ServiceEntryPersistenceWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/service/ServiceEntryPersistenceWorker.java index 7c45a0494..f40d55b6e 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/service/ServiceEntryPersistenceWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/service/ServiceEntryPersistenceWorker.java @@ -23,7 +23,6 @@ import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; import org.skywalking.apm.collector.storage.dao.IServiceEntryPersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.service.ServiceEntry; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; @@ -33,11 +32,8 @@ import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; */ public class ServiceEntryPersistenceWorker extends PersistenceWorker { - private final DAOService daoService; - public ServiceEntryPersistenceWorker(ModuleManager moduleManager) { super(moduleManager); - this.daoService = getModuleManager().find(StorageModule.NAME).getService(DAOService.class); } @Override public int id() { @@ -49,7 +45,7 @@ public class ServiceEntryPersistenceWorker extends PersistenceWorker { diff --git a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/serviceref/ServiceReferencePersistenceWorker.java b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/serviceref/ServiceReferencePersistenceWorker.java index 1207ab388..13a72965a 100644 --- a/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/serviceref/ServiceReferencePersistenceWorker.java +++ b/apm-collector/apm-collector-agent/collector-agent-stream/src/main/java/org/skywalking/apm/collector/agent/stream/worker/trace/serviceref/ServiceReferencePersistenceWorker.java @@ -23,7 +23,6 @@ import org.skywalking.apm.collector.queue.service.QueueCreatorService; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; import org.skywalking.apm.collector.storage.dao.IServiceReferencePersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.serviceref.ServiceReference; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorkerProvider; import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; @@ -33,11 +32,8 @@ import org.skywalking.apm.collector.stream.worker.impl.PersistenceWorker; */ public class ServiceReferencePersistenceWorker extends PersistenceWorker { - private final DAOService daoService; - public ServiceReferencePersistenceWorker(ModuleManager moduleManager) { super(moduleManager); - this.daoService = getModuleManager().find(StorageModule.NAME).getService(DAOService.class); } @Override public int id() { @@ -49,7 +45,7 @@ public class ServiceReferencePersistenceWorker extends PersistenceWorker { diff --git a/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/ApplicationCacheGuavaService.java b/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/ApplicationCacheGuavaService.java index b980e5f4f..80770f160 100644 --- a/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/ApplicationCacheGuavaService.java +++ b/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/ApplicationCacheGuavaService.java @@ -26,7 +26,6 @@ import org.skywalking.apm.collector.core.util.Const; import org.skywalking.apm.collector.core.util.StringUtils; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.dao.IApplicationCacheDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -39,24 +38,22 @@ public class ApplicationCacheGuavaService implements ApplicationCacheService { private final Cache codeCache = CacheBuilder.newBuilder().initialCapacity(100).maximumSize(1000).build(); - private final DAOService daoService; + private final IApplicationCacheDAO applicationCacheDAO; public ApplicationCacheGuavaService(ModuleManager moduleManager) { - this.daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); + this.applicationCacheDAO = moduleManager.find(StorageModule.NAME).getService(IApplicationCacheDAO.class); } public int get(String applicationCode) { - IApplicationCacheDAO dao = (IApplicationCacheDAO)daoService.get(IApplicationCacheDAO.class); - int applicationId = 0; try { - applicationId = codeCache.get(applicationCode, () -> dao.getApplicationId(applicationCode)); + applicationId = codeCache.get(applicationCode, () -> applicationCacheDAO.getApplicationId(applicationCode)); } catch (Throwable e) { logger.error(e.getMessage(), e); } if (applicationId == 0) { - applicationId = dao.getApplicationId(applicationCode); + applicationId = applicationCacheDAO.getApplicationId(applicationCode); if (applicationId != 0) { codeCache.put(applicationCode, applicationId); } @@ -67,17 +64,15 @@ public class ApplicationCacheGuavaService implements ApplicationCacheService { private final Cache idCache = CacheBuilder.newBuilder().maximumSize(1000).build(); public String get(int applicationId) { - IApplicationCacheDAO dao = (IApplicationCacheDAO)daoService.get(IApplicationCacheDAO.class); - String applicationCode = Const.EMPTY_STRING; try { - applicationCode = idCache.get(applicationId, () -> dao.getApplicationCode(applicationId)); + applicationCode = idCache.get(applicationId, () -> applicationCacheDAO.getApplicationCode(applicationId)); } catch (Throwable e) { logger.error(e.getMessage(), e); } if (StringUtils.isEmpty(applicationCode)) { - applicationCode = dao.getApplicationCode(applicationId); + applicationCode = applicationCacheDAO.getApplicationCode(applicationId); if (StringUtils.isNotEmpty(applicationCode)) { codeCache.put(applicationCode, applicationId); } diff --git a/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/InstanceCacheGuavaService.java b/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/InstanceCacheGuavaService.java index a57e9cf1a..330b3b9a1 100644 --- a/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/InstanceCacheGuavaService.java +++ b/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/InstanceCacheGuavaService.java @@ -25,7 +25,6 @@ import org.skywalking.apm.collector.core.module.ModuleManager; import org.skywalking.apm.collector.core.util.Const; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.dao.IInstanceCacheDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -40,24 +39,23 @@ public class InstanceCacheGuavaService implements InstanceCacheService { private final Cache stringCache = CacheBuilder.newBuilder().initialCapacity(100).maximumSize(5000).build(); - private final DAOService daoService; + private final IInstanceCacheDAO instanceCacheDAO; public InstanceCacheGuavaService(ModuleManager moduleManager) { - this.daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); + this.instanceCacheDAO = moduleManager.find(StorageModule.NAME).getService(IInstanceCacheDAO.class); } public int get(int applicationInstanceId) { - IInstanceCacheDAO dao = (IInstanceCacheDAO)daoService.get(IInstanceCacheDAO.class); int applicationId = 0; try { - applicationId = integerCache.get(applicationInstanceId, () -> dao.getApplicationId(applicationInstanceId)); + applicationId = integerCache.get(applicationInstanceId, () -> instanceCacheDAO.getApplicationId(applicationInstanceId)); } catch (Throwable e) { logger.error(e.getMessage(), e); } if (applicationId == 0) { - applicationId = dao.getApplicationId(applicationInstanceId); + applicationId = instanceCacheDAO.getApplicationId(applicationInstanceId); if (applicationId != 0) { integerCache.put(applicationInstanceId, applicationId); } @@ -66,18 +64,17 @@ public class InstanceCacheGuavaService implements InstanceCacheService { } @Override public int getInstanceId(int applicationId, String agentUUID) { - IInstanceCacheDAO dao = (IInstanceCacheDAO)daoService.get(IInstanceCacheDAO.class); String key = applicationId + Const.ID_SPLIT + agentUUID; int instanceId = 0; try { - instanceId = stringCache.get(key, () -> dao.getInstanceId(applicationId, agentUUID)); + instanceId = stringCache.get(key, () -> instanceCacheDAO.getInstanceId(applicationId, agentUUID)); } catch (Throwable e) { logger.error(e.getMessage(), e); } if (instanceId == 0) { - instanceId = dao.getInstanceId(applicationId, agentUUID); + instanceId = instanceCacheDAO.getInstanceId(applicationId, agentUUID); if (applicationId != 0) { stringCache.put(key, instanceId); } diff --git a/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/ServiceIdCacheGuavaService.java b/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/ServiceIdCacheGuavaService.java index 91815c423..eb59ec750 100644 --- a/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/ServiceIdCacheGuavaService.java +++ b/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/ServiceIdCacheGuavaService.java @@ -25,7 +25,6 @@ import org.skywalking.apm.collector.core.module.ModuleManager; import org.skywalking.apm.collector.core.util.Const; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.dao.IServiceNameCacheDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -38,24 +37,22 @@ public class ServiceIdCacheGuavaService implements ServiceIdCacheService { private final Cache serviceIdCache = CacheBuilder.newBuilder().maximumSize(1000).build(); - private final DAOService daoService; + private final IServiceNameCacheDAO serviceNameCacheDAO; public ServiceIdCacheGuavaService(ModuleManager moduleManager) { - this.daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); + this.serviceNameCacheDAO = moduleManager.find(StorageModule.NAME).getService(IServiceNameCacheDAO.class); } public int get(int applicationId, String serviceName) { - IServiceNameCacheDAO dao = (IServiceNameCacheDAO)daoService.get(IServiceNameCacheDAO.class); - int serviceId = 0; try { - serviceId = serviceIdCache.get(applicationId + Const.ID_SPLIT + serviceName, () -> dao.getServiceId(applicationId, serviceName)); + serviceId = serviceIdCache.get(applicationId + Const.ID_SPLIT + serviceName, () -> serviceNameCacheDAO.getServiceId(applicationId, serviceName)); } catch (Throwable e) { logger.error(e.getMessage(), e); } if (serviceId == 0) { - serviceId = dao.getServiceId(applicationId, serviceName); + serviceId = serviceNameCacheDAO.getServiceId(applicationId, serviceName); if (serviceId != 0) { serviceIdCache.put(applicationId + Const.ID_SPLIT + serviceName, serviceId); } diff --git a/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/ServiceNameCacheGuavaService.java b/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/ServiceNameCacheGuavaService.java index de0596b02..2b235ef9d 100644 --- a/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/ServiceNameCacheGuavaService.java +++ b/apm-collector/apm-collector-cache/collector-cache-guava-provider/src/main/java/org/skywalking/apm/collector/cache/guava/service/ServiceNameCacheGuavaService.java @@ -26,7 +26,6 @@ import org.skywalking.apm.collector.core.util.Const; import org.skywalking.apm.collector.core.util.StringUtils; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.dao.IServiceNameCacheDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -39,24 +38,22 @@ public class ServiceNameCacheGuavaService implements ServiceNameCacheService { private final Cache serviceNameCache = CacheBuilder.newBuilder().maximumSize(10000).build(); - private final DAOService daoService; + private final IServiceNameCacheDAO serviceNameCacheDAO; public ServiceNameCacheGuavaService(ModuleManager moduleManager) { - this.daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); + this.serviceNameCacheDAO = moduleManager.find(StorageModule.NAME).getService(IServiceNameCacheDAO.class); } public String get(int serviceId) { - IServiceNameCacheDAO dao = (IServiceNameCacheDAO)daoService.get(IServiceNameCacheDAO.class); - String serviceName = Const.EMPTY_STRING; try { - serviceName = serviceNameCache.get(serviceId, () -> dao.getServiceName(serviceId)); + serviceName = serviceNameCache.get(serviceId, () -> serviceNameCacheDAO.getServiceName(serviceId)); } catch (Throwable e) { logger.error(e.getMessage(), e); } if (StringUtils.isEmpty(serviceName)) { - serviceName = dao.getServiceName(serviceId); + serviceName = serviceNameCacheDAO.getServiceName(serviceId); if (StringUtils.isNotEmpty(serviceName)) { serviceNameCache.put(serviceId, serviceName); } diff --git a/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/StorageModule.java b/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/StorageModule.java index 944e55344..b5edc0513 100644 --- a/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/StorageModule.java +++ b/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/StorageModule.java @@ -18,9 +18,44 @@ package org.skywalking.apm.collector.storage; +import java.util.ArrayList; +import java.util.List; import org.skywalking.apm.collector.core.module.Module; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.base.dao.IBatchDAO; +import org.skywalking.apm.collector.storage.dao.IApplicationCacheDAO; +import org.skywalking.apm.collector.storage.dao.IApplicationRegisterDAO; +import org.skywalking.apm.collector.storage.dao.ICpuMetricPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.ICpuMetricUIDAO; +import org.skywalking.apm.collector.storage.dao.IGCMetricPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IGCMetricUIDAO; +import org.skywalking.apm.collector.storage.dao.IGlobalTracePersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IGlobalTraceUIDAO; +import org.skywalking.apm.collector.storage.dao.IInstPerformancePersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IInstPerformanceUIDAO; +import org.skywalking.apm.collector.storage.dao.IInstanceCacheDAO; +import org.skywalking.apm.collector.storage.dao.IInstanceHeartBeatPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IInstanceRegisterDAO; +import org.skywalking.apm.collector.storage.dao.IInstanceUIDAO; +import org.skywalking.apm.collector.storage.dao.IMemoryMetricPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IMemoryMetricUIDAO; +import org.skywalking.apm.collector.storage.dao.IMemoryPoolMetricPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IMemoryPoolMetricUIDAO; +import org.skywalking.apm.collector.storage.dao.INodeComponentPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.INodeComponentUIDAO; +import org.skywalking.apm.collector.storage.dao.INodeMappingPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.INodeMappingUIDAO; +import org.skywalking.apm.collector.storage.dao.INodeReferencePersistenceDAO; +import org.skywalking.apm.collector.storage.dao.INodeReferenceUIDAO; +import org.skywalking.apm.collector.storage.dao.ISegmentCostPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.ISegmentCostUIDAO; +import org.skywalking.apm.collector.storage.dao.ISegmentPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.ISegmentUIDAO; +import org.skywalking.apm.collector.storage.dao.IServiceEntryPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IServiceEntryUIDAO; +import org.skywalking.apm.collector.storage.dao.IServiceNameCacheDAO; +import org.skywalking.apm.collector.storage.dao.IServiceNameRegisterDAO; +import org.skywalking.apm.collector.storage.dao.IServiceReferencePersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IServiceReferenceUIDAO; /** * @author peng-yongsheng @@ -34,6 +69,64 @@ public class StorageModule extends Module { } @Override public Class[] services() { - return new Class[] {DAOService.class, IBatchDAO.class}; + List classes = new ArrayList<>(); + classes.add(IBatchDAO.class); + + addCacheDAO(classes); + addRegisterDAO(classes); + addPersistenceDAO(classes); + addUiDAO(classes); + + return classes.toArray(new Class[] {}); + } + + private void addCacheDAO(List classes) { + classes.add(IApplicationCacheDAO.class); + classes.add(IInstanceCacheDAO.class); + classes.add(IServiceNameCacheDAO.class); + } + + private void addRegisterDAO(List classes) { + classes.add(IApplicationRegisterDAO.class); + classes.add(IInstanceRegisterDAO.class); + classes.add(IServiceNameRegisterDAO.class); + } + + private void addPersistenceDAO(List classes) { + classes.add(ICpuMetricPersistenceDAO.class); + classes.add(IGCMetricPersistenceDAO.class); + classes.add(IMemoryMetricPersistenceDAO.class); + classes.add(IMemoryPoolMetricPersistenceDAO.class); + + classes.add(IGlobalTracePersistenceDAO.class); + classes.add(IInstPerformancePersistenceDAO.class); + classes.add(INodeComponentPersistenceDAO.class); + classes.add(INodeMappingPersistenceDAO.class); + classes.add(INodeReferencePersistenceDAO.class); + classes.add(ISegmentCostPersistenceDAO.class); + classes.add(ISegmentPersistenceDAO.class); + classes.add(IServiceEntryPersistenceDAO.class); + classes.add(IServiceReferencePersistenceDAO.class); + + classes.add(IInstanceHeartBeatPersistenceDAO.class); + } + + private void addUiDAO(List classes) { + classes.add(IInstanceUIDAO.class); + + classes.add(ICpuMetricUIDAO.class); + classes.add(IGCMetricUIDAO.class); + classes.add(IMemoryMetricUIDAO.class); + classes.add(IMemoryPoolMetricUIDAO.class); + + classes.add(IGlobalTraceUIDAO.class); + classes.add(IInstPerformanceUIDAO.class); + classes.add(INodeComponentUIDAO.class); + classes.add(INodeMappingUIDAO.class); + classes.add(INodeReferenceUIDAO.class); + classes.add(ISegmentCostUIDAO.class); + classes.add(ISegmentUIDAO.class); + classes.add(IServiceEntryUIDAO.class); + classes.add(IServiceReferenceUIDAO.class); } } diff --git a/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/base/dao/AbstractDAO.java b/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/base/dao/AbstractDAO.java index d3f5997f5..91709082c 100644 --- a/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/base/dao/AbstractDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/base/dao/AbstractDAO.java @@ -24,13 +24,13 @@ import org.skywalking.apm.collector.client.Client; * @author peng-yongsheng */ public abstract class AbstractDAO implements DAO { - private C client; + private final C client; + + public AbstractDAO(C client) { + this.client = client; + } public final C getClient() { return client; } - - public final void setClient(C client) { - this.client = client; - } } diff --git a/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/base/dao/DAOContainer.java b/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/base/dao/DAOContainer.java deleted file mode 100644 index 2559bfb0e..000000000 --- a/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/base/dao/DAOContainer.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright 2017, OpenSkywalking Organization All rights reserved. - * - * Licensed 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. - * - * Project repository: https://github.com/OpenSkywalking/skywalking - */ - -package org.skywalking.apm.collector.storage.base.dao; - -import java.util.HashMap; -import java.util.Map; - -/** - * @author peng-yongsheng - */ -public class DAOContainer { - private Map daoImplMap; - private Map persistenceDaoImpl; - - public DAOContainer() { - daoImplMap = new HashMap<>(); - persistenceDaoImpl = new HashMap<>(); - } - - public void put(String interfaceName, DAO daoImpl) { - if (daoImpl instanceof IPersistenceDAO) { - persistenceDaoImpl.put(interfaceName, (IPersistenceDAO)daoImpl); - } else { - daoImplMap.put(interfaceName, daoImpl); - } - } - - public DAO get(String interfaceName) { - return daoImplMap.get(interfaceName); - } - - public IPersistenceDAO getPersistenceDAO(String interfaceName) { - return persistenceDaoImpl.get(interfaceName); - } -} diff --git a/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IApplicationStreamDAO.java b/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IApplicationRegisterDAO.java similarity index 94% rename from apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IApplicationStreamDAO.java rename to apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IApplicationRegisterDAO.java index 32e3ecff5..819cd97cd 100644 --- a/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IApplicationStreamDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IApplicationRegisterDAO.java @@ -24,7 +24,7 @@ import org.skywalking.apm.collector.storage.table.register.Application; /** * @author peng-yongsheng */ -public interface IApplicationStreamDAO extends DAO { +public interface IApplicationRegisterDAO extends DAO { int getMaxApplicationId(); int getMinApplicationId(); diff --git a/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IInstanceStreamDAO.java b/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IInstanceRegisterDAO.java similarity index 95% rename from apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IInstanceStreamDAO.java rename to apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IInstanceRegisterDAO.java index 83582bc89..94c17bf2d 100644 --- a/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IInstanceStreamDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IInstanceRegisterDAO.java @@ -24,7 +24,7 @@ import org.skywalking.apm.collector.storage.table.register.Instance; /** * @author peng-yongsheng */ -public interface IInstanceStreamDAO extends DAO { +public interface IInstanceRegisterDAO extends DAO { int getMaxInstanceId(); int getMinInstanceId(); diff --git a/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IServiceNameStreamDAO.java b/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IServiceNameRegisterDAO.java similarity index 94% rename from apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IServiceNameStreamDAO.java rename to apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IServiceNameRegisterDAO.java index 34cf77b22..89d7f6537 100644 --- a/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IServiceNameStreamDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/dao/IServiceNameRegisterDAO.java @@ -24,7 +24,7 @@ import org.skywalking.apm.collector.storage.table.register.ServiceName; /** * @author peng-yongsheng */ -public interface IServiceNameStreamDAO extends DAO { +public interface IServiceNameRegisterDAO extends DAO { int getMaxServiceId(); int getMinServiceId(); diff --git a/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/service/DAOService.java b/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/service/DAOService.java deleted file mode 100644 index 2c7105e15..000000000 --- a/apm-collector/apm-collector-storage/collector-storage-define/src/main/java/org/skywalking/apm/collector/storage/service/DAOService.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright 2017, OpenSkywalking Organization All rights reserved. - * - * Licensed 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. - * - * Project repository: https://github.com/OpenSkywalking/skywalking - */ - -package org.skywalking.apm.collector.storage.service; - -import org.skywalking.apm.collector.core.module.Service; -import org.skywalking.apm.collector.storage.base.dao.DAO; -import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; - -/** - * @author peng-yongsheng - */ -public interface DAOService extends Service { - DAO get(Class daoInterfaceClass); - - IPersistenceDAO getPersistenceDAO(Class daoInterfaceClass); -} diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/StorageModuleEsProvider.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/StorageModuleEsProvider.java index 404b4187a..e483df335 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/StorageModuleEsProvider.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/StorageModuleEsProvider.java @@ -18,24 +18,81 @@ package org.skywalking.apm.collector.storage.es; -import java.util.List; import java.util.Properties; import org.skywalking.apm.collector.client.ClientException; import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; -import org.skywalking.apm.collector.core.define.DefineException; import org.skywalking.apm.collector.core.module.Module; import org.skywalking.apm.collector.core.module.ModuleProvider; import org.skywalking.apm.collector.core.module.ServiceNotProvidedException; import org.skywalking.apm.collector.storage.StorageException; import org.skywalking.apm.collector.storage.StorageModule; -import org.skywalking.apm.collector.storage.base.dao.DAOContainer; import org.skywalking.apm.collector.storage.base.dao.IBatchDAO; +import org.skywalking.apm.collector.storage.dao.IApplicationCacheDAO; +import org.skywalking.apm.collector.storage.dao.IApplicationRegisterDAO; +import org.skywalking.apm.collector.storage.dao.ICpuMetricPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.ICpuMetricUIDAO; +import org.skywalking.apm.collector.storage.dao.IGCMetricPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IGCMetricUIDAO; +import org.skywalking.apm.collector.storage.dao.IGlobalTracePersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IGlobalTraceUIDAO; +import org.skywalking.apm.collector.storage.dao.IInstPerformancePersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IInstPerformanceUIDAO; +import org.skywalking.apm.collector.storage.dao.IInstanceCacheDAO; +import org.skywalking.apm.collector.storage.dao.IInstanceHeartBeatPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IInstanceRegisterDAO; +import org.skywalking.apm.collector.storage.dao.IInstanceUIDAO; +import org.skywalking.apm.collector.storage.dao.IMemoryMetricPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IMemoryMetricUIDAO; +import org.skywalking.apm.collector.storage.dao.IMemoryPoolMetricPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.INodeComponentPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.INodeComponentUIDAO; +import org.skywalking.apm.collector.storage.dao.INodeMappingPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.INodeMappingUIDAO; +import org.skywalking.apm.collector.storage.dao.INodeReferencePersistenceDAO; +import org.skywalking.apm.collector.storage.dao.INodeReferenceUIDAO; +import org.skywalking.apm.collector.storage.dao.ISegmentCostPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.ISegmentCostUIDAO; +import org.skywalking.apm.collector.storage.dao.ISegmentPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.ISegmentUIDAO; +import org.skywalking.apm.collector.storage.dao.IServiceEntryPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IServiceEntryUIDAO; +import org.skywalking.apm.collector.storage.dao.IServiceNameCacheDAO; +import org.skywalking.apm.collector.storage.dao.IServiceNameRegisterDAO; +import org.skywalking.apm.collector.storage.dao.IServiceReferencePersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.BatchEsDAO; -import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; -import org.skywalking.apm.collector.storage.es.base.dao.EsDAODefineLoader; import org.skywalking.apm.collector.storage.es.base.define.ElasticSearchStorageInstaller; -import org.skywalking.apm.collector.storage.es.service.ElasticSearchDAOService; -import org.skywalking.apm.collector.storage.service.DAOService; +import org.skywalking.apm.collector.storage.es.dao.ApplicationEsCacheDAO; +import org.skywalking.apm.collector.storage.es.dao.ApplicationEsRegisterDAO; +import org.skywalking.apm.collector.storage.es.dao.CpuMetricEsPersistenceDAO; +import org.skywalking.apm.collector.storage.es.dao.CpuMetricEsUIDAO; +import org.skywalking.apm.collector.storage.es.dao.GCMetricEsPersistenceDAO; +import org.skywalking.apm.collector.storage.es.dao.GCMetricEsUIDAO; +import org.skywalking.apm.collector.storage.es.dao.GlobalTraceEsPersistenceDAO; +import org.skywalking.apm.collector.storage.es.dao.GlobalTraceEsUIDAO; +import org.skywalking.apm.collector.storage.es.dao.InstPerformanceEsPersistenceDAO; +import org.skywalking.apm.collector.storage.es.dao.InstPerformanceEsUIDAO; +import org.skywalking.apm.collector.storage.es.dao.InstanceEsCacheDAO; +import org.skywalking.apm.collector.storage.es.dao.InstanceEsRegisterDAO; +import org.skywalking.apm.collector.storage.es.dao.InstanceEsUIDAO; +import org.skywalking.apm.collector.storage.es.dao.InstanceHeartBeatEsPersistenceDAO; +import org.skywalking.apm.collector.storage.es.dao.MemoryMetricEsPersistenceDAO; +import org.skywalking.apm.collector.storage.es.dao.MemoryMetricEsUIDAO; +import org.skywalking.apm.collector.storage.es.dao.MemoryPoolMetricEsPersistenceDAO; +import org.skywalking.apm.collector.storage.es.dao.NodeComponentEsPersistenceDAO; +import org.skywalking.apm.collector.storage.es.dao.NodeComponentEsUIDAO; +import org.skywalking.apm.collector.storage.es.dao.NodeMappingEsPersistenceDAO; +import org.skywalking.apm.collector.storage.es.dao.NodeMappingEsUIDAO; +import org.skywalking.apm.collector.storage.es.dao.NodeReferenceEsPersistenceDAO; +import org.skywalking.apm.collector.storage.es.dao.NodeReferenceEsUIDAO; +import org.skywalking.apm.collector.storage.es.dao.SegmentCostEsPersistenceDAO; +import org.skywalking.apm.collector.storage.es.dao.SegmentCostEsUIDAO; +import org.skywalking.apm.collector.storage.es.dao.SegmentEsPersistenceDAO; +import org.skywalking.apm.collector.storage.es.dao.SegmentEsUIDAO; +import org.skywalking.apm.collector.storage.es.dao.ServiceEntryEsPersistenceDAO; +import org.skywalking.apm.collector.storage.es.dao.ServiceEntryEsUIDAO; +import org.skywalking.apm.collector.storage.es.dao.ServiceNameEsCacheDAO; +import org.skywalking.apm.collector.storage.es.dao.ServiceNameEsRegisterDAO; +import org.skywalking.apm.collector.storage.es.dao.ServiceReferenceEsPersistenceDAO; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -52,13 +109,8 @@ public class StorageModuleEsProvider extends ModuleProvider { private static final String INDEX_SHARDS_NUMBER = "index_shards_number"; private static final String INDEX_REPLICAS_NUMBER = "index_replicas_number"; - private final DAOContainer daoContainer; private ElasticSearchClient elasticSearchClient; - public StorageModuleEsProvider() { - this.daoContainer = new DAOContainer(); - } - @Override public String name() { return "elasticsearch"; } @@ -73,11 +125,11 @@ public class StorageModuleEsProvider extends ModuleProvider { String clusterNodes = config.getProperty(CLUSTER_NODES); elasticSearchClient = new ElasticSearchClient(clusterName, clusterTransportSniffer, clusterNodes); - this.registerServiceImplementation(DAOService.class, new ElasticSearchDAOService(daoContainer)); - - BatchEsDAO batchEsDAO = new BatchEsDAO(); - batchEsDAO.setClient(elasticSearchClient); - this.registerServiceImplementation(IBatchDAO.class, batchEsDAO); + this.registerServiceImplementation(IBatchDAO.class, new BatchEsDAO(elasticSearchClient)); + registerCacheDAO(); + registerRegisterDAO(); + registerPersistenceDAO(); + registerUiDAO(); } @Override public void start(Properties config) throws ServiceNotProvidedException { @@ -86,17 +138,9 @@ public class StorageModuleEsProvider extends ModuleProvider { try { elasticSearchClient.initialize(); - EsDAODefineLoader loader = new EsDAODefineLoader(); - List esDAOs = loader.load(); - esDAOs.forEach(esDAO -> { - esDAO.setClient(elasticSearchClient); - String interFaceName = esDAO.getClass().getInterfaces()[0].getName(); - daoContainer.put(interFaceName, esDAO); - }); - ElasticSearchStorageInstaller installer = new ElasticSearchStorageInstaller(indexShardsNumber, indexReplicasNumber); installer.install(elasticSearchClient); - } catch (ClientException | DefineException | StorageException e) { + } catch (ClientException | StorageException e) { logger.error(e.getMessage(), e); } } @@ -108,4 +152,54 @@ public class StorageModuleEsProvider extends ModuleProvider { @Override public String[] requiredModules() { return new String[0]; } + + private void registerCacheDAO() throws ServiceNotProvidedException { + this.registerServiceImplementation(IApplicationCacheDAO.class, new ApplicationEsCacheDAO(elasticSearchClient)); + this.registerServiceImplementation(IInstanceCacheDAO.class, new InstanceEsCacheDAO(elasticSearchClient)); + this.registerServiceImplementation(IServiceNameCacheDAO.class, new ServiceNameEsCacheDAO(elasticSearchClient)); + } + + private void registerRegisterDAO() throws ServiceNotProvidedException { + this.registerServiceImplementation(IApplicationRegisterDAO.class, new ApplicationEsRegisterDAO(elasticSearchClient)); + this.registerServiceImplementation(IInstanceRegisterDAO.class, new InstanceEsRegisterDAO(elasticSearchClient)); + this.registerServiceImplementation(IServiceNameRegisterDAO.class, new ServiceNameEsRegisterDAO(elasticSearchClient)); + } + + private void registerPersistenceDAO() throws ServiceNotProvidedException { + this.registerServiceImplementation(ICpuMetricPersistenceDAO.class, new CpuMetricEsPersistenceDAO(elasticSearchClient)); + this.registerServiceImplementation(IGCMetricPersistenceDAO.class, new GCMetricEsPersistenceDAO(elasticSearchClient)); + this.registerServiceImplementation(IMemoryMetricPersistenceDAO.class, new MemoryMetricEsPersistenceDAO(elasticSearchClient)); + this.registerServiceImplementation(IMemoryPoolMetricPersistenceDAO.class, new MemoryPoolMetricEsPersistenceDAO(elasticSearchClient)); + + this.registerServiceImplementation(IGlobalTracePersistenceDAO.class, new GlobalTraceEsPersistenceDAO(elasticSearchClient)); + this.registerServiceImplementation(IInstPerformancePersistenceDAO.class, new InstPerformanceEsPersistenceDAO(elasticSearchClient)); + this.registerServiceImplementation(INodeComponentPersistenceDAO.class, new NodeComponentEsPersistenceDAO(elasticSearchClient)); + this.registerServiceImplementation(INodeMappingPersistenceDAO.class, new NodeMappingEsPersistenceDAO(elasticSearchClient)); + this.registerServiceImplementation(INodeReferencePersistenceDAO.class, new NodeReferenceEsPersistenceDAO(elasticSearchClient)); + this.registerServiceImplementation(ISegmentCostPersistenceDAO.class, new SegmentCostEsPersistenceDAO(elasticSearchClient)); + this.registerServiceImplementation(ISegmentPersistenceDAO.class, new SegmentEsPersistenceDAO(elasticSearchClient)); + this.registerServiceImplementation(IServiceEntryPersistenceDAO.class, new ServiceEntryEsPersistenceDAO(elasticSearchClient)); + this.registerServiceImplementation(IServiceReferencePersistenceDAO.class, new ServiceReferenceEsPersistenceDAO(elasticSearchClient)); + + this.registerServiceImplementation(IInstanceHeartBeatPersistenceDAO.class, new InstanceHeartBeatEsPersistenceDAO(elasticSearchClient)); + } + + private void registerUiDAO() throws ServiceNotProvidedException { + this.registerServiceImplementation(IInstanceUIDAO.class, new InstanceEsUIDAO(elasticSearchClient)); + + this.registerServiceImplementation(ICpuMetricUIDAO.class, new CpuMetricEsUIDAO(elasticSearchClient)); + this.registerServiceImplementation(IGCMetricUIDAO.class, new GCMetricEsUIDAO(elasticSearchClient)); + this.registerServiceImplementation(IMemoryMetricUIDAO.class, new MemoryMetricEsUIDAO(elasticSearchClient)); +// this.registerServiceImplementation(IMemoryPoolMetricUIDAO.class, new MemoryPoolMetricEsUIDAO(elasticSearchClient)); + + this.registerServiceImplementation(IGlobalTraceUIDAO.class, new GlobalTraceEsUIDAO(elasticSearchClient)); + this.registerServiceImplementation(IInstPerformanceUIDAO.class, new InstPerformanceEsUIDAO(elasticSearchClient)); + this.registerServiceImplementation(INodeComponentUIDAO.class, new NodeComponentEsUIDAO(elasticSearchClient)); + this.registerServiceImplementation(INodeMappingUIDAO.class, new NodeMappingEsUIDAO(elasticSearchClient)); + this.registerServiceImplementation(INodeReferenceUIDAO.class, new NodeReferenceEsUIDAO(elasticSearchClient)); + this.registerServiceImplementation(ISegmentCostUIDAO.class, new SegmentCostEsUIDAO(elasticSearchClient)); + this.registerServiceImplementation(ISegmentUIDAO.class, new SegmentEsUIDAO(elasticSearchClient)); + this.registerServiceImplementation(IServiceEntryUIDAO.class, new ServiceEntryEsUIDAO(elasticSearchClient)); +// this.registerServiceImplementation(IServiceReferenceUIDAO.class, new ServiceReferenceEsUIDAO(elasticSearchClient)); + } } diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/BatchEsDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/BatchEsDAO.java index 4c261c31a..96fd2c325 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/BatchEsDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/BatchEsDAO.java @@ -23,6 +23,7 @@ import org.elasticsearch.action.bulk.BulkRequestBuilder; import org.elasticsearch.action.bulk.BulkResponse; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.util.CollectionUtils; import org.skywalking.apm.collector.storage.base.dao.IBatchDAO; import org.slf4j.Logger; @@ -35,6 +36,10 @@ public class BatchEsDAO extends EsDAO implements IBatchDAO { private final Logger logger = LoggerFactory.getLogger(BatchEsDAO.class); + public BatchEsDAO(ElasticSearchClient client) { + super(client); + } + @Override public void batchPersistence(List batchCollection) { BulkRequestBuilder bulkRequest = getClient().prepareBulk(); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/EsDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/EsDAO.java index 8c69febc5..abcf1a75c 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/EsDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/EsDAO.java @@ -33,6 +33,10 @@ import org.skywalking.apm.collector.storage.base.dao.AbstractDAO; */ public abstract class EsDAO extends AbstractDAO { + public EsDAO(ElasticSearchClient client) { + super(client); + } + public final int getMaxId(String indexName, String columnName) { ElasticSearchClient client = getClient(); SearchRequestBuilder searchRequestBuilder = client.prepareSearch(indexName); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/EsDAODefineLoader.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/EsDAODefineLoader.java deleted file mode 100644 index 08a997619..000000000 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/EsDAODefineLoader.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright 2017, OpenSkywalking Organization All rights reserved. - * - * Licensed 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. - * - * Project repository: https://github.com/OpenSkywalking/skywalking - */ - -package org.skywalking.apm.collector.storage.es.base.dao; - -import java.util.ArrayList; -import java.util.List; -import org.skywalking.apm.collector.core.define.DefineException; -import org.skywalking.apm.collector.core.define.DefinitionLoader; -import org.skywalking.apm.collector.core.define.Loader; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * @author peng-yongsheng - */ -public class EsDAODefineLoader implements Loader> { - - private final Logger logger = LoggerFactory.getLogger(EsDAODefineLoader.class); - - @Override public List load() throws DefineException { - List esDAOs = new ArrayList<>(); - - EsDAODefinitionFile definitionFile = new EsDAODefinitionFile(); - logger.info("elasticsearch dao definition file name: {}", definitionFile.fileName()); - DefinitionLoader definitionLoader = DefinitionLoader.load(EsDAO.class, definitionFile); - for (EsDAO dao : definitionLoader) { - logger.info("loaded elasticsearch dao definition class: {}", dao.getClass().getName()); - esDAOs.add(dao); - } - return esDAOs; - } -} diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/EsDAODefinitionFile.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/EsDAODefinitionFile.java deleted file mode 100644 index ecb703eab..000000000 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/base/dao/EsDAODefinitionFile.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright 2017, OpenSkywalking Organization All rights reserved. - * - * Licensed 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. - * - * Project repository: https://github.com/OpenSkywalking/skywalking - */ - -package org.skywalking.apm.collector.storage.es.base.dao; - -import org.skywalking.apm.collector.core.define.DefinitionFile; - -/** - * @author peng-yongsheng - */ -public class EsDAODefinitionFile extends DefinitionFile { - - @Override protected String fileName() { - return "es_dao.define"; - } -} diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ApplicationEsCacheDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ApplicationEsCacheDAO.java index 2710c4e14..77d886472 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ApplicationEsCacheDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ApplicationEsCacheDAO.java @@ -40,6 +40,10 @@ public class ApplicationEsCacheDAO extends EsDAO implements IApplicationCacheDAO private final Logger logger = LoggerFactory.getLogger(ApplicationEsCacheDAO.class); + public ApplicationEsCacheDAO(ElasticSearchClient client) { + super(client); + } + @Override public int getApplicationId(String applicationCode) { ElasticSearchClient client = getClient(); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ApplicationEsStreamDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ApplicationEsRegisterDAO.java similarity index 89% rename from apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ApplicationEsStreamDAO.java rename to apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ApplicationEsRegisterDAO.java index de7db0ca1..d544dbf3d 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ApplicationEsStreamDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ApplicationEsRegisterDAO.java @@ -23,7 +23,7 @@ import java.util.Map; import org.elasticsearch.action.index.IndexResponse; import org.elasticsearch.action.support.WriteRequest; import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; -import org.skywalking.apm.collector.storage.dao.IApplicationStreamDAO; +import org.skywalking.apm.collector.storage.dao.IApplicationRegisterDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.register.Application; import org.skywalking.apm.collector.storage.table.register.ApplicationTable; @@ -33,9 +33,13 @@ import org.slf4j.LoggerFactory; /** * @author peng-yongsheng */ -public class ApplicationEsStreamDAO extends EsDAO implements IApplicationStreamDAO { +public class ApplicationEsRegisterDAO extends EsDAO implements IApplicationRegisterDAO { - private final Logger logger = LoggerFactory.getLogger(ApplicationEsStreamDAO.class); + private final Logger logger = LoggerFactory.getLogger(ApplicationEsRegisterDAO.class); + + public ApplicationEsRegisterDAO(ElasticSearchClient client) { + super(client); + } @Override public int getMaxApplicationId() { return getMaxId(ApplicationTable.TABLE, ApplicationTable.COLUMN_APPLICATION_ID); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/CpuMetricEsPersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/CpuMetricEsPersistenceDAO.java index 541134f1d..18b43116f 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/CpuMetricEsPersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/CpuMetricEsPersistenceDAO.java @@ -22,6 +22,7 @@ import java.util.HashMap; import java.util.Map; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.storage.dao.ICpuMetricPersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.jvm.CpuMetric; @@ -36,6 +37,10 @@ public class CpuMetricEsPersistenceDAO extends EsDAO implements ICpuMetricPersis private final Logger logger = LoggerFactory.getLogger(CpuMetricEsPersistenceDAO.class); + public CpuMetricEsPersistenceDAO(ElasticSearchClient client) { + super(client); + } + @Override public CpuMetric get(String id) { return null; } diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/CpuMetricEsUIDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/CpuMetricEsUIDAO.java index 3dbd0f7f6..5839090c0 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/CpuMetricEsUIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/CpuMetricEsUIDAO.java @@ -23,6 +23,7 @@ import org.elasticsearch.action.get.GetResponse; import org.elasticsearch.action.get.MultiGetItemResponse; import org.elasticsearch.action.get.MultiGetRequestBuilder; import org.elasticsearch.action.get.MultiGetResponse; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.util.Const; import org.skywalking.apm.collector.core.util.TimeBucketUtils; import org.skywalking.apm.collector.storage.dao.ICpuMetricUIDAO; @@ -34,6 +35,10 @@ import org.skywalking.apm.collector.storage.table.jvm.CpuMetricTable; */ public class CpuMetricEsUIDAO extends EsDAO implements ICpuMetricUIDAO { + public CpuMetricEsUIDAO(ElasticSearchClient client) { + super(client); + } + @Override public int getMetric(int instanceId, long timeBucket) { String id = timeBucket + Const.ID_SPLIT + instanceId; GetResponse getResponse = getClient().prepareGet(CpuMetricTable.TABLE, id).get(); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GCMetricEsPersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GCMetricEsPersistenceDAO.java index f7340b026..643480bd3 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GCMetricEsPersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GCMetricEsPersistenceDAO.java @@ -22,6 +22,7 @@ import java.util.HashMap; import java.util.Map; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.storage.dao.IGCMetricPersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.jvm.GCMetric; @@ -32,6 +33,10 @@ import org.skywalking.apm.collector.storage.table.jvm.GCMetricTable; */ public class GCMetricEsPersistenceDAO extends EsDAO implements IGCMetricPersistenceDAO { + public GCMetricEsPersistenceDAO(ElasticSearchClient client) { + super(client); + } + @Override public GCMetric get(String id) { return null; } diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GCMetricEsUIDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GCMetricEsUIDAO.java index 967318664..250bf5251 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GCMetricEsUIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GCMetricEsUIDAO.java @@ -32,6 +32,7 @@ import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.search.aggregations.AggregationBuilders; import org.elasticsearch.search.aggregations.bucket.terms.Terms; import org.elasticsearch.search.aggregations.metrics.sum.Sum; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.util.Const; import org.skywalking.apm.collector.core.util.TimeBucketUtils; import org.skywalking.apm.collector.storage.dao.IGCMetricUIDAO; @@ -48,6 +49,10 @@ public class GCMetricEsUIDAO extends EsDAO implements IGCMetricUIDAO { private final Logger logger = LoggerFactory.getLogger(GCMetricEsUIDAO.class); + public GCMetricEsUIDAO(ElasticSearchClient client) { + super(client); + } + @Override public GCCount getGCCount(long[] timeBuckets, int instanceId) { logger.debug("get gc count, timeBuckets: {}, instanceId: {}", timeBuckets, instanceId); SearchRequestBuilder searchRequestBuilder = getClient().prepareSearch(GCMetricTable.TABLE); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GlobalTraceEsPersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GlobalTraceEsPersistenceDAO.java index dec87d084..27c4aa3bb 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GlobalTraceEsPersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GlobalTraceEsPersistenceDAO.java @@ -22,6 +22,7 @@ import java.util.HashMap; import java.util.Map; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.UnexpectedException; import org.skywalking.apm.collector.storage.dao.IGlobalTracePersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; @@ -37,6 +38,10 @@ public class GlobalTraceEsPersistenceDAO extends EsDAO implements IGlobalTracePe private final Logger logger = LoggerFactory.getLogger(GlobalTraceEsPersistenceDAO.class); + public GlobalTraceEsPersistenceDAO(ElasticSearchClient client) { + super(client); + } + @Override public GlobalTrace get(String id) { throw new UnexpectedException("There is no need to merge stream data with database data."); } diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GlobalTraceEsUIDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GlobalTraceEsUIDAO.java index 7d7843ca5..e6a2b9698 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GlobalTraceEsUIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/GlobalTraceEsUIDAO.java @@ -25,6 +25,7 @@ import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.action.search.SearchType; import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.search.SearchHit; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.storage.dao.IGlobalTraceUIDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.global.GlobalTraceTable; @@ -38,6 +39,10 @@ public class GlobalTraceEsUIDAO extends EsDAO implements IGlobalTraceUIDAO { private final Logger logger = LoggerFactory.getLogger(GlobalTraceEsUIDAO.class); + public GlobalTraceEsUIDAO(ElasticSearchClient client) { + super(client); + } + @Override public List getGlobalTraceId(String segmentId) { SearchRequestBuilder searchRequestBuilder = getClient().prepareSearch(GlobalTraceTable.TABLE); searchRequestBuilder.setTypes(GlobalTraceTable.TABLE_TYPE); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstPerformanceEsPersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstPerformanceEsPersistenceDAO.java index bfd197772..59aa39a69 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstPerformanceEsPersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstPerformanceEsPersistenceDAO.java @@ -23,6 +23,7 @@ import java.util.Map; import org.elasticsearch.action.get.GetResponse; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.storage.dao.IInstPerformancePersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.instance.InstPerformance; @@ -37,6 +38,10 @@ public class InstPerformanceEsPersistenceDAO extends EsDAO implements IInstPerfo private final Logger logger = LoggerFactory.getLogger(InstPerformanceEsPersistenceDAO.class); + public InstPerformanceEsPersistenceDAO(ElasticSearchClient client) { + super(client); + } + @Override public InstPerformance get(String id) { GetResponse getResponse = getClient().prepareGet(InstPerformanceTable.TABLE, id).get(); if (getResponse.isExists()) { diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstPerformanceEsUIDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstPerformanceEsUIDAO.java index 60f24970a..aa6499386 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstPerformanceEsUIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstPerformanceEsUIDAO.java @@ -31,6 +31,7 @@ import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.search.aggregations.AggregationBuilders; import org.elasticsearch.search.aggregations.metrics.sum.Sum; import org.elasticsearch.search.sort.SortOrder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.util.Const; import org.skywalking.apm.collector.core.util.TimeBucketUtils; import org.skywalking.apm.collector.storage.dao.IInstPerformanceUIDAO; @@ -42,6 +43,10 @@ import org.skywalking.apm.collector.storage.table.instance.InstPerformanceTable; */ public class InstPerformanceEsUIDAO extends EsDAO implements IInstPerformanceUIDAO { + public InstPerformanceEsUIDAO(ElasticSearchClient client) { + super(client); + } + @Override public InstPerformance get(long[] timeBuckets, int instanceId) { SearchRequestBuilder searchRequestBuilder = getClient().prepareSearch(InstPerformanceTable.TABLE); searchRequestBuilder.setTypes(InstPerformanceTable.TABLE_TYPE); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceEsCacheDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceEsCacheDAO.java index 64252df14..ac32c56a7 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceEsCacheDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceEsCacheDAO.java @@ -39,6 +39,10 @@ public class InstanceEsCacheDAO extends EsDAO implements IInstanceCacheDAO { private final Logger logger = LoggerFactory.getLogger(InstanceEsCacheDAO.class); + public InstanceEsCacheDAO(ElasticSearchClient client) { + super(client); + } + @Override public int getApplicationId(int instanceId) { GetResponse response = getClient().prepareGet(InstanceTable.TABLE, String.valueOf(instanceId)).get(); if (response.isExists()) { diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceEsStreamDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceEsRegisterDAO.java similarity index 92% rename from apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceEsStreamDAO.java rename to apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceEsRegisterDAO.java index 758a15693..03ff9d41d 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceEsStreamDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceEsRegisterDAO.java @@ -24,7 +24,7 @@ import org.elasticsearch.action.index.IndexResponse; import org.elasticsearch.action.support.WriteRequest; import org.elasticsearch.action.update.UpdateRequest; import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; -import org.skywalking.apm.collector.storage.dao.IInstanceStreamDAO; +import org.skywalking.apm.collector.storage.dao.IInstanceRegisterDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.register.Instance; import org.skywalking.apm.collector.storage.table.register.InstanceTable; @@ -34,9 +34,13 @@ import org.slf4j.LoggerFactory; /** * @author peng-yongsheng */ -public class InstanceEsStreamDAO extends EsDAO implements IInstanceStreamDAO { +public class InstanceEsRegisterDAO extends EsDAO implements IInstanceRegisterDAO { - private final Logger logger = LoggerFactory.getLogger(InstanceEsStreamDAO.class); + private final Logger logger = LoggerFactory.getLogger(InstanceEsRegisterDAO.class); + + public InstanceEsRegisterDAO(ElasticSearchClient client) { + super(client); + } @Override public int getMaxInstanceId() { return getMaxId(InstanceTable.TABLE, InstanceTable.COLUMN_INSTANCE_ID); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceEsUIDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceEsUIDAO.java index ab1fd2647..9405a540d 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceEsUIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceEsUIDAO.java @@ -37,6 +37,7 @@ import org.elasticsearch.search.aggregations.bucket.terms.Terms; import org.elasticsearch.search.aggregations.metrics.valuecount.ValueCount; import org.elasticsearch.search.sort.SortBuilders; import org.elasticsearch.search.sort.SortMode; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.util.TimeBucketUtils; import org.skywalking.apm.collector.storage.dao.IInstanceUIDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; @@ -52,6 +53,10 @@ public class InstanceEsUIDAO extends EsDAO implements IInstanceUIDAO { private final Logger logger = LoggerFactory.getLogger(InstanceEsUIDAO.class); + public InstanceEsUIDAO(ElasticSearchClient client) { + super(client); + } + @Override public Long lastHeartBeatTime() { long fiveMinuteBefore = System.currentTimeMillis() - 5 * 60 * 1000; fiveMinuteBefore = TimeBucketUtils.INSTANCE.getSecondTimeBucket(fiveMinuteBefore); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceHeartBeatEsPersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceHeartBeatEsPersistenceDAO.java index 92cd21c43..1cd0756c3 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceHeartBeatEsPersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/InstanceHeartBeatEsPersistenceDAO.java @@ -23,6 +23,7 @@ import java.util.Map; import org.elasticsearch.action.get.GetResponse; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.UnexpectedException; import org.skywalking.apm.collector.storage.dao.IInstanceHeartBeatPersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; @@ -38,6 +39,10 @@ public class InstanceHeartBeatEsPersistenceDAO extends EsDAO implements IInstanc private final Logger logger = LoggerFactory.getLogger(InstanceHeartBeatEsPersistenceDAO.class); + public InstanceHeartBeatEsPersistenceDAO(ElasticSearchClient client) { + super(client); + } + @Override public Instance get(String id) { GetResponse getResponse = getClient().prepareGet(InstanceTable.TABLE, id).get(); if (getResponse.isExists()) { diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/MemoryMetricEsPersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/MemoryMetricEsPersistenceDAO.java index fa5050a60..9e81860f9 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/MemoryMetricEsPersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/MemoryMetricEsPersistenceDAO.java @@ -22,6 +22,7 @@ import java.util.HashMap; import java.util.Map; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.storage.dao.IMemoryMetricPersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.jvm.MemoryMetric; @@ -32,6 +33,10 @@ import org.skywalking.apm.collector.storage.table.jvm.MemoryMetricTable; */ public class MemoryMetricEsPersistenceDAO extends EsDAO implements IMemoryMetricPersistenceDAO { + public MemoryMetricEsPersistenceDAO(ElasticSearchClient client) { + super(client); + } + @Override public MemoryMetric get(String id) { return null; } diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/MemoryMetricEsUIDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/MemoryMetricEsUIDAO.java index e9b6e88ba..cb8d9b1fc 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/MemoryMetricEsUIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/MemoryMetricEsUIDAO.java @@ -24,6 +24,7 @@ import org.elasticsearch.action.get.GetResponse; import org.elasticsearch.action.get.MultiGetItemResponse; import org.elasticsearch.action.get.MultiGetRequestBuilder; import org.elasticsearch.action.get.MultiGetResponse; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.util.Const; import org.skywalking.apm.collector.core.util.TimeBucketUtils; import org.skywalking.apm.collector.storage.dao.IMemoryMetricUIDAO; @@ -35,6 +36,10 @@ import org.skywalking.apm.collector.storage.table.jvm.MemoryMetricTable; */ public class MemoryMetricEsUIDAO extends EsDAO implements IMemoryMetricUIDAO { + public MemoryMetricEsUIDAO(ElasticSearchClient client) { + super(client); + } + @Override public JsonObject getMetric(int instanceId, long timeBucket, boolean isHeap) { String id = timeBucket + Const.ID_SPLIT + instanceId + Const.ID_SPLIT + isHeap; GetResponse getResponse = getClient().prepareGet(MemoryMetricTable.TABLE, id).get(); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/MemoryPoolMetricEsPersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/MemoryPoolMetricEsPersistenceDAO.java index 48b70700c..aae64b469 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/MemoryPoolMetricEsPersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/MemoryPoolMetricEsPersistenceDAO.java @@ -22,6 +22,7 @@ import java.util.HashMap; import java.util.Map; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.storage.dao.IMemoryPoolMetricPersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.jvm.MemoryPoolMetric; @@ -32,6 +33,10 @@ import org.skywalking.apm.collector.storage.table.jvm.MemoryPoolMetricTable; */ public class MemoryPoolMetricEsPersistenceDAO extends EsDAO implements IMemoryPoolMetricPersistenceDAO { + public MemoryPoolMetricEsPersistenceDAO(ElasticSearchClient client) { + super(client); + } + @Override public MemoryPoolMetric get(String id) { return null; } diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeComponentEsPersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeComponentEsPersistenceDAO.java index af6d4d62c..737092822 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeComponentEsPersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeComponentEsPersistenceDAO.java @@ -23,6 +23,7 @@ import java.util.Map; import org.elasticsearch.action.get.GetResponse; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.storage.dao.INodeComponentPersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.node.NodeComponent; @@ -33,6 +34,10 @@ import org.skywalking.apm.collector.storage.table.node.NodeComponentTable; */ public class NodeComponentEsPersistenceDAO extends EsDAO implements INodeComponentPersistenceDAO { + public NodeComponentEsPersistenceDAO(ElasticSearchClient client) { + super(client); + } + @Override public NodeComponent get(String id) { GetResponse getResponse = getClient().prepareGet(NodeComponentTable.TABLE, id).get(); if (getResponse.isExists()) { diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeComponentEsUIDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeComponentEsUIDAO.java index 820c916ef..9a14fe0c5 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeComponentEsUIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeComponentEsUIDAO.java @@ -26,6 +26,7 @@ import org.elasticsearch.action.search.SearchType; import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.search.aggregations.AggregationBuilders; import org.elasticsearch.search.aggregations.bucket.terms.Terms; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.util.StringUtils; import org.skywalking.apm.collector.storage.dao.INodeComponentUIDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; @@ -41,6 +42,10 @@ public class NodeComponentEsUIDAO extends EsDAO implements INodeComponentUIDAO { private final Logger logger = LoggerFactory.getLogger(NodeComponentEsPersistenceDAO.class); + public NodeComponentEsUIDAO(ElasticSearchClient client) { + super(client); + } + @Override public JsonArray load(long startTime, long endTime) { logger.debug("node component load, start time: {}, end time: {}", startTime, endTime); JsonArray nodeComponentArray = new JsonArray(); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeMappingEsPersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeMappingEsPersistenceDAO.java index 5a22ac0d8..8d7e4ebdf 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeMappingEsPersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeMappingEsPersistenceDAO.java @@ -23,6 +23,7 @@ import java.util.Map; import org.elasticsearch.action.get.GetResponse; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.storage.dao.INodeMappingPersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.node.NodeMapping; @@ -33,6 +34,10 @@ import org.skywalking.apm.collector.storage.table.node.NodeMappingTable; */ public class NodeMappingEsPersistenceDAO extends EsDAO implements INodeMappingPersistenceDAO { + public NodeMappingEsPersistenceDAO(ElasticSearchClient client) { + super(client); + } + @Override public NodeMapping get(String id) { GetResponse getResponse = getClient().prepareGet(NodeMappingTable.TABLE, id).get(); if (getResponse.isExists()) { diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeMappingEsUIDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeMappingEsUIDAO.java index 0f2900f7d..5951bae9e 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeMappingEsUIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeMappingEsUIDAO.java @@ -26,6 +26,7 @@ import org.elasticsearch.action.search.SearchType; import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.search.aggregations.AggregationBuilders; import org.elasticsearch.search.aggregations.bucket.terms.Terms; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.util.StringUtils; import org.skywalking.apm.collector.storage.dao.INodeMappingUIDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; @@ -40,6 +41,10 @@ public class NodeMappingEsUIDAO extends EsDAO implements INodeMappingUIDAO { private final Logger logger = LoggerFactory.getLogger(NodeMappingEsUIDAO.class); + public NodeMappingEsUIDAO(ElasticSearchClient client) { + super(client); + } + @Override public JsonArray load(long startTime, long endTime) { SearchRequestBuilder searchRequestBuilder = getClient().prepareSearch(NodeMappingTable.TABLE); searchRequestBuilder.setTypes(NodeMappingTable.TABLE_TYPE); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeReferenceEsPersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeReferenceEsPersistenceDAO.java index 0df5206b4..b3aa4e21e 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeReferenceEsPersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeReferenceEsPersistenceDAO.java @@ -23,6 +23,7 @@ import java.util.Map; import org.elasticsearch.action.get.GetResponse; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.storage.dao.INodeReferencePersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.noderef.NodeReference; @@ -33,6 +34,10 @@ import org.skywalking.apm.collector.storage.table.noderef.NodeReferenceTable; */ public class NodeReferenceEsPersistenceDAO extends EsDAO implements INodeReferencePersistenceDAO { + public NodeReferenceEsPersistenceDAO(ElasticSearchClient client) { + super(client); + } + @Override public NodeReference get(String id) { GetResponse getResponse = getClient().prepareGet(NodeReferenceTable.TABLE, id).get(); if (getResponse.isExists()) { diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeReferenceEsUIDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeReferenceEsUIDAO.java index 092b0e029..ea9615696 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeReferenceEsUIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/NodeReferenceEsUIDAO.java @@ -28,6 +28,7 @@ import org.elasticsearch.search.aggregations.AggregationBuilders; import org.elasticsearch.search.aggregations.bucket.terms.Terms; import org.elasticsearch.search.aggregations.bucket.terms.TermsAggregationBuilder; import org.elasticsearch.search.aggregations.metrics.sum.Sum; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.util.StringUtils; import org.skywalking.apm.collector.storage.dao.INodeReferenceUIDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; @@ -42,6 +43,10 @@ public class NodeReferenceEsUIDAO extends EsDAO implements INodeReferenceUIDAO { private final Logger logger = LoggerFactory.getLogger(NodeReferenceEsUIDAO.class); + public NodeReferenceEsUIDAO(ElasticSearchClient client) { + super(client); + } + @Override public JsonArray load(long startTime, long endTime) { SearchRequestBuilder searchRequestBuilder = getClient().prepareSearch(NodeReferenceTable.TABLE); searchRequestBuilder.setTypes(NodeReferenceTable.TABLE_TYPE); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentCostEsPersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentCostEsPersistenceDAO.java index 2f8686ddd..8e1b0eeac 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentCostEsPersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentCostEsPersistenceDAO.java @@ -22,6 +22,7 @@ import java.util.HashMap; import java.util.Map; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.storage.dao.ISegmentCostPersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.segment.SegmentCost; @@ -36,6 +37,10 @@ public class SegmentCostEsPersistenceDAO extends EsDAO implements ISegmentCostPe private final Logger logger = LoggerFactory.getLogger(SegmentCostEsPersistenceDAO.class); + public SegmentCostEsPersistenceDAO(ElasticSearchClient client) { + super(client); + } + @Override public SegmentCost get(String id) { return null; } diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentCostEsUIDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentCostEsUIDAO.java index e9d47e4b2..dde4d45fc 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentCostEsUIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentCostEsUIDAO.java @@ -30,6 +30,7 @@ import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.index.query.RangeQueryBuilder; import org.elasticsearch.search.SearchHit; import org.elasticsearch.search.sort.SortOrder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.util.CollectionUtils; import org.skywalking.apm.collector.core.util.StringUtils; import org.skywalking.apm.collector.storage.dao.ISegmentCostUIDAO; @@ -41,6 +42,10 @@ import org.skywalking.apm.collector.storage.table.segment.SegmentCostTable; */ public class SegmentCostEsUIDAO extends EsDAO implements ISegmentCostUIDAO { + public SegmentCostEsUIDAO(ElasticSearchClient client) { + super(client); + } + @Override public JsonObject loadTop(long startTime, long endTime, long minCost, long maxCost, String operationName, Error error, int applicationId, List segmentIds, int limit, int from, Sort sort) { SearchRequestBuilder searchRequestBuilder = getClient().prepareSearch(SegmentCostTable.TABLE); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentEsPersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentEsPersistenceDAO.java index 90d328a77..aed49c510 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentEsPersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentEsPersistenceDAO.java @@ -23,6 +23,7 @@ import java.util.HashMap; import java.util.Map; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.storage.dao.ISegmentPersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.segment.Segment; @@ -37,6 +38,10 @@ public class SegmentEsPersistenceDAO extends EsDAO implements ISegmentPersistenc private final Logger logger = LoggerFactory.getLogger(SegmentEsPersistenceDAO.class); + public SegmentEsPersistenceDAO(ElasticSearchClient client) { + super(client); + } + @Override public Segment get(String id) { return null; } diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentEsUIDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentEsUIDAO.java index 479fd21f8..562ff7ec7 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentEsUIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/SegmentEsUIDAO.java @@ -22,6 +22,7 @@ import com.google.protobuf.InvalidProtocolBufferException; import java.util.Base64; import java.util.Map; import org.elasticsearch.action.get.GetResponse; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.util.StringUtils; import org.skywalking.apm.collector.storage.dao.ISegmentUIDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; @@ -37,6 +38,10 @@ public class SegmentEsUIDAO extends EsDAO implements ISegmentUIDAO { private final Logger logger = LoggerFactory.getLogger(SegmentEsUIDAO.class); + public SegmentEsUIDAO(ElasticSearchClient client) { + super(client); + } + @Override public TraceSegmentObject load(String segmentId) { GetResponse response = getClient().prepareGet(SegmentTable.TABLE, segmentId).get(); Map source = response.getSource(); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceEntryEsPersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceEntryEsPersistenceDAO.java index 0ef5fdeec..a4f16d612 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceEntryEsPersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceEntryEsPersistenceDAO.java @@ -23,6 +23,7 @@ import java.util.Map; import org.elasticsearch.action.get.GetResponse; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.storage.dao.IServiceEntryPersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.service.ServiceEntry; @@ -33,6 +34,10 @@ import org.skywalking.apm.collector.storage.table.service.ServiceEntryTable; */ public class ServiceEntryEsPersistenceDAO extends EsDAO implements IServiceEntryPersistenceDAO { + public ServiceEntryEsPersistenceDAO(ElasticSearchClient client) { + super(client); + } + @Override public ServiceEntry get(String id) { GetResponse getResponse = getClient().prepareGet(ServiceEntryTable.TABLE, id).get(); if (getResponse.isExists()) { diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceEntryEsUIDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceEntryEsUIDAO.java index e0559ec10..646ebab3f 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceEntryEsUIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceEntryEsUIDAO.java @@ -29,6 +29,7 @@ import org.elasticsearch.search.SearchHit; import org.elasticsearch.search.SearchHits; import org.elasticsearch.search.sort.SortBuilders; import org.elasticsearch.search.sort.SortOrder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.util.ColumnNameUtils; import org.skywalking.apm.collector.core.util.StringUtils; import org.skywalking.apm.collector.storage.dao.IServiceEntryUIDAO; @@ -40,6 +41,10 @@ import org.skywalking.apm.collector.storage.table.service.ServiceEntryTable; */ public class ServiceEntryEsUIDAO extends EsDAO implements IServiceEntryUIDAO { + public ServiceEntryEsUIDAO(ElasticSearchClient client) { + super(client); + } + @Override public JsonObject load(int applicationId, String entryServiceName, long startTime, long endTime, int from, int size) { diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceNameEsCacheDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceNameEsCacheDAO.java index fdfbabe8f..80e18a02b 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceNameEsCacheDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceNameEsCacheDAO.java @@ -26,6 +26,7 @@ import org.elasticsearch.action.search.SearchType; import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.search.SearchHit; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.core.util.Const; import org.skywalking.apm.collector.storage.dao.IServiceNameCacheDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; @@ -36,6 +37,10 @@ import org.skywalking.apm.collector.storage.table.register.ServiceNameTable; */ public class ServiceNameEsCacheDAO extends EsDAO implements IServiceNameCacheDAO { + public ServiceNameEsCacheDAO(ElasticSearchClient client) { + super(client); + } + @Override public String getServiceName(int serviceId) { GetRequestBuilder getRequestBuilder = getClient().prepareGet(ServiceNameTable.TABLE, String.valueOf(serviceId)); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceNameEsStreamDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceNameEsRegisterDAO.java similarity index 90% rename from apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceNameEsStreamDAO.java rename to apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceNameEsRegisterDAO.java index e7b1f31d0..c0b4d4c49 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceNameEsStreamDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceNameEsRegisterDAO.java @@ -23,7 +23,7 @@ import java.util.Map; import org.elasticsearch.action.index.IndexResponse; import org.elasticsearch.action.support.WriteRequest; import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; -import org.skywalking.apm.collector.storage.dao.IServiceNameStreamDAO; +import org.skywalking.apm.collector.storage.dao.IServiceNameRegisterDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.register.ServiceName; import org.skywalking.apm.collector.storage.table.register.ServiceNameTable; @@ -33,9 +33,13 @@ import org.slf4j.LoggerFactory; /** * @author peng-yongsheng */ -public class ServiceNameEsStreamDAO extends EsDAO implements IServiceNameStreamDAO { +public class ServiceNameEsRegisterDAO extends EsDAO implements IServiceNameRegisterDAO { - private final Logger logger = LoggerFactory.getLogger(ServiceNameEsStreamDAO.class); + private final Logger logger = LoggerFactory.getLogger(ServiceNameEsRegisterDAO.class); + + public ServiceNameEsRegisterDAO(ElasticSearchClient client) { + super(client); + } @Override public int getMaxServiceId() { return getMaxId(ServiceNameTable.TABLE, ServiceNameTable.COLUMN_SERVICE_ID); diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceReferenceEsPersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceReferenceEsPersistenceDAO.java index c5ddb318a..ae50524f4 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceReferenceEsPersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/dao/ServiceReferenceEsPersistenceDAO.java @@ -23,6 +23,7 @@ import java.util.Map; import org.elasticsearch.action.get.GetResponse; import org.elasticsearch.action.index.IndexRequestBuilder; import org.elasticsearch.action.update.UpdateRequestBuilder; +import org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient; import org.skywalking.apm.collector.storage.dao.IServiceReferencePersistenceDAO; import org.skywalking.apm.collector.storage.es.base.dao.EsDAO; import org.skywalking.apm.collector.storage.table.serviceref.ServiceReference; @@ -37,6 +38,10 @@ public class ServiceReferenceEsPersistenceDAO extends EsDAO implements IServiceR private final Logger logger = LoggerFactory.getLogger(ServiceReferenceEsPersistenceDAO.class); + public ServiceReferenceEsPersistenceDAO(ElasticSearchClient client) { + super(client); + } + @Override public ServiceReference get(String id) { GetResponse getResponse = getClient().prepareGet(ServiceReferenceTable.TABLE, id).get(); if (getResponse.isExists()) { diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/service/ElasticSearchDAOService.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/service/ElasticSearchDAOService.java deleted file mode 100644 index 933b30bc3..000000000 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/service/ElasticSearchDAOService.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright 2017, OpenSkywalking Organization All rights reserved. - * - * Licensed 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. - * - * Project repository: https://github.com/OpenSkywalking/skywalking - */ - -package org.skywalking.apm.collector.storage.es.service; - -import org.skywalking.apm.collector.storage.base.dao.DAO; -import org.skywalking.apm.collector.storage.base.dao.DAOContainer; -import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; - -/** - * @author peng-yongsheng - */ -public class ElasticSearchDAOService implements DAOService { - - private final DAOContainer daoContainer; - - public ElasticSearchDAOService(DAOContainer daoContainer) { - this.daoContainer = daoContainer; - } - - @Override public DAO get(Class daoInterfaceClass) { - return daoContainer.get(daoInterfaceClass.getName()); - } - - @Override public IPersistenceDAO getPersistenceDAO(Class daoInterfaceClass) { - return daoContainer.getPersistenceDAO(daoInterfaceClass.getName()); - } -} diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/resources/META-INF/defines/es_dao.define b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/resources/META-INF/defines/es_dao.define deleted file mode 100644 index 8bbb83735..000000000 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/resources/META-INF/defines/es_dao.define +++ /dev/null @@ -1,35 +0,0 @@ -org.skywalking.apm.collector.storage.es.dao.ApplicationEsCacheDAO -org.skywalking.apm.collector.storage.es.dao.InstanceEsCacheDAO -org.skywalking.apm.collector.storage.es.dao.ServiceNameEsCacheDAO - -org.skywalking.apm.collector.storage.es.dao.ApplicationEsStreamDAO -org.skywalking.apm.collector.storage.es.dao.InstanceEsStreamDAO -org.skywalking.apm.collector.storage.es.dao.ServiceNameEsStreamDAO - -org.skywalking.apm.collector.storage.es.dao.CpuMetricEsPersistenceDAO -org.skywalking.apm.collector.storage.es.dao.GCMetricEsPersistenceDAO -org.skywalking.apm.collector.storage.es.dao.MemoryMetricEsPersistenceDAO -org.skywalking.apm.collector.storage.es.dao.MemoryPoolMetricEsPersistenceDAO -org.skywalking.apm.collector.storage.es.dao.GlobalTraceEsPersistenceDAO -org.skywalking.apm.collector.storage.es.dao.InstanceHeartBeatEsPersistenceDAO -org.skywalking.apm.collector.storage.es.dao.InstPerformanceEsPersistenceDAO -org.skywalking.apm.collector.storage.es.dao.NodeComponentEsPersistenceDAO -org.skywalking.apm.collector.storage.es.dao.NodeMappingEsPersistenceDAO -org.skywalking.apm.collector.storage.es.dao.NodeReferenceEsPersistenceDAO -org.skywalking.apm.collector.storage.es.dao.SegmentCostEsPersistenceDAO -org.skywalking.apm.collector.storage.es.dao.SegmentEsPersistenceDAO -org.skywalking.apm.collector.storage.es.dao.ServiceEntryEsPersistenceDAO -org.skywalking.apm.collector.storage.es.dao.ServiceReferenceEsPersistenceDAO - -org.skywalking.apm.collector.storage.es.dao.InstanceEsUIDAO -org.skywalking.apm.collector.storage.es.dao.InstPerformanceEsUIDAO -org.skywalking.apm.collector.storage.es.dao.CpuMetricEsUIDAO -org.skywalking.apm.collector.storage.es.dao.GCMetricEsUIDAO -org.skywalking.apm.collector.storage.es.dao.MemoryMetricEsUIDAO -org.skywalking.apm.collector.storage.es.dao.GlobalTraceEsUIDAO -org.skywalking.apm.collector.storage.es.dao.NodeComponentEsUIDAO -org.skywalking.apm.collector.storage.es.dao.NodeMappingEsUIDAO -org.skywalking.apm.collector.storage.es.dao.NodeReferenceEsUIDAO -org.skywalking.apm.collector.storage.es.dao.SegmentCostEsUIDAO -org.skywalking.apm.collector.storage.es.dao.SegmentEsUIDAO -org.skywalking.apm.collector.storage.es.dao.ServiceEntryEsUIDAO \ No newline at end of file diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/StorageModuleH2Provider.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/StorageModuleH2Provider.java index 90835ef78..955b857ad 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/StorageModuleH2Provider.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/StorageModuleH2Provider.java @@ -1,15 +1,15 @@ /* - * Copyright 2017, OpenSkywalking Organization All rights reserved. + * Copyright 2017, OpenSkywalking Organization All rights rH2erved. * * Licensed 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 + * http://www.apache.org/licensH2/LICENSE-2.0 * - * Unless required by applicable law or agreed to in writing, software + * UnlH2s 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. + * WITHOUT WARRANTIH2 OR CONDITIONS OF ANY KIND, either exprH2s or implied. * See the License for the specific language governing permissions and * limitations under the License. * @@ -18,24 +18,81 @@ package org.skywalking.apm.collector.storage.h2; -import java.util.List; import java.util.Properties; import org.skywalking.apm.collector.client.h2.H2Client; import org.skywalking.apm.collector.client.h2.H2ClientException; -import org.skywalking.apm.collector.core.define.DefineException; import org.skywalking.apm.collector.core.module.Module; import org.skywalking.apm.collector.core.module.ModuleProvider; import org.skywalking.apm.collector.core.module.ServiceNotProvidedException; import org.skywalking.apm.collector.storage.StorageException; import org.skywalking.apm.collector.storage.StorageModule; -import org.skywalking.apm.collector.storage.base.dao.DAOContainer; import org.skywalking.apm.collector.storage.base.dao.IBatchDAO; +import org.skywalking.apm.collector.storage.dao.IApplicationCacheDAO; +import org.skywalking.apm.collector.storage.dao.IApplicationRegisterDAO; +import org.skywalking.apm.collector.storage.dao.ICpuMetricPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.ICpuMetricUIDAO; +import org.skywalking.apm.collector.storage.dao.IGCMetricPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IGCMetricUIDAO; +import org.skywalking.apm.collector.storage.dao.IGlobalTracePersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IGlobalTraceUIDAO; +import org.skywalking.apm.collector.storage.dao.IInstPerformancePersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IInstPerformanceUIDAO; +import org.skywalking.apm.collector.storage.dao.IInstanceCacheDAO; +import org.skywalking.apm.collector.storage.dao.IInstanceHeartBeatPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IInstanceRegisterDAO; +import org.skywalking.apm.collector.storage.dao.IInstanceUIDAO; +import org.skywalking.apm.collector.storage.dao.IMemoryMetricPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IMemoryMetricUIDAO; +import org.skywalking.apm.collector.storage.dao.IMemoryPoolMetricPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.INodeComponentPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.INodeComponentUIDAO; +import org.skywalking.apm.collector.storage.dao.INodeMappingPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.INodeMappingUIDAO; +import org.skywalking.apm.collector.storage.dao.INodeReferencePersistenceDAO; +import org.skywalking.apm.collector.storage.dao.INodeReferenceUIDAO; +import org.skywalking.apm.collector.storage.dao.ISegmentCostPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.ISegmentCostUIDAO; +import org.skywalking.apm.collector.storage.dao.ISegmentPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.ISegmentUIDAO; +import org.skywalking.apm.collector.storage.dao.IServiceEntryPersistenceDAO; +import org.skywalking.apm.collector.storage.dao.IServiceEntryUIDAO; +import org.skywalking.apm.collector.storage.dao.IServiceNameCacheDAO; +import org.skywalking.apm.collector.storage.dao.IServiceNameRegisterDAO; +import org.skywalking.apm.collector.storage.dao.IServiceReferencePersistenceDAO; import org.skywalking.apm.collector.storage.h2.base.dao.BatchH2DAO; -import org.skywalking.apm.collector.storage.h2.base.dao.H2DAO; -import org.skywalking.apm.collector.storage.h2.base.dao.H2DAODefineLoader; import org.skywalking.apm.collector.storage.h2.base.define.H2StorageInstaller; -import org.skywalking.apm.collector.storage.h2.service.H2DAOService; -import org.skywalking.apm.collector.storage.service.DAOService; +import org.skywalking.apm.collector.storage.h2.dao.ApplicationH2CacheDAO; +import org.skywalking.apm.collector.storage.h2.dao.ApplicationH2RegisterDAO; +import org.skywalking.apm.collector.storage.h2.dao.CpuMetricH2PersistenceDAO; +import org.skywalking.apm.collector.storage.h2.dao.CpuMetricH2UIDAO; +import org.skywalking.apm.collector.storage.h2.dao.GCMetricH2PersistenceDAO; +import org.skywalking.apm.collector.storage.h2.dao.GCMetricH2UIDAO; +import org.skywalking.apm.collector.storage.h2.dao.GlobalTraceH2PersistenceDAO; +import org.skywalking.apm.collector.storage.h2.dao.GlobalTraceH2UIDAO; +import org.skywalking.apm.collector.storage.h2.dao.InstPerformanceH2PersistenceDAO; +import org.skywalking.apm.collector.storage.h2.dao.InstPerformanceH2UIDAO; +import org.skywalking.apm.collector.storage.h2.dao.InstanceH2CacheDAO; +import org.skywalking.apm.collector.storage.h2.dao.InstanceH2RegisterDAO; +import org.skywalking.apm.collector.storage.h2.dao.InstanceH2UIDAO; +import org.skywalking.apm.collector.storage.h2.dao.InstanceHeartBeatH2PersistenceDAO; +import org.skywalking.apm.collector.storage.h2.dao.MemoryMetricH2PersistenceDAO; +import org.skywalking.apm.collector.storage.h2.dao.MemoryMetricH2UIDAO; +import org.skywalking.apm.collector.storage.h2.dao.MemoryPoolMetricH2PersistenceDAO; +import org.skywalking.apm.collector.storage.h2.dao.NodeComponentH2PersistenceDAO; +import org.skywalking.apm.collector.storage.h2.dao.NodeComponentH2UIDAO; +import org.skywalking.apm.collector.storage.h2.dao.NodeMappingH2PersistenceDAO; +import org.skywalking.apm.collector.storage.h2.dao.NodeMappingH2UIDAO; +import org.skywalking.apm.collector.storage.h2.dao.NodeReferenceH2PersistenceDAO; +import org.skywalking.apm.collector.storage.h2.dao.NodeReferenceH2UIDAO; +import org.skywalking.apm.collector.storage.h2.dao.SegmentCostH2PersistenceDAO; +import org.skywalking.apm.collector.storage.h2.dao.SegmentCostH2UIDAO; +import org.skywalking.apm.collector.storage.h2.dao.SegmentH2PersistenceDAO; +import org.skywalking.apm.collector.storage.h2.dao.SegmentH2UIDAO; +import org.skywalking.apm.collector.storage.h2.dao.ServiceEntryH2PersistenceDAO; +import org.skywalking.apm.collector.storage.h2.dao.ServiceEntryH2UIDAO; +import org.skywalking.apm.collector.storage.h2.dao.ServiceNameH2CacheDAO; +import org.skywalking.apm.collector.storage.h2.dao.ServiceNameH2RegisterDAO; +import org.skywalking.apm.collector.storage.h2.dao.ServiceReferenceH2PersistenceDAO; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -50,12 +107,7 @@ public class StorageModuleH2Provider extends ModuleProvider { private static final String USER_NAME = "user_name"; private static final String PASSWORD = "password"; - private H2Client client; - private final DAOContainer daoContainer; - - public StorageModuleH2Provider() { - this.daoContainer = new DAOContainer(); - } + private H2Client h2Client; @Override public String name() { return "h2"; @@ -69,27 +121,22 @@ public class StorageModuleH2Provider extends ModuleProvider { String url = config.getProperty(URL); String userName = config.getProperty(USER_NAME); String password = config.getProperty(PASSWORD); - client = new H2Client(url, userName, password); + h2Client = new H2Client(url, userName, password); - this.registerServiceImplementation(DAOService.class, new H2DAOService(daoContainer)); - this.registerServiceImplementation(IBatchDAO.class, new BatchH2DAO()); + this.registerServiceImplementation(IBatchDAO.class, new BatchH2DAO(h2Client)); + registerCacheDAO(); + registerRegisterDAO(); + registerPersistenceDAO(); + registerUiDAO(); } @Override public void start(Properties config) throws ServiceNotProvidedException { try { - client.initialize(); - - H2DAODefineLoader loader = new H2DAODefineLoader(); - List h2DAOs = loader.load(); - h2DAOs.forEach(h2DAO -> { - h2DAO.setClient(client); - String interFaceName = h2DAO.getClass().getInterfaces()[0].getName(); - daoContainer.put(interFaceName, h2DAO); - }); + h2Client.initialize(); H2StorageInstaller installer = new H2StorageInstaller(); - installer.install(client); - } catch (H2ClientException | DefineException | StorageException e) { + installer.install(h2Client); + } catch (H2ClientException | StorageException e) { logger.error(e.getMessage(), e); } } @@ -101,4 +148,54 @@ public class StorageModuleH2Provider extends ModuleProvider { @Override public String[] requiredModules() { return new String[0]; } + + private void registerCacheDAO() throws ServiceNotProvidedException { + this.registerServiceImplementation(IApplicationCacheDAO.class, new ApplicationH2CacheDAO(h2Client)); + this.registerServiceImplementation(IInstanceCacheDAO.class, new InstanceH2CacheDAO(h2Client)); + this.registerServiceImplementation(IServiceNameCacheDAO.class, new ServiceNameH2CacheDAO(h2Client)); + } + + private void registerRegisterDAO() throws ServiceNotProvidedException { + this.registerServiceImplementation(IApplicationRegisterDAO.class, new ApplicationH2RegisterDAO(h2Client)); + this.registerServiceImplementation(IInstanceRegisterDAO.class, new InstanceH2RegisterDAO(h2Client)); + this.registerServiceImplementation(IServiceNameRegisterDAO.class, new ServiceNameH2RegisterDAO(h2Client)); + } + + private void registerPersistenceDAO() throws ServiceNotProvidedException { + this.registerServiceImplementation(ICpuMetricPersistenceDAO.class, new CpuMetricH2PersistenceDAO(h2Client)); + this.registerServiceImplementation(IGCMetricPersistenceDAO.class, new GCMetricH2PersistenceDAO(h2Client)); + this.registerServiceImplementation(IMemoryMetricPersistenceDAO.class, new MemoryMetricH2PersistenceDAO(h2Client)); + this.registerServiceImplementation(IMemoryPoolMetricPersistenceDAO.class, new MemoryPoolMetricH2PersistenceDAO(h2Client)); + + this.registerServiceImplementation(IGlobalTracePersistenceDAO.class, new GlobalTraceH2PersistenceDAO(h2Client)); + this.registerServiceImplementation(IInstPerformancePersistenceDAO.class, new InstPerformanceH2PersistenceDAO(h2Client)); + this.registerServiceImplementation(INodeComponentPersistenceDAO.class, new NodeComponentH2PersistenceDAO(h2Client)); + this.registerServiceImplementation(INodeMappingPersistenceDAO.class, new NodeMappingH2PersistenceDAO(h2Client)); + this.registerServiceImplementation(INodeReferencePersistenceDAO.class, new NodeReferenceH2PersistenceDAO(h2Client)); + this.registerServiceImplementation(ISegmentCostPersistenceDAO.class, new SegmentCostH2PersistenceDAO(h2Client)); + this.registerServiceImplementation(ISegmentPersistenceDAO.class, new SegmentH2PersistenceDAO(h2Client)); + this.registerServiceImplementation(IServiceEntryPersistenceDAO.class, new ServiceEntryH2PersistenceDAO(h2Client)); + this.registerServiceImplementation(IServiceReferencePersistenceDAO.class, new ServiceReferenceH2PersistenceDAO(h2Client)); + + this.registerServiceImplementation(IInstanceHeartBeatPersistenceDAO.class, new InstanceHeartBeatH2PersistenceDAO(h2Client)); + } + + private void registerUiDAO() throws ServiceNotProvidedException { + this.registerServiceImplementation(IInstanceUIDAO.class, new InstanceH2UIDAO(h2Client)); + + this.registerServiceImplementation(ICpuMetricUIDAO.class, new CpuMetricH2UIDAO(h2Client)); + this.registerServiceImplementation(IGCMetricUIDAO.class, new GCMetricH2UIDAO(h2Client)); + this.registerServiceImplementation(IMemoryMetricUIDAO.class, new MemoryMetricH2UIDAO(h2Client)); +// this.registerServiceImplementation(IMemoryPoolMetricUIDAO.class, new MemoryPoolMetricH2UIDAO(h2Client)); + + this.registerServiceImplementation(IGlobalTraceUIDAO.class, new GlobalTraceH2UIDAO(h2Client)); + this.registerServiceImplementation(IInstPerformanceUIDAO.class, new InstPerformanceH2UIDAO(h2Client)); + this.registerServiceImplementation(INodeComponentUIDAO.class, new NodeComponentH2UIDAO(h2Client)); + this.registerServiceImplementation(INodeMappingUIDAO.class, new NodeMappingH2UIDAO(h2Client)); + this.registerServiceImplementation(INodeReferenceUIDAO.class, new NodeReferenceH2UIDAO(h2Client)); + this.registerServiceImplementation(ISegmentCostUIDAO.class, new SegmentCostH2UIDAO(h2Client)); + this.registerServiceImplementation(ISegmentUIDAO.class, new SegmentH2UIDAO(h2Client)); + this.registerServiceImplementation(IServiceEntryUIDAO.class, new ServiceEntryH2UIDAO(h2Client)); +// this.registerServiceImplementation(IServiceReferenceUIDAO.class, new ServiceReferenceH2UIDAO(elasticSearchClient)); + } } diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/BatchH2DAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/BatchH2DAO.java index d921b1d90..840ec4361 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/BatchH2DAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/BatchH2DAO.java @@ -24,6 +24,7 @@ import java.sql.SQLException; import java.util.HashMap; import java.util.List; import java.util.Map; +import org.skywalking.apm.collector.client.h2.H2Client; import org.skywalking.apm.collector.client.h2.H2ClientException; import org.skywalking.apm.collector.storage.base.dao.IBatchDAO; import org.skywalking.apm.collector.storage.h2.base.define.H2SqlEntity; @@ -34,8 +35,13 @@ import org.slf4j.LoggerFactory; * @author peng-yongsheng */ public class BatchH2DAO extends H2DAO implements IBatchDAO { + private final Logger logger = LoggerFactory.getLogger(BatchH2DAO.class); + public BatchH2DAO(H2Client client) { + super(client); + } + @Override public void batchPersistence(List batchCollection) { if (batchCollection != null && batchCollection.size() > 0) { diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/H2DAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/H2DAO.java index 1a653d1d1..7aa9f1b3c 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/H2DAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/H2DAO.java @@ -30,8 +30,13 @@ import org.slf4j.LoggerFactory; * @author peng-yongsheng */ public abstract class H2DAO extends AbstractDAO { + private final Logger logger = LoggerFactory.getLogger(H2DAO.class); + public H2DAO(H2Client client) { + super(client); + } + protected final int getMaxId(String tableName, String columnName) { String sql = "select max(" + columnName + ") from " + tableName; return getIntValueBySQL(sql); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/H2DAODefineLoader.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/H2DAODefineLoader.java deleted file mode 100644 index ae73143e7..000000000 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/H2DAODefineLoader.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright 2017, OpenSkywalking Organization All rights reserved. - * - * Licensed 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. - * - * Project repository: https://github.com/OpenSkywalking/skywalking - */ - -package org.skywalking.apm.collector.storage.h2.base.dao; - -import java.util.ArrayList; -import java.util.List; -import org.skywalking.apm.collector.core.define.DefineException; -import org.skywalking.apm.collector.core.define.DefinitionLoader; -import org.skywalking.apm.collector.core.define.Loader; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * @author peng-yongsheng - */ -public class H2DAODefineLoader implements Loader> { - - private final Logger logger = LoggerFactory.getLogger(H2DAODefineLoader.class); - - @Override public List load() throws DefineException { - List h2DAOs = new ArrayList<>(); - - H2DAODefinitionFile definitionFile = new H2DAODefinitionFile(); - logger.info("h2 dao definition file name: {}", definitionFile.fileName()); - DefinitionLoader definitionLoader = DefinitionLoader.load(H2DAO.class, definitionFile); - for (H2DAO dao : definitionLoader) { - logger.info("loaded h2 dao definition class: {}", dao.getClass().getName()); - h2DAOs.add(dao); - } - return h2DAOs; - } -} diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/H2DAODefinitionFile.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/H2DAODefinitionFile.java deleted file mode 100644 index db92c2a77..000000000 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/base/dao/H2DAODefinitionFile.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright 2017, OpenSkywalking Organization All rights reserved. - * - * Licensed 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. - * - * Project repository: https://github.com/OpenSkywalking/skywalking - */ - -package org.skywalking.apm.collector.storage.h2.base.dao; - -import org.skywalking.apm.collector.core.define.DefinitionFile; - -/** - * @author peng-yongsheng - */ -public class H2DAODefinitionFile extends DefinitionFile { - - @Override protected String fileName() { - return "h2_dao.define"; - } -} diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ApplicationH2CacheDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ApplicationH2CacheDAO.java index ad98f333e..364e9dd1c 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ApplicationH2CacheDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ApplicationH2CacheDAO.java @@ -23,9 +23,9 @@ import java.sql.SQLException; import org.skywalking.apm.collector.client.h2.H2Client; import org.skywalking.apm.collector.client.h2.H2ClientException; import org.skywalking.apm.collector.core.util.Const; +import org.skywalking.apm.collector.storage.base.sql.SqlBuilder; import org.skywalking.apm.collector.storage.dao.IApplicationCacheDAO; import org.skywalking.apm.collector.storage.h2.base.dao.H2DAO; -import org.skywalking.apm.collector.storage.base.sql.SqlBuilder; import org.skywalking.apm.collector.storage.table.register.ApplicationTable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -38,6 +38,10 @@ public class ApplicationH2CacheDAO extends H2DAO implements IApplicationCacheDAO private final Logger logger = LoggerFactory.getLogger(ApplicationH2CacheDAO.class); private static final String GET_APPLICATION_ID_OR_CODE_SQL = "select {0} from {1} where {2} = ?"; + public ApplicationH2CacheDAO(H2Client client) { + super(client); + } + @Override public int getApplicationId(String applicationCode) { logger.info("get the application getId with application code = {}", applicationCode); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ApplicationH2StreamDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ApplicationH2RegisterDAO.java similarity index 89% rename from apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ApplicationH2StreamDAO.java rename to apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ApplicationH2RegisterDAO.java index a7c4bad4e..ea20bc2aa 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ApplicationH2StreamDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ApplicationH2RegisterDAO.java @@ -23,7 +23,7 @@ import java.util.Map; import org.skywalking.apm.collector.client.h2.H2Client; import org.skywalking.apm.collector.client.h2.H2ClientException; import org.skywalking.apm.collector.storage.base.sql.SqlBuilder; -import org.skywalking.apm.collector.storage.dao.IApplicationStreamDAO; +import org.skywalking.apm.collector.storage.dao.IApplicationRegisterDAO; import org.skywalking.apm.collector.storage.h2.base.dao.H2DAO; import org.skywalking.apm.collector.storage.table.register.Application; import org.skywalking.apm.collector.storage.table.register.ApplicationTable; @@ -33,8 +33,12 @@ import org.slf4j.LoggerFactory; /** * @author peng-yongsheng, clevertension */ -public class ApplicationH2StreamDAO extends H2DAO implements IApplicationStreamDAO { - private final Logger logger = LoggerFactory.getLogger(ApplicationH2StreamDAO.class); +public class ApplicationH2RegisterDAO extends H2DAO implements IApplicationRegisterDAO { + private final Logger logger = LoggerFactory.getLogger(ApplicationH2RegisterDAO.class); + + public ApplicationH2RegisterDAO(H2Client client) { + super(client); + } @Override public int getMaxApplicationId() { diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/CpuMetricH2PersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/CpuMetricH2PersistenceDAO.java index 7df977b23..4d146d192 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/CpuMetricH2PersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/CpuMetricH2PersistenceDAO.java @@ -20,6 +20,7 @@ package org.skywalking.apm.collector.storage.h2.dao; import java.util.HashMap; import java.util.Map; +import org.skywalking.apm.collector.client.h2.H2Client; import org.skywalking.apm.collector.storage.base.sql.SqlBuilder; import org.skywalking.apm.collector.storage.dao.ICpuMetricPersistenceDAO; import org.skywalking.apm.collector.storage.h2.base.dao.H2DAO; @@ -36,6 +37,10 @@ public class CpuMetricH2PersistenceDAO extends H2DAO implements ICpuMetricPersis private final Logger logger = LoggerFactory.getLogger(CpuMetricH2PersistenceDAO.class); + public CpuMetricH2PersistenceDAO(H2Client client) { + super(client); + } + @Override public CpuMetric get(String id) { return null; } diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/CpuMetricH2UIDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/CpuMetricH2UIDAO.java index 197b5a285..c677dd684 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/CpuMetricH2UIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/CpuMetricH2UIDAO.java @@ -41,6 +41,10 @@ public class CpuMetricH2UIDAO extends H2DAO implements ICpuMetricUIDAO { private final Logger logger = LoggerFactory.getLogger(CpuMetricH2UIDAO.class); private static final String GET_CPU_METRIC_SQL = "select * from {0} where {1} = ?"; + public CpuMetricH2UIDAO(H2Client client) { + super(client); + } + @Override public int getMetric(int instanceId, long timeBucket) { String id = timeBucket + Const.ID_SPLIT + instanceId; H2Client client = getClient(); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GCMetricH2PersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GCMetricH2PersistenceDAO.java index 7a04cdb22..9cca8ddaa 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GCMetricH2PersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GCMetricH2PersistenceDAO.java @@ -20,6 +20,7 @@ package org.skywalking.apm.collector.storage.h2.dao; import java.util.HashMap; import java.util.Map; +import org.skywalking.apm.collector.client.h2.H2Client; import org.skywalking.apm.collector.storage.base.sql.SqlBuilder; import org.skywalking.apm.collector.storage.dao.IGCMetricPersistenceDAO; import org.skywalking.apm.collector.storage.h2.base.dao.H2DAO; @@ -32,6 +33,10 @@ import org.skywalking.apm.collector.storage.table.jvm.GCMetricTable; */ public class GCMetricH2PersistenceDAO extends H2DAO implements IGCMetricPersistenceDAO { + public GCMetricH2PersistenceDAO(H2Client client) { + super(client); + } + @Override public GCMetric get(String id) { return null; } diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GCMetricH2UIDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GCMetricH2UIDAO.java index 30dd5cc49..fe7b67122 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GCMetricH2UIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GCMetricH2UIDAO.java @@ -45,6 +45,10 @@ public class GCMetricH2UIDAO extends H2DAO implements IGCMetricUIDAO { private static final String GET_GC_COUNT_SQL = "select {1}, sum({0}) as cnt, {1} from {2} where {3} = ? and {4} in ("; private static final String GET_GC_METRIC_SQL = "select * from {0} where {1} = ?"; + public GCMetricH2UIDAO(H2Client client) { + super(client); + } + @Override public GCCount getGCCount(long[] timeBuckets, int instanceId) { GCCount gcCount = new GCCount(); H2Client client = getClient(); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GlobalTraceH2PersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GlobalTraceH2PersistenceDAO.java index 2e5509626..805670fca 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GlobalTraceH2PersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GlobalTraceH2PersistenceDAO.java @@ -20,6 +20,7 @@ package org.skywalking.apm.collector.storage.h2.dao; import java.util.HashMap; import java.util.Map; +import org.skywalking.apm.collector.client.h2.H2Client; import org.skywalking.apm.collector.core.UnexpectedException; import org.skywalking.apm.collector.storage.base.sql.SqlBuilder; import org.skywalking.apm.collector.storage.dao.IGlobalTracePersistenceDAO; @@ -34,8 +35,13 @@ import org.slf4j.LoggerFactory; * @author peng-yongsheng, clevertension */ public class GlobalTraceH2PersistenceDAO extends H2DAO implements IGlobalTracePersistenceDAO { + private final Logger logger = LoggerFactory.getLogger(GlobalTraceH2PersistenceDAO.class); + public GlobalTraceH2PersistenceDAO(H2Client client) { + super(client); + } + @Override public GlobalTrace get(String id) { throw new UnexpectedException("There is no need to merge stream data with database data."); } diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GlobalTraceH2UIDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GlobalTraceH2UIDAO.java index 7f41ea901..83cf0e628 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GlobalTraceH2UIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/GlobalTraceH2UIDAO.java @@ -41,6 +41,10 @@ public class GlobalTraceH2UIDAO extends H2DAO implements IGlobalTraceUIDAO { private static final String GET_GLOBAL_TRACE_ID_SQL = "select {0} from {1} where {2} = ? limit 10"; private static final String GET_SEGMENT_IDS_SQL = "select {0} from {1} where {2} = ? limit 10"; + public GlobalTraceH2UIDAO(H2Client client) { + super(client); + } + @Override public List getGlobalTraceId(String segmentId) { List globalTraceIds = new ArrayList<>(); H2Client client = getClient(); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstPerformanceH2PersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstPerformanceH2PersistenceDAO.java index f1e1e9c45..a42773530 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstPerformanceH2PersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstPerformanceH2PersistenceDAO.java @@ -43,6 +43,10 @@ public class InstPerformanceH2PersistenceDAO extends H2DAO implements IInstPerfo private final Logger logger = LoggerFactory.getLogger(InstPerformanceH2PersistenceDAO.class); private static final String GET_SQL = "select * from {0} where {1} = ?"; + public InstPerformanceH2PersistenceDAO(H2Client client) { + super(client); + } + @Override public InstPerformance get(String id) { H2Client client = getClient(); String sql = SqlBuilder.buildSql(GET_SQL, InstPerformanceTable.TABLE, InstPerformanceTable.COLUMN_ID); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstPerformanceH2UIDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstPerformanceH2UIDAO.java index 6146a65fb..540d80094 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstPerformanceH2UIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstPerformanceH2UIDAO.java @@ -43,6 +43,10 @@ public class InstPerformanceH2UIDAO extends H2DAO implements IInstPerformanceUID private static final String GET_INST_PERF_SQL = "select * from {0} where {1} = ? and {2} in ("; private static final String GET_TPS_METRIC_SQL = "select * from {0} where {1} = ?"; + public InstPerformanceH2UIDAO(H2Client client) { + super(client); + } + @Override public InstPerformance get(long[] timeBuckets, int instanceId) { H2Client client = getClient(); logger.info("the inst performance inst id = {}", instanceId); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceH2CacheDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceH2CacheDAO.java index d6fda3591..4d2fb09c7 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceH2CacheDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceH2CacheDAO.java @@ -39,6 +39,10 @@ public class InstanceH2CacheDAO extends H2DAO implements IInstanceCacheDAO { private static final String GET_APPLICATION_ID_SQL = "select {0} from {1} where {2} = ?"; private static final String GET_INSTANCE_ID_SQL = "select {0} from {1} where {2} = ? and {3} = ?"; + public InstanceH2CacheDAO(H2Client client) { + super(client); + } + @Override public int getApplicationId(int instanceId) { logger.info("get the application getId with application getId = {}", instanceId); H2Client client = getClient(); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceH2StreamDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceH2RegisterDAO.java similarity index 92% rename from apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceH2StreamDAO.java rename to apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceH2RegisterDAO.java index 6e23c8921..994c4077a 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceH2StreamDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceH2RegisterDAO.java @@ -23,7 +23,7 @@ import java.util.Map; import org.skywalking.apm.collector.client.h2.H2Client; import org.skywalking.apm.collector.client.h2.H2ClientException; import org.skywalking.apm.collector.storage.base.sql.SqlBuilder; -import org.skywalking.apm.collector.storage.dao.IInstanceStreamDAO; +import org.skywalking.apm.collector.storage.dao.IInstanceRegisterDAO; import org.skywalking.apm.collector.storage.h2.base.dao.H2DAO; import org.skywalking.apm.collector.storage.table.register.Instance; import org.skywalking.apm.collector.storage.table.register.InstanceTable; @@ -33,8 +33,13 @@ import org.slf4j.LoggerFactory; /** * @author peng-yongsheng, clevertension */ -public class InstanceH2StreamDAO extends H2DAO implements IInstanceStreamDAO { - private final Logger logger = LoggerFactory.getLogger(InstanceH2StreamDAO.class); +public class InstanceH2RegisterDAO extends H2DAO implements IInstanceRegisterDAO { + + private final Logger logger = LoggerFactory.getLogger(InstanceH2RegisterDAO.class); + + public InstanceH2RegisterDAO(H2Client client) { + super(client); + } private static final String UPDATE_HEARTBEAT_TIME_SQL = "update {0} set {1} = ? where {2} = ?"; diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceH2UIDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceH2UIDAO.java index f74513314..01832778b 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceH2UIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceH2UIDAO.java @@ -42,6 +42,10 @@ public class InstanceH2UIDAO extends H2DAO implements IInstanceUIDAO { private final Logger logger = LoggerFactory.getLogger(InstanceH2UIDAO.class); + public InstanceH2UIDAO(H2Client client) { + super(client); + } + private static final String GET_LAST_HEARTBEAT_TIME_SQL = "select {0} from {1} where {2} > ? limit 1"; private static final String GET_INST_LAST_HEARTBEAT_TIME_SQL = "select {0} from {1} where {2} > ? and {3} = ? limit 1"; private static final String GET_INSTANCE_SQL = "select * from {0} where {1} = ?"; diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceHeartBeatH2PersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceHeartBeatH2PersistenceDAO.java index 0e9dccff4..fd8e3982e 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceHeartBeatH2PersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/InstanceHeartBeatH2PersistenceDAO.java @@ -43,6 +43,10 @@ public class InstanceHeartBeatH2PersistenceDAO extends H2DAO implements IInstanc private final Logger logger = LoggerFactory.getLogger(InstanceHeartBeatH2PersistenceDAO.class); + public InstanceHeartBeatH2PersistenceDAO(H2Client client) { + super(client); + } + private static final String GET_INSTANCE_HEARTBEAT_SQL = "select * from {0} where {1} = ?"; @Override public Instance get(String id) { diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/MemoryMetricH2PersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/MemoryMetricH2PersistenceDAO.java index 4752fbe2f..0b28d6ba0 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/MemoryMetricH2PersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/MemoryMetricH2PersistenceDAO.java @@ -20,6 +20,7 @@ package org.skywalking.apm.collector.storage.h2.dao; import java.util.HashMap; import java.util.Map; +import org.skywalking.apm.collector.client.h2.H2Client; import org.skywalking.apm.collector.storage.base.sql.SqlBuilder; import org.skywalking.apm.collector.storage.dao.IMemoryMetricPersistenceDAO; import org.skywalking.apm.collector.storage.h2.base.dao.H2DAO; @@ -32,6 +33,10 @@ import org.skywalking.apm.collector.storage.table.jvm.MemoryMetricTable; */ public class MemoryMetricH2PersistenceDAO extends H2DAO implements IMemoryMetricPersistenceDAO { + public MemoryMetricH2PersistenceDAO(H2Client client) { + super(client); + } + @Override public MemoryMetric get(String id) { return null; } diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/MemoryMetricH2UIDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/MemoryMetricH2UIDAO.java index 0f6ddd95d..841cb6681 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/MemoryMetricH2UIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/MemoryMetricH2UIDAO.java @@ -43,6 +43,10 @@ public class MemoryMetricH2UIDAO extends H2DAO implements IMemoryMetricUIDAO { private final Logger logger = LoggerFactory.getLogger(MemoryMetricH2UIDAO.class); private static final String GET_MEMORY_METRIC_SQL = "select * from {0} where {1} =?"; + public MemoryMetricH2UIDAO(H2Client client) { + super(client); + } + @Override public JsonObject getMetric(int instanceId, long timeBucket, boolean isHeap) { H2Client client = getClient(); String id = timeBucket + Const.ID_SPLIT + instanceId + Const.ID_SPLIT + isHeap; diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/MemoryPoolMetricH2PersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/MemoryPoolMetricH2PersistenceDAO.java index 68c22fb88..c5fe14eeb 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/MemoryPoolMetricH2PersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/MemoryPoolMetricH2PersistenceDAO.java @@ -20,6 +20,7 @@ package org.skywalking.apm.collector.storage.h2.dao; import java.util.HashMap; import java.util.Map; +import org.skywalking.apm.collector.client.h2.H2Client; import org.skywalking.apm.collector.storage.base.sql.SqlBuilder; import org.skywalking.apm.collector.storage.dao.IMemoryPoolMetricPersistenceDAO; import org.skywalking.apm.collector.storage.h2.base.dao.H2DAO; @@ -32,6 +33,10 @@ import org.skywalking.apm.collector.storage.table.jvm.MemoryPoolMetricTable; */ public class MemoryPoolMetricH2PersistenceDAO extends H2DAO implements IMemoryPoolMetricPersistenceDAO { + public MemoryPoolMetricH2PersistenceDAO(H2Client client) { + super(client); + } + @Override public MemoryPoolMetric get(String id) { return null; } diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeComponentH2PersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeComponentH2PersistenceDAO.java index 28f5173df..2497f1312 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeComponentH2PersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeComponentH2PersistenceDAO.java @@ -42,6 +42,10 @@ public class NodeComponentH2PersistenceDAO extends H2DAO implements INodeCompone private final Logger logger = LoggerFactory.getLogger(NodeComponentH2PersistenceDAO.class); private static final String GET_SQL = "select * from {0} where {1} = ?"; + public NodeComponentH2PersistenceDAO(H2Client client) { + super(client); + } + @Override public NodeComponent get(String id) { H2Client client = getClient(); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeComponentH2UIDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeComponentH2UIDAO.java index 2452d1fba..0db00c603 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeComponentH2UIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeComponentH2UIDAO.java @@ -41,6 +41,10 @@ public class NodeComponentH2UIDAO extends H2DAO implements INodeComponentUIDAO { private final Logger logger = LoggerFactory.getLogger(NodeComponentH2UIDAO.class); private static final String AGGREGATE_COMPONENT_SQL = "select {0}, {1}, {2} from {3} where {4} >= ? and {4} <= ? group by {0}, {1}, {2} limit 100"; + public NodeComponentH2UIDAO(H2Client client) { + super(client); + } + @Override public JsonArray load(long startTime, long endTime) { JsonArray nodeComponentArray = new JsonArray(); nodeComponentArray.addAll(aggregationComponent(startTime, endTime)); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeMappingH2PersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeMappingH2PersistenceDAO.java index cbf81da83..7764546a9 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeMappingH2PersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeMappingH2PersistenceDAO.java @@ -43,6 +43,10 @@ public class NodeMappingH2PersistenceDAO extends H2DAO implements INodeMappingPe private final Logger logger = LoggerFactory.getLogger(NodeMappingH2PersistenceDAO.class); private static final String GET_SQL = "select * from {0} where {1} = ?"; + public NodeMappingH2PersistenceDAO(H2Client client) { + super(client); + } + @Override public NodeMapping get(String id) { H2Client client = getClient(); String sql = SqlBuilder.buildSql(GET_SQL, NodeMappingTable.TABLE, NodeMappingTable.COLUMN_ID); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeMappingH2UIDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeMappingH2UIDAO.java index f271f6be4..5c8215bd5 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeMappingH2UIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeMappingH2UIDAO.java @@ -40,6 +40,10 @@ public class NodeMappingH2UIDAO extends H2DAO implements INodeMappingUIDAO { private final Logger logger = LoggerFactory.getLogger(NodeMappingH2UIDAO.class); private static final String NODE_MAPPING_SQL = "select {0}, {1}, {2} from {3} where {4} >= ? and {4} <= ? group by {0}, {1}, {2} limit 100"; + public NodeMappingH2UIDAO(H2Client client) { + super(client); + } + @Override public JsonArray load(long startTime, long endTime) { H2Client client = getClient(); JsonArray nodeMappingArray = new JsonArray(); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeReferenceH2PersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeReferenceH2PersistenceDAO.java index 66bd0c8d7..8b4f55af5 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeReferenceH2PersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeReferenceH2PersistenceDAO.java @@ -43,6 +43,10 @@ public class NodeReferenceH2PersistenceDAO extends H2DAO implements INodeReferen private final Logger logger = LoggerFactory.getLogger(NodeReferenceH2PersistenceDAO.class); private static final String GET_SQL = "select * from {0} where {1} = ?"; + public NodeReferenceH2PersistenceDAO(H2Client client) { + super(client); + } + @Override public NodeReference get(String id) { H2Client client = getClient(); String sql = SqlBuilder.buildSql(GET_SQL, NodeReferenceTable.TABLE, NodeReferenceTable.COLUMN_ID); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeReferenceH2UIDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeReferenceH2UIDAO.java index 9e0d43d53..cbcfba112 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeReferenceH2UIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/NodeReferenceH2UIDAO.java @@ -41,6 +41,10 @@ public class NodeReferenceH2UIDAO extends H2DAO implements INodeReferenceUIDAO { private static final String NODE_REFERENCE_SQL = "select {8}, {9}, {10}, sum({0}) as {0}, sum({1}) as {1}, sum({2}) as {2}, " + "sum({3}) as {3}, sum({4}) as {4}, sum({5}) as {5} from {6} where {7} >= ? and {7} <= ? group by {8}, {9}, {10} limit 100"; + public NodeReferenceH2UIDAO(H2Client client) { + super(client); + } + @Override public JsonArray load(long startTime, long endTime) { H2Client client = getClient(); JsonArray nodeRefResSumArray = new JsonArray(); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentCostH2PersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentCostH2PersistenceDAO.java index acb3159c7..eae890307 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentCostH2PersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentCostH2PersistenceDAO.java @@ -20,6 +20,7 @@ package org.skywalking.apm.collector.storage.h2.dao; import java.util.HashMap; import java.util.Map; +import org.skywalking.apm.collector.client.h2.H2Client; import org.skywalking.apm.collector.storage.base.sql.SqlBuilder; import org.skywalking.apm.collector.storage.dao.ISegmentCostPersistenceDAO; import org.skywalking.apm.collector.storage.h2.base.dao.H2DAO; @@ -36,6 +37,10 @@ public class SegmentCostH2PersistenceDAO extends H2DAO implements ISegmentCostPe private final Logger logger = LoggerFactory.getLogger(SegmentCostH2PersistenceDAO.class); + public SegmentCostH2PersistenceDAO(H2Client client) { + super(client); + } + @Override public SegmentCost get(String id) { return null; } diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentCostH2UIDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentCostH2UIDAO.java index b6a75ec3d..34081c4f1 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentCostH2UIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentCostH2UIDAO.java @@ -44,6 +44,10 @@ public class SegmentCostH2UIDAO extends H2DAO implements ISegmentCostUIDAO { private final Logger logger = LoggerFactory.getLogger(SegmentCostH2UIDAO.class); private static final String GET_SEGMENT_COST_SQL = "select * from {0} where {1} >= ? and {1} <= ?"; + public SegmentCostH2UIDAO(H2Client client) { + super(client); + } + @Override public JsonObject loadTop(long startTime, long endTime, long minCost, long maxCost, String operationName, Error error, int applicationId, List segmentIds, int limit, int from, Sort sort) { H2Client client = getClient(); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentH2PersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentH2PersistenceDAO.java index 75430d603..4f84b1c61 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentH2PersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentH2PersistenceDAO.java @@ -20,6 +20,7 @@ package org.skywalking.apm.collector.storage.h2.dao; import java.util.HashMap; import java.util.Map; +import org.skywalking.apm.collector.client.h2.H2Client; import org.skywalking.apm.collector.storage.base.sql.SqlBuilder; import org.skywalking.apm.collector.storage.dao.ISegmentPersistenceDAO; import org.skywalking.apm.collector.storage.h2.base.dao.H2DAO; @@ -36,6 +37,10 @@ public class SegmentH2PersistenceDAO extends H2DAO implements ISegmentPersistenc private final Logger logger = LoggerFactory.getLogger(SegmentH2PersistenceDAO.class); + public SegmentH2PersistenceDAO(H2Client client) { + super(client); + } + @Override public Segment get(String id) { return null; } diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentH2UIDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentH2UIDAO.java index 1ec982ff3..69da56f9a 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentH2UIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/SegmentH2UIDAO.java @@ -38,6 +38,10 @@ public class SegmentH2UIDAO extends H2DAO implements ISegmentUIDAO { private final Logger logger = LoggerFactory.getLogger(SegmentH2UIDAO.class); private static final String GET_SEGMENT_SQL = "select {0} from {1} where {2} = ?"; + public SegmentH2UIDAO(H2Client client) { + super(client); + } + @Override public TraceSegmentObject load(String segmentId) { H2Client client = getClient(); String sql = SqlBuilder.buildSql(GET_SEGMENT_SQL, SegmentTable.COLUMN_DATA_BINARY, diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceEntryH2PersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceEntryH2PersistenceDAO.java index 4d69f599e..d74abfda5 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceEntryH2PersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceEntryH2PersistenceDAO.java @@ -43,6 +43,10 @@ public class ServiceEntryH2PersistenceDAO extends H2DAO implements IServiceEntry private final Logger logger = LoggerFactory.getLogger(ServiceEntryH2PersistenceDAO.class); private static final String GET_SERVICE_ENTRY_SQL = "select * from {0} where {1} = ?"; + public ServiceEntryH2PersistenceDAO(H2Client client) { + super(client); + } + @Override public ServiceEntry get(String id) { H2Client client = getClient(); String sql = SqlBuilder.buildSql(GET_SERVICE_ENTRY_SQL, ServiceEntryTable.TABLE, ServiceEntryTable.COLUMN_ID); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceEntryH2UIDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceEntryH2UIDAO.java index cdbc6b826..da2d44e51 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceEntryH2UIDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceEntryH2UIDAO.java @@ -43,6 +43,10 @@ public class ServiceEntryH2UIDAO extends H2DAO implements IServiceEntryUIDAO { private final Logger logger = LoggerFactory.getLogger(ServiceEntryH2UIDAO.class); private static final String GET_SERVICE_ENTRY_SQL = "select * from {0} where {1} >= ? and {2} <= ?"; + public ServiceEntryH2UIDAO(H2Client client) { + super(client); + } + @Override public JsonObject load(int applicationId, String entryServiceName, long startTime, long endTime, int from, int size) { H2Client client = getClient(); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceNameH2CacheDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceNameH2CacheDAO.java index af1641d09..7c9a14d39 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceNameH2CacheDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceNameH2CacheDAO.java @@ -23,9 +23,9 @@ import java.sql.SQLException; import org.skywalking.apm.collector.client.h2.H2Client; import org.skywalking.apm.collector.client.h2.H2ClientException; import org.skywalking.apm.collector.core.util.Const; +import org.skywalking.apm.collector.storage.base.sql.SqlBuilder; import org.skywalking.apm.collector.storage.dao.IServiceNameCacheDAO; import org.skywalking.apm.collector.storage.h2.base.dao.H2DAO; -import org.skywalking.apm.collector.storage.base.sql.SqlBuilder; import org.skywalking.apm.collector.storage.table.register.ServiceNameTable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -40,6 +40,10 @@ public class ServiceNameH2CacheDAO extends H2DAO implements IServiceNameCacheDAO private static final String GET_SERVICE_NAME_SQL = "select {0},{1} from {2} where {3} = ?"; private static final String GET_SERVICE_ID_SQL = "select {0} from {1} where {2} = ? and {3} = ? limit 1"; + public ServiceNameH2CacheDAO(H2Client client) { + super(client); + } + @Override public String getServiceName(int serviceId) { H2Client client = getClient(); String sql = SqlBuilder.buildSql(GET_SERVICE_NAME_SQL, ServiceNameTable.COLUMN_APPLICATION_ID, ServiceNameTable.COLUMN_SERVICE_NAME, diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceNameH2StreamDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceNameH2RegisterDAO.java similarity index 90% rename from apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceNameH2StreamDAO.java rename to apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceNameH2RegisterDAO.java index 562e8586b..d79383497 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceNameH2StreamDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceNameH2RegisterDAO.java @@ -23,7 +23,7 @@ import java.util.Map; import org.skywalking.apm.collector.client.h2.H2Client; import org.skywalking.apm.collector.client.h2.H2ClientException; import org.skywalking.apm.collector.storage.base.sql.SqlBuilder; -import org.skywalking.apm.collector.storage.dao.IServiceNameStreamDAO; +import org.skywalking.apm.collector.storage.dao.IServiceNameRegisterDAO; import org.skywalking.apm.collector.storage.h2.base.dao.H2DAO; import org.skywalking.apm.collector.storage.table.register.ServiceName; import org.skywalking.apm.collector.storage.table.register.ServiceNameTable; @@ -33,8 +33,13 @@ import org.slf4j.LoggerFactory; /** * @author peng-yongsheng, clevertension */ -public class ServiceNameH2StreamDAO extends H2DAO implements IServiceNameStreamDAO { - private final Logger logger = LoggerFactory.getLogger(ServiceNameH2StreamDAO.class); +public class ServiceNameH2RegisterDAO extends H2DAO implements IServiceNameRegisterDAO { + + private final Logger logger = LoggerFactory.getLogger(ServiceNameH2RegisterDAO.class); + + public ServiceNameH2RegisterDAO(H2Client client) { + super(client); + } @Override public int getMaxServiceId() { diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceReferenceH2PersistenceDAO.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceReferenceH2PersistenceDAO.java index 2800f4480..f19b289b2 100644 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceReferenceH2PersistenceDAO.java +++ b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/dao/ServiceReferenceH2PersistenceDAO.java @@ -43,6 +43,10 @@ public class ServiceReferenceH2PersistenceDAO extends H2DAO implements IServiceR private final Logger logger = LoggerFactory.getLogger(ServiceReferenceH2PersistenceDAO.class); private static final String GET_SQL = "select * from {0} where {1} = ?"; + public ServiceReferenceH2PersistenceDAO(H2Client client) { + super(client); + } + @Override public ServiceReference get(String id) { H2Client client = getClient(); diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/service/H2DAOService.java b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/service/H2DAOService.java deleted file mode 100644 index 007587610..000000000 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/java/org/skywalking/apm/collector/storage/h2/service/H2DAOService.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright 2017, OpenSkywalking Organization All rights reserved. - * - * Licensed 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. - * - * Project repository: https://github.com/OpenSkywalking/skywalking - */ - -package org.skywalking.apm.collector.storage.h2.service; - -import org.skywalking.apm.collector.storage.base.dao.DAO; -import org.skywalking.apm.collector.storage.base.dao.DAOContainer; -import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; - -/** - * @author peng-yongsheng - */ -public class H2DAOService implements DAOService { - - private final DAOContainer daoContainer; - - public H2DAOService(DAOContainer daoContainer) { - this.daoContainer = daoContainer; - } - - @Override public DAO get(Class daoInterfaceClass) { - return daoContainer.get(daoInterfaceClass.getName()); - } - - @Override public IPersistenceDAO getPersistenceDAO(Class daoInterfaceClass) { - return daoContainer.getPersistenceDAO(daoInterfaceClass.getName()); - } -} diff --git a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/resources/META-INF/defines/h2_dao.define b/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/resources/META-INF/defines/h2_dao.define deleted file mode 100644 index 7142ddeb2..000000000 --- a/apm-collector/apm-collector-storage/collector-storage-h2-provider/src/main/resources/META-INF/defines/h2_dao.define +++ /dev/null @@ -1,35 +0,0 @@ -org.skywalking.apm.collector.storage.h2.dao.ApplicationH2CacheDAO -org.skywalking.apm.collector.storage.h2.dao.InstanceH2CacheDAO -org.skywalking.apm.collector.storage.h2.dao.ServiceNameH2CacheDAO - -org.skywalking.apm.collector.storage.h2.dao.ApplicationH2StreamDAO -org.skywalking.apm.collector.storage.h2.dao.InstanceH2StreamDAO -org.skywalking.apm.collector.storage.h2.dao.ServiceNameH2StreamDAO - -org.skywalking.apm.collector.storage.h2.dao.CpuMetricH2PersistenceDAO -org.skywalking.apm.collector.storage.h2.dao.GCMetricH2PersistenceDAO -org.skywalking.apm.collector.storage.h2.dao.MemoryMetricH2PersistenceDAO -org.skywalking.apm.collector.storage.h2.dao.MemoryPoolMetricH2PersistenceDAO -org.skywalking.apm.collector.storage.h2.dao.GlobalTraceH2PersistenceDAO -org.skywalking.apm.collector.storage.h2.dao.InstanceHeartBeatH2PersistenceDAO -org.skywalking.apm.collector.storage.h2.dao.InstPerformanceH2PersistenceDAO -org.skywalking.apm.collector.storage.h2.dao.NodeComponentH2PersistenceDAO -org.skywalking.apm.collector.storage.h2.dao.NodeMappingH2PersistenceDAO -org.skywalking.apm.collector.storage.h2.dao.NodeReferenceH2PersistenceDAO -org.skywalking.apm.collector.storage.h2.dao.SegmentCostH2PersistenceDAO -org.skywalking.apm.collector.storage.h2.dao.SegmentH2PersistenceDAO -org.skywalking.apm.collector.storage.h2.dao.ServiceEntryH2PersistenceDAO -org.skywalking.apm.collector.storage.h2.dao.ServiceReferenceH2PersistenceDAO - -org.skywalking.apm.collector.storage.h2.dao.InstanceH2UIDAO -org.skywalking.apm.collector.storage.h2.dao.InstPerformanceH2UIDAO -org.skywalking.apm.collector.storage.h2.dao.CpuMetricH2UIDAO -org.skywalking.apm.collector.storage.h2.dao.GCMetricH2UIDAO -org.skywalking.apm.collector.storage.h2.dao.MemoryMetricH2UIDAO -org.skywalking.apm.collector.storage.h2.dao.GlobalTraceH2UIDAO -org.skywalking.apm.collector.storage.h2.dao.NodeComponentH2UIDAO -org.skywalking.apm.collector.storage.h2.dao.NodeMappingH2UIDAO -org.skywalking.apm.collector.storage.h2.dao.NodeReferenceH2UIDAO -org.skywalking.apm.collector.storage.h2.dao.SegmentCostH2UIDAO -org.skywalking.apm.collector.storage.h2.dao.SegmentH2UIDAO -org.skywalking.apm.collector.storage.h2.dao.ServiceEntryH2UIDAO \ No newline at end of file diff --git a/apm-collector/apm-collector-stream/collector-stream-provider/src/main/java/org/skywalking/apm/collector/stream/worker/impl/PersistenceWorker.java b/apm-collector/apm-collector-stream/collector-stream-provider/src/main/java/org/skywalking/apm/collector/stream/worker/impl/PersistenceWorker.java index 53e415621..c6e8063cd 100644 --- a/apm-collector/apm-collector-stream/collector-stream-provider/src/main/java/org/skywalking/apm/collector/stream/worker/impl/PersistenceWorker.java +++ b/apm-collector/apm-collector-stream/collector-stream-provider/src/main/java/org/skywalking/apm/collector/stream/worker/impl/PersistenceWorker.java @@ -27,7 +27,6 @@ import org.skywalking.apm.collector.core.util.ObjectUtils; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.base.dao.IBatchDAO; import org.skywalking.apm.collector.storage.base.dao.IPersistenceDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.stream.worker.base.AbstractLocalAsyncWorker; import org.skywalking.apm.collector.stream.worker.base.WorkerException; import org.skywalking.apm.collector.stream.worker.impl.data.DataCache; @@ -42,12 +41,12 @@ public abstract class PersistenceWorker private final Logger logger = LoggerFactory.getLogger(PersistenceWorker.class); private final DataCache dataCache; - private final DAOService daoService; + private final IBatchDAO batchDAO; public PersistenceWorker(ModuleManager moduleManager) { super(moduleManager); this.dataCache = new DataCache(); - this.daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); + this.batchDAO = moduleManager.find(StorageModule.NAME).getService(IBatchDAO.class); } public final void flushAndSwitch() { @@ -67,8 +66,7 @@ public abstract class PersistenceWorker dataCache.switchPointer(); List collection = buildBatchCollection(); - IBatchDAO dao = (IBatchDAO)daoService.get(IBatchDAO.class); - dao.batchPersistence(collection); + batchDAO.batchPersistence(collection); } } finally { dataCache.trySwitchPointerFinally(); diff --git a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/ApplicationService.java b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/ApplicationService.java index 139bd754b..9fa14e701 100644 --- a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/ApplicationService.java +++ b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/ApplicationService.java @@ -25,23 +25,21 @@ import org.skywalking.apm.collector.cache.service.ApplicationCacheService; import org.skywalking.apm.collector.core.module.ModuleManager; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.dao.IInstanceUIDAO; -import org.skywalking.apm.collector.storage.service.DAOService; /** * @author peng-yongsheng */ public class ApplicationService { - private final DAOService daoService; + private final IInstanceUIDAO instanceDAO; private final ApplicationCacheService applicationCacheService; public ApplicationService(ModuleManager moduleManager) { - this.daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); + this.instanceDAO = moduleManager.find(StorageModule.NAME).getService(IInstanceUIDAO.class); this.applicationCacheService = moduleManager.find(CacheModule.NAME).getService(ApplicationCacheService.class); } public JsonArray getApplications(long startTime, long endTime) { - IInstanceUIDAO instanceDAO = (IInstanceUIDAO)daoService.get(IInstanceUIDAO.class); JsonArray applications = instanceDAO.getApplications(startTime, endTime); applications.forEach(jsonElement -> { diff --git a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/InstanceHealthService.java b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/InstanceHealthService.java index 82eb9c09b..b4a86e9a8 100644 --- a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/InstanceHealthService.java +++ b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/InstanceHealthService.java @@ -29,7 +29,6 @@ import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.dao.IGCMetricUIDAO; import org.skywalking.apm.collector.storage.dao.IInstPerformanceUIDAO; import org.skywalking.apm.collector.storage.dao.IInstanceUIDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.register.Instance; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -41,11 +40,15 @@ public class InstanceHealthService { private final Logger logger = LoggerFactory.getLogger(InstanceHealthService.class); - private final DAOService daoService; + private final IGCMetricUIDAO gcMetricDAO; + private final IInstanceUIDAO instanceDAO; + private final IInstPerformanceUIDAO instPerformanceDAO; private final ApplicationCacheService applicationCacheService; public InstanceHealthService(ModuleManager moduleManager) { - this.daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); + this.gcMetricDAO = moduleManager.find(StorageModule.NAME).getService(IGCMetricUIDAO.class); + this.instanceDAO = moduleManager.find(StorageModule.NAME).getService(IInstanceUIDAO.class); + this.instPerformanceDAO = moduleManager.find(StorageModule.NAME).getService(IInstPerformanceUIDAO.class); this.applicationCacheService = moduleManager.find(CacheModule.NAME).getService(ApplicationCacheService.class); } @@ -54,7 +57,6 @@ public class InstanceHealthService { long[] timeBuckets = TimeBucketUtils.INSTANCE.getFiveSecondTimeBuckets(timeBucket); long halfHourBeforeTimeBucket = TimeBucketUtils.INSTANCE.addSecondForSecondTimeBucket(TimeBucketUtils.TimeBucketType.SECOND.name(), timeBucket, -60 * 30); - IInstanceUIDAO instanceDAO = (IInstanceUIDAO)daoService.get(IInstanceUIDAO.class); List instanceList = instanceDAO.getInstances(applicationId, halfHourBeforeTimeBucket); JsonArray instances = new JsonArray(); @@ -64,10 +66,8 @@ public class InstanceHealthService { response.addProperty("applicationCode", applicationCacheService.get(applicationId)); response.addProperty("applicationId", applicationId); - IInstPerformanceUIDAO instPerformanceDAO = (IInstPerformanceUIDAO)daoService.get(IInstPerformanceUIDAO.class); IInstPerformanceUIDAO.InstPerformance performance = instPerformanceDAO.get(timeBuckets, instance.getInstanceId()); - IGCMetricUIDAO gcMetricDAO = (IGCMetricUIDAO)daoService.get(IGCMetricUIDAO.class); JsonObject instanceJson = new JsonObject(); instanceJson.addProperty("id", instance.getInstanceId()); if (performance != null) { diff --git a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/InstanceJVMService.java b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/InstanceJVMService.java index 276626905..3af9d2954 100644 --- a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/InstanceJVMService.java +++ b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/InstanceJVMService.java @@ -31,7 +31,6 @@ import org.skywalking.apm.collector.storage.dao.IInstPerformanceUIDAO; import org.skywalking.apm.collector.storage.dao.IInstanceUIDAO; import org.skywalking.apm.collector.storage.dao.IMemoryMetricUIDAO; import org.skywalking.apm.collector.storage.dao.IMemoryPoolMetricUIDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.register.Instance; import org.skywalking.apm.network.proto.PoolType; import org.slf4j.Logger; @@ -46,14 +45,23 @@ public class InstanceJVMService { private final Gson gson = new Gson(); - private final DAOService daoService; + private final IInstanceUIDAO instanceDAO; + private final ICpuMetricUIDAO cpuMetricDAO; + private final IGCMetricUIDAO gcMetricDAO; + private final IMemoryMetricUIDAO memoryMetricDAO; + private final IMemoryPoolMetricUIDAO memoryPoolMetricDAO; + private final IInstPerformanceUIDAO instPerformanceDAO; public InstanceJVMService(ModuleManager moduleManager) { - this.daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); + this.instanceDAO = moduleManager.find(StorageModule.NAME).getService(IInstanceUIDAO.class); + this.cpuMetricDAO = moduleManager.find(StorageModule.NAME).getService(ICpuMetricUIDAO.class); + this.gcMetricDAO = moduleManager.find(StorageModule.NAME).getService(IGCMetricUIDAO.class); + this.memoryMetricDAO = moduleManager.find(StorageModule.NAME).getService(IMemoryMetricUIDAO.class); + this.memoryPoolMetricDAO = moduleManager.find(StorageModule.NAME).getService(IMemoryPoolMetricUIDAO.class); + this.instPerformanceDAO = moduleManager.find(StorageModule.NAME).getService(IInstPerformanceUIDAO.class); } public JsonObject getInstanceOsInfo(int instanceId) { - IInstanceUIDAO instanceDAO = (IInstanceUIDAO)daoService.get(IInstanceUIDAO.class); Instance instance = instanceDAO.getInstance(instanceId); if (ObjectUtils.isEmpty(instance)) { throw new UnexpectedException("instance id: " + instanceId + " not exist."); @@ -66,37 +74,26 @@ public class InstanceJVMService { JsonObject metrics = new JsonObject(); for (String metricType : metricTypes) { if (metricType.toLowerCase().equals(MetricType.cpu.name())) { - ICpuMetricUIDAO cpuMetricDAO = (ICpuMetricUIDAO)daoService.get(ICpuMetricUIDAO.class); metrics.addProperty(MetricType.cpu.name(), cpuMetricDAO.getMetric(instanceId, timeBucket)); } else if (metricType.toLowerCase().equals(MetricType.gc.name())) { - IGCMetricUIDAO gcMetricDAO = (IGCMetricUIDAO)daoService.get(IGCMetricUIDAO.class); metrics.add(MetricType.gc.name(), gcMetricDAO.getMetric(instanceId, timeBucket)); } else if (metricType.toLowerCase().equals(MetricType.tps.name())) { - IInstPerformanceUIDAO instPerformanceDAO = (IInstPerformanceUIDAO)daoService.get(IInstPerformanceUIDAO.class); metrics.addProperty(MetricType.tps.name(), instPerformanceDAO.getTpsMetric(instanceId, timeBucket)); } else if (metricType.toLowerCase().equals(MetricType.resptime.name())) { - IInstPerformanceUIDAO instPerformanceDAO = (IInstPerformanceUIDAO)daoService.get(IInstPerformanceUIDAO.class); metrics.addProperty(MetricType.resptime.name(), instPerformanceDAO.getRespTimeMetric(instanceId, timeBucket)); } else if (metricType.toLowerCase().equals(MetricType.heapmemory.name())) { - IMemoryMetricUIDAO memoryMetricDAO = (IMemoryMetricUIDAO)daoService.get(IMemoryMetricUIDAO.class); metrics.add(MetricType.heapmemory.name(), memoryMetricDAO.getMetric(instanceId, timeBucket, true)); } else if (metricType.toLowerCase().equals(MetricType.nonheapmemory.name())) { - IMemoryMetricUIDAO memoryMetricDAO = (IMemoryMetricUIDAO)daoService.get(IMemoryMetricUIDAO.class); metrics.add(MetricType.nonheapmemory.name(), memoryMetricDAO.getMetric(instanceId, timeBucket, false)); } else if (metricType.toLowerCase().equals(MetricType.permgen.name())) { - IMemoryPoolMetricUIDAO memoryPoolMetricDAO = (IMemoryPoolMetricUIDAO)daoService.get(IMemoryPoolMetricUIDAO.class); metrics.add(MetricType.permgen.name(), memoryPoolMetricDAO.getMetric(instanceId, timeBucket, PoolType.PERMGEN_USAGE_VALUE)); } else if (metricType.toLowerCase().equals(MetricType.metaspace.name())) { - IMemoryPoolMetricUIDAO memoryPoolMetricDAO = (IMemoryPoolMetricUIDAO)daoService.get(IMemoryPoolMetricUIDAO.class); metrics.add(MetricType.metaspace.name(), memoryPoolMetricDAO.getMetric(instanceId, timeBucket, PoolType.METASPACE_USAGE_VALUE)); } else if (metricType.toLowerCase().equals(MetricType.newgen.name())) { - IMemoryPoolMetricUIDAO memoryPoolMetricDAO = (IMemoryPoolMetricUIDAO)daoService.get(IMemoryPoolMetricUIDAO.class); metrics.add(MetricType.newgen.name(), memoryPoolMetricDAO.getMetric(instanceId, timeBucket, PoolType.NEWGEN_USAGE_VALUE)); } else if (metricType.toLowerCase().equals(MetricType.oldgen.name())) { - IMemoryPoolMetricUIDAO memoryPoolMetricDAO = (IMemoryPoolMetricUIDAO)daoService.get(IMemoryPoolMetricUIDAO.class); metrics.add(MetricType.oldgen.name(), memoryPoolMetricDAO.getMetric(instanceId, timeBucket, PoolType.OLDGEN_USAGE_VALUE)); } else if (metricType.toLowerCase().equals(MetricType.survivor.name())) { - IMemoryPoolMetricUIDAO memoryPoolMetricDAO = (IMemoryPoolMetricUIDAO)daoService.get(IMemoryPoolMetricUIDAO.class); metrics.add(MetricType.survivor.name(), memoryPoolMetricDAO.getMetric(instanceId, timeBucket, PoolType.SURVIVOR_USAGE_VALUE)); } else { throw new UnexpectedException("unexpected metric type"); @@ -110,37 +107,26 @@ public class InstanceJVMService { JsonObject metrics = new JsonObject(); for (String metricType : metricTypes) { if (metricType.toLowerCase().equals(MetricType.cpu.name())) { - ICpuMetricUIDAO cpuMetricDAO = (ICpuMetricUIDAO)daoService.get(ICpuMetricUIDAO.class); metrics.add(MetricType.cpu.name(), cpuMetricDAO.getMetric(instanceId, startTimeBucket, endTimeBucket)); } else if (metricType.toLowerCase().equals(MetricType.gc.name())) { - IGCMetricUIDAO gcMetricDAO = (IGCMetricUIDAO)daoService.get(IGCMetricUIDAO.class); metrics.add(MetricType.gc.name(), gcMetricDAO.getMetric(instanceId, startTimeBucket, endTimeBucket)); } else if (metricType.toLowerCase().equals(MetricType.tps.name())) { - IInstPerformanceUIDAO instPerformanceDAO = (IInstPerformanceUIDAO)daoService.get(IInstPerformanceUIDAO.class); metrics.add(MetricType.tps.name(), instPerformanceDAO.getTpsMetric(instanceId, startTimeBucket, endTimeBucket)); } else if (metricType.toLowerCase().equals(MetricType.resptime.name())) { - IInstPerformanceUIDAO instPerformanceDAO = (IInstPerformanceUIDAO)daoService.get(IInstPerformanceUIDAO.class); metrics.add(MetricType.resptime.name(), instPerformanceDAO.getRespTimeMetric(instanceId, startTimeBucket, endTimeBucket)); } else if (metricType.toLowerCase().equals(MetricType.heapmemory.name())) { - IMemoryMetricUIDAO memoryMetricDAO = (IMemoryMetricUIDAO)daoService.get(IMemoryMetricUIDAO.class); metrics.add(MetricType.heapmemory.name(), memoryMetricDAO.getMetric(instanceId, startTimeBucket, endTimeBucket, true)); } else if (metricType.toLowerCase().equals(MetricType.nonheapmemory.name())) { - IMemoryMetricUIDAO memoryMetricDAO = (IMemoryMetricUIDAO)daoService.get(IMemoryMetricUIDAO.class); metrics.add(MetricType.nonheapmemory.name(), memoryMetricDAO.getMetric(instanceId, startTimeBucket, endTimeBucket, false)); } else if (metricType.toLowerCase().equals(MetricType.permgen.name())) { - IMemoryPoolMetricUIDAO memoryPoolMetricDAO = (IMemoryPoolMetricUIDAO)daoService.get(IMemoryPoolMetricUIDAO.class); metrics.add(MetricType.permgen.name(), memoryPoolMetricDAO.getMetric(instanceId, startTimeBucket, endTimeBucket, PoolType.PERMGEN_USAGE_VALUE)); } else if (metricType.toLowerCase().equals(MetricType.metaspace.name())) { - IMemoryPoolMetricUIDAO memoryPoolMetricDAO = (IMemoryPoolMetricUIDAO)daoService.get(IMemoryPoolMetricUIDAO.class); metrics.add(MetricType.metaspace.name(), memoryPoolMetricDAO.getMetric(instanceId, startTimeBucket, endTimeBucket, PoolType.METASPACE_USAGE_VALUE)); } else if (metricType.toLowerCase().equals(MetricType.newgen.name())) { - IMemoryPoolMetricUIDAO memoryPoolMetricDAO = (IMemoryPoolMetricUIDAO)daoService.get(IMemoryPoolMetricUIDAO.class); metrics.add(MetricType.newgen.name(), memoryPoolMetricDAO.getMetric(instanceId, startTimeBucket, endTimeBucket, PoolType.NEWGEN_USAGE_VALUE)); } else if (metricType.toLowerCase().equals(MetricType.oldgen.name())) { - IMemoryPoolMetricUIDAO memoryPoolMetricDAO = (IMemoryPoolMetricUIDAO)daoService.get(IMemoryPoolMetricUIDAO.class); metrics.add(MetricType.oldgen.name(), memoryPoolMetricDAO.getMetric(instanceId, startTimeBucket, endTimeBucket, PoolType.OLDGEN_USAGE_VALUE)); } else if (metricType.toLowerCase().equals(MetricType.survivor.name())) { - IMemoryPoolMetricUIDAO memoryPoolMetricDAO = (IMemoryPoolMetricUIDAO)daoService.get(IMemoryPoolMetricUIDAO.class); metrics.add(MetricType.survivor.name(), memoryPoolMetricDAO.getMetric(instanceId, startTimeBucket, endTimeBucket, PoolType.SURVIVOR_USAGE_VALUE)); } else { throw new UnexpectedException("unexpected metric type"); diff --git a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/SegmentTopService.java b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/SegmentTopService.java index c11422c09..ed807b458 100644 --- a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/SegmentTopService.java +++ b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/SegmentTopService.java @@ -26,7 +26,6 @@ import org.skywalking.apm.collector.core.util.StringUtils; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.dao.IGlobalTraceUIDAO; import org.skywalking.apm.collector.storage.dao.ISegmentCostUIDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -37,10 +36,12 @@ public class SegmentTopService { private final Logger logger = LoggerFactory.getLogger(SegmentTopService.class); - private final DAOService daoService; + private final IGlobalTraceUIDAO globalTraceDAO; + private final ISegmentCostUIDAO segmentCostDAO; public SegmentTopService(ModuleManager moduleManager) { - this.daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); + this.globalTraceDAO = moduleManager.find(StorageModule.NAME).getService(IGlobalTraceUIDAO.class); + this.segmentCostDAO = moduleManager.find(StorageModule.NAME).getService(ISegmentCostUIDAO.class); } public JsonObject loadTop(long startTime, long endTime, long minCost, long maxCost, String operationName, @@ -50,10 +51,8 @@ public class SegmentTopService { List segmentIds = new LinkedList<>(); if (StringUtils.isNotEmpty(globalTraceId)) { - IGlobalTraceUIDAO globalTraceDAO = (IGlobalTraceUIDAO)daoService.get(IGlobalTraceUIDAO.class); segmentIds = globalTraceDAO.getSegmentIds(globalTraceId); } - ISegmentCostUIDAO segmentCostDAO = (ISegmentCostUIDAO)daoService.get(ISegmentCostUIDAO.class); return segmentCostDAO.loadTop(startTime, endTime, minCost, maxCost, operationName, error, applicationId, segmentIds, limit, from, sort); } } diff --git a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/ServiceTreeService.java b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/ServiceTreeService.java index e02faa90f..7aa5f5dd1 100644 --- a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/ServiceTreeService.java +++ b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/ServiceTreeService.java @@ -32,7 +32,6 @@ import org.skywalking.apm.collector.core.util.ObjectUtils; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.dao.IServiceEntryUIDAO; import org.skywalking.apm.collector.storage.dao.IServiceReferenceUIDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.collector.storage.table.service.ServiceEntryTable; import org.skywalking.apm.collector.storage.table.serviceref.ServiceReferenceTable; @@ -41,18 +40,18 @@ import org.skywalking.apm.collector.storage.table.serviceref.ServiceReferenceTab */ public class ServiceTreeService { - private final DAOService daoService; + private final IServiceEntryUIDAO serviceEntryDAO; + private final IServiceReferenceUIDAO serviceReferenceDAO; private final ApplicationCacheService applicationCacheService; public ServiceTreeService(ModuleManager moduleManager) { - this.daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); + this.serviceEntryDAO = moduleManager.find(StorageModule.NAME).getService(IServiceEntryUIDAO.class); + this.serviceReferenceDAO = moduleManager.find(StorageModule.NAME).getService(IServiceReferenceUIDAO.class); this.applicationCacheService = moduleManager.find(CacheModule.NAME).getService(ApplicationCacheService.class); } public JsonObject loadEntryService(int applicationId, String entryServiceName, long startTime, long endTime, int from, int size) { - IServiceEntryUIDAO serviceEntryDAO = (IServiceEntryUIDAO)daoService.get(IServiceEntryUIDAO.class); - JsonObject response = serviceEntryDAO.load(applicationId, entryServiceName, startTime, endTime, from, size); JsonArray entryServices = response.get("array").getAsJsonArray(); for (JsonElement element : entryServices) { @@ -66,7 +65,6 @@ public class ServiceTreeService { } public JsonArray loadServiceTree(int entryServiceId, long startTime, long endTime) { - IServiceReferenceUIDAO serviceReferenceDAO = (IServiceReferenceUIDAO)daoService.get(IServiceReferenceUIDAO.class); Map serviceReferenceMap = serviceReferenceDAO.load(entryServiceId, startTime, endTime); return buildTreeData(serviceReferenceMap); } diff --git a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/SpanService.java b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/SpanService.java index 6fdc1afb0..3981e2d13 100644 --- a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/SpanService.java +++ b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/SpanService.java @@ -29,7 +29,6 @@ import org.skywalking.apm.collector.core.util.Const; import org.skywalking.apm.collector.core.util.StringUtils; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.dao.ISegmentUIDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.network.proto.KeyWithStringValue; import org.skywalking.apm.network.proto.LogMessage; import org.skywalking.apm.network.proto.SpanObject; @@ -41,18 +40,17 @@ import org.skywalking.apm.network.trace.component.ComponentsDefine; */ public class SpanService { - private final DAOService daoService; + private final ISegmentUIDAO segmentDAO; private final ServiceNameCacheService serviceNameCacheService; private final ApplicationCacheService applicationCacheService; public SpanService(ModuleManager moduleManager) { - this.daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); + this.segmentDAO = moduleManager.find(StorageModule.NAME).getService(ISegmentUIDAO.class); this.serviceNameCacheService = moduleManager.find(CacheModule.NAME).getService(ServiceNameCacheService.class); this.applicationCacheService = moduleManager.find(CacheModule.NAME).getService(ApplicationCacheService.class); } public JsonObject load(String segmentId, int spanId) { - ISegmentUIDAO segmentDAO = (ISegmentUIDAO)daoService.get(ISegmentUIDAO.class); TraceSegmentObject segmentObject = segmentDAO.load(segmentId); JsonObject spanJson = new JsonObject(); diff --git a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/TimeSynchronousService.java b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/TimeSynchronousService.java index 1fb712a4a..580d59b7b 100644 --- a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/TimeSynchronousService.java +++ b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/TimeSynchronousService.java @@ -21,7 +21,6 @@ package org.skywalking.apm.collector.ui.service; import org.skywalking.apm.collector.core.module.ModuleManager; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.dao.IInstanceUIDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -32,19 +31,17 @@ public class TimeSynchronousService { private final Logger logger = LoggerFactory.getLogger(TimeSynchronousService.class); - private final DAOService daoService; + private final IInstanceUIDAO instanceDAO; public TimeSynchronousService(ModuleManager moduleManager) { - this.daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); + this.instanceDAO = moduleManager.find(StorageModule.NAME).getService(IInstanceUIDAO.class); } public Long allInstanceLastTime() { - IInstanceUIDAO instanceDAO = (IInstanceUIDAO)daoService.get(IInstanceUIDAO.class); return instanceDAO.lastHeartBeatTime(); } public Long instanceLastTime(int applicationInstanceId) { - IInstanceUIDAO instanceDAO = (IInstanceUIDAO)daoService.get(IInstanceUIDAO.class); return instanceDAO.instanceLastHeartBeatTime(applicationInstanceId); } } diff --git a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/TraceDagService.java b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/TraceDagService.java index 4232ded31..65af85c44 100644 --- a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/TraceDagService.java +++ b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/TraceDagService.java @@ -25,7 +25,6 @@ import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.dao.INodeComponentUIDAO; import org.skywalking.apm.collector.storage.dao.INodeMappingUIDAO; import org.skywalking.apm.collector.storage.dao.INodeReferenceUIDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -36,21 +35,22 @@ public class TraceDagService { private final Logger logger = LoggerFactory.getLogger(TraceDagService.class); - private final DAOService daoService; + private final INodeComponentUIDAO nodeComponentDAO; + private final INodeMappingUIDAO nodeMappingDAO; + private final INodeReferenceUIDAO nodeRefSumDAO; public TraceDagService(ModuleManager moduleManager) { - this.daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); + this.nodeComponentDAO = moduleManager.find(StorageModule.NAME).getService(INodeComponentUIDAO.class); + this.nodeMappingDAO = moduleManager.find(StorageModule.NAME).getService(INodeMappingUIDAO.class); + this.nodeRefSumDAO = moduleManager.find(StorageModule.NAME).getService(INodeReferenceUIDAO.class); } public JsonObject load(long startTime, long endTime) { logger.debug("startTime: {}, endTime: {}", startTime, endTime); - INodeComponentUIDAO nodeComponentDAO = (INodeComponentUIDAO)daoService.get(INodeComponentUIDAO.class); JsonArray nodeComponentArray = nodeComponentDAO.load(startTime, endTime); - INodeMappingUIDAO nodeMappingDAO = (INodeMappingUIDAO)daoService.get(INodeMappingUIDAO.class); JsonArray nodeMappingArray = nodeMappingDAO.load(startTime, endTime); - INodeReferenceUIDAO nodeRefSumDAO = (INodeReferenceUIDAO)daoService.get(INodeReferenceUIDAO.class); JsonArray nodeRefSumArray = nodeRefSumDAO.load(startTime, endTime); TraceDagDataBuilder builder = new TraceDagDataBuilder(); diff --git a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/TraceStackService.java b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/TraceStackService.java index ea492b490..56678c3d8 100644 --- a/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/TraceStackService.java +++ b/apm-collector/apm-collector-ui/collector-ui-jetty-provider/src/main/java/org/skywalking/apm/collector/ui/service/TraceStackService.java @@ -33,7 +33,6 @@ import org.skywalking.apm.collector.core.util.StringUtils; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.dao.IGlobalTraceUIDAO; import org.skywalking.apm.collector.storage.dao.ISegmentUIDAO; -import org.skywalking.apm.collector.storage.service.DAOService; import org.skywalking.apm.network.proto.SpanObject; import org.skywalking.apm.network.proto.TraceSegmentObject; import org.skywalking.apm.network.proto.TraceSegmentReference; @@ -44,20 +43,19 @@ import org.skywalking.apm.network.proto.UniqueId; */ public class TraceStackService { - private final DAOService daoService; + private final IGlobalTraceUIDAO globalTraceDAO; + private final ISegmentUIDAO segmentDAO; private final ApplicationCacheService applicationCacheService; private final ServiceNameCacheService serviceNameCacheService; public TraceStackService(ModuleManager moduleManager) { - this.daoService = moduleManager.find(StorageModule.NAME).getService(DAOService.class); + this.globalTraceDAO = moduleManager.find(StorageModule.NAME).getService(IGlobalTraceUIDAO.class); + this.segmentDAO = moduleManager.find(StorageModule.NAME).getService(ISegmentUIDAO.class); this.applicationCacheService = moduleManager.find(CacheModule.NAME).getService(ApplicationCacheService.class); this.serviceNameCacheService = moduleManager.find(CacheModule.NAME).getService(ServiceNameCacheService.class); } public JsonArray load(String globalTraceId) { - IGlobalTraceUIDAO globalTraceDAO = (IGlobalTraceUIDAO)daoService.get(IGlobalTraceUIDAO.class); - ISegmentUIDAO segmentDAO = (ISegmentUIDAO)daoService.get(ISegmentUIDAO.class); - List spans = new ArrayList<>(); List segmentIds = globalTraceDAO.getSegmentIds(globalTraceId); if (CollectionUtils.isNotEmpty(segmentIds)) {