昨天在解析pinpoint数据从kafka同步到es的时候,需要同logstash一样,仅一天的数据同步到一个es索引中,所以索引后面加了时间戳,但是第二天并没有自动创建第二个索引,资料还是入到前一天的索引中。重启程序之后才会创建索引,但是总不能每次都重启程序把,索引的配置是用枚举来管理的,后来想到枚举是天然的单例模式,自程序启动后,全局只存在一个唯一的实例,故而把LocalDate.now(),拿到方法中进行拼接,测试可用。
/**
* es index和type
*/
@Getter
@AllArgsConstructor(access = AccessLevel.PRIVATE)
enum Index {
/**
* es索引管理
*/
SERVICELEVEL_ADJUSTMENT("pinpoint-servicelevel-"+LocalDate.now(), "servicelevel");
private String indexName;
private String indexType;
}