弹性休息高级api RolloverRequest



我正在尝试使用RolloverRequest自动滚动基于时间的索引。

我的索引格式是log-000001、log-000002等,别名是log

如果我使用REST API,那么我不必提供新的索引名称,因为滚动会自动发生。但我看不到使用高级rest api 获得相同效果的方法

RolloverRequest request = new RolloverRequest(aliasName, newIndexname);

尽管文档中说newIndexName是可选的,但并没有只使用一个参数的构造函数,也没有默认的构造函数。

我的问题是,有没有一种方法可以只将别名传递给RolloverRequest以进行自动滚动?如果没有,是否有类似的计划,或者文件是否具有误导性?

我解决了它。缺少的是一个索引模板。滚动不会从索引中复制现有映射,因此它会以这种方式丢失。如果您创建了一个与别名匹配的索引模板,那么新索引也将具有与旧的滚动索引相同的映射

根据以下链接

https://www.elastic.co/guide/en/elasticsearch/client/java-rest/6.7/java-rest-high-rollover-index.html

指向要滚动的索引的别名(第一个参数(,以及执行滚动操作时新索引的名称。新的索引参数是可选的,可以设置为空

因此您可以按如下方式使用RolloverRequest

RolloverRequest request = new RolloverRequest("alias", null);

最新更新