diff --git a/apm-collector/apm-collector-boot/docker/application.yml b/apm-collector/apm-collector-boot/docker/application.yml index 3f5ab8d567b2c8321ba7c43959f7aed9e9db16d1..d3b4f3c74a18fd95743ee84dc6e4d3b81e474942 100644 --- a/apm-collector/apm-collector-boot/docker/application.yml +++ b/apm-collector/apm-collector-boot/docker/application.yml @@ -37,4 +37,4 @@ storage: cluster_nodes: {ES_ADDRESSES} index_shards_number: 2 index_replicas_number: 0 - history_delete_before_days: 3 + ttl: 7 diff --git a/apm-collector/apm-collector-boot/src/main/resources/application.yml b/apm-collector/apm-collector-boot/src/main/resources/application.yml index 4cf075db6b6a1b41ea58d1fe56de05762332919e..2ba018472365e5cca351aad672515bdc34ac1d27 100644 --- a/apm-collector/apm-collector-boot/src/main/resources/application.yml +++ b/apm-collector/apm-collector-boot/src/main/resources/application.yml @@ -37,4 +37,4 @@ ui: # cluster_nodes: localhost:9300 # index_shards_number: 2 # index_replicas_number: 0 -# history_delete_before_days: 3 \ No newline at end of file +# ttl: 7 \ No newline at end of file diff --git a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/HistoryDataDeleteTimer.java b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/DataTTLKeeperTimer.java similarity index 88% rename from apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/HistoryDataDeleteTimer.java rename to apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/DataTTLKeeperTimer.java index 0900a78ec237da1a0c25d8b60ac3bf4484a7ed58..f33f652902d4a1b9f4b061731735c4d7e043448d 100644 --- a/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/HistoryDataDeleteTimer.java +++ b/apm-collector/apm-collector-storage/collector-storage-es-provider/src/main/java/org/skywalking/apm/collector/storage/es/DataTTLKeeperTimer.java @@ -22,7 +22,6 @@ import java.util.Calendar; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; import org.skywalking.apm.collector.core.module.ModuleManager; -import org.skywalking.apm.collector.core.util.CollectionUtils; import org.skywalking.apm.collector.storage.StorageModule; import org.skywalking.apm.collector.storage.dao.ICpuMetricPersistenceDAO; import org.skywalking.apm.collector.storage.dao.IGCMetricPersistenceDAO; @@ -40,14 +39,14 @@ import org.skywalking.apm.collector.storage.dao.IServiceReferencePersistenceDAO; /** * @author peng-yongsheng */ -public class HistoryDataDeleteTimer { +public class DataTTLKeeperTimer { private final ModuleManager moduleManager; private final StorageModuleEsNamingListener namingListener; private final String selfAddress; private final int daysBefore; - public HistoryDataDeleteTimer(ModuleManager moduleManager, + public DataTTLKeeperTimer(ModuleManager moduleManager, StorageModuleEsNamingListener namingListener, String selfAddress, int daysBefore) { this.moduleManager = moduleManager; this.namingListener = namingListener; @@ -59,15 +58,6 @@ public class HistoryDataDeleteTimer { Executors.newSingleThreadScheduledExecutor().scheduleAtFixedRate(this::delete, 1, 8, TimeUnit.HOURS); } - private void tryDelete() { - if (CollectionUtils.isNotEmpty(namingListener.getAddresses())) { - String firstAddress = namingListener.getAddresses().iterator().next(); - if (firstAddress.equals(selfAddress)) { - delete(); - } - } - } - private void delete() { Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(System.currentTimeMillis()); @@ -82,11 +72,11 @@ public class HistoryDataDeleteTimer { calendar.set(Calendar.SECOND, 59); long endTimestamp = calendar.getTimeInMillis(); - deleteJVMMetricData(startTimestamp, endTimestamp); - deleteTraceMetricData(startTimestamp, endTimestamp); + deleteJVMRelatedData(startTimestamp, endTimestamp); + deleteTraceRelatedData(startTimestamp, endTimestamp); } - private void deleteJVMMetricData(long startTimestamp, long endTimestamp) { + private void deleteJVMRelatedData(long startTimestamp, long endTimestamp) { ICpuMetricPersistenceDAO cpuMetricPersistenceDAO = moduleManager.find(StorageModule.NAME).getService(ICpuMetricPersistenceDAO.class); cpuMetricPersistenceDAO.deleteHistory(startTimestamp, endTimestamp); @@ -100,7 +90,7 @@ public class HistoryDataDeleteTimer { memoryPoolMetricPersistenceDAO.deleteHistory(startTimestamp, endTimestamp); } - private void deleteTraceMetricData(long startTimestamp, long endTimestamp) { + private void deleteTraceRelatedData(long startTimestamp, long endTimestamp) { IGlobalTracePersistenceDAO globalTracePersistenceDAO = moduleManager.find(StorageModule.NAME).getService(IGlobalTracePersistenceDAO.class); globalTracePersistenceDAO.deleteHistory(startTimestamp, endTimestamp); 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 b665073445c75a030f0b1f1cdb521e03585561ad..55115a1bc30bafc65d3ed3a01186b1cdc3f722b8 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 @@ -117,10 +117,10 @@ public class StorageModuleEsProvider extends ModuleProvider { private static final String CLUSTER_NODES = "cluster_nodes"; private static final String INDEX_SHARDS_NUMBER = "index_shards_number"; private static final String INDEX_REPLICAS_NUMBER = "index_replicas_number"; - private static final String HISTORY_DELETE_BEFORE_DAYS = "history_delete_before_days"; + private static final String TIME_TO_LIVE_OF_DATA = "ttl"; private ElasticSearchClient elasticSearchClient; - private HistoryDataDeleteTimer deleteTimer; + private DataTTLKeeperTimer deleteTimer; @Override public String name() { return NAME; @@ -163,8 +163,8 @@ public class StorageModuleEsProvider extends ModuleProvider { ModuleListenerService moduleListenerService = getManager().find(ClusterModule.NAME).getService(ModuleListenerService.class); moduleListenerService.addListener(namingListener); - Integer beforeDay = (Integer)config.getOrDefault(HISTORY_DELETE_BEFORE_DAYS, 3); - deleteTimer = new HistoryDataDeleteTimer(getManager(), namingListener, uuId + 0, beforeDay); + Integer beforeDay = (Integer)config.getOrDefault(TIME_TO_LIVE_OF_DATA, 3); + deleteTimer = new DataTTLKeeperTimer(getManager(), namingListener, uuId + 0, beforeDay); } @Override public void notifyAfterCompleted() throws ServiceNotProvidedException {