1、pom文件
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>
2、yml文件配置
spring:
elasticsearch:
rest:
uris: 127.0.0.1:9200
read-timeout: 30s
connection-timeout: 5s
3、定时任务删除索引
import cn.hutool.core.date.DateUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.time.DateUtils;
import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.util.Date;
@Component
@RequiredArgsConstructor
@Slf4j
public class ElasticsearchTask {
private final ElasticsearchOperations elasticsearchOperations;
/**
* 删除30天前索引
*/
@Scheduled(cron = "0 0 2 * * ?")
public void removeIndex() {
log.info("定时任务删除es索引开始");
Date startDate = DateUtils.addDays(new Date(), -30);
String format = DateUtil.format(startDate, "yyyy.MM.dd");
elasticsearchOperations.deleteIndex("logstash-" + format);
log.info("删除es索引结束");
}
}