失败的弹性搜索重新索引的超时响应



我正在使用Elasticsearch的re-index api将文档从一个索引(名为index1(移动到另一个索引(名为index2(。

当 index1 的大小太大时,我的问题就会上升,所以超时响应来自 Elasticsearch。还有另一个查询(GET _tasks?detailed=true&actions=*reindex(显示了重新索引过程。但是,如果在重新索引期间出现错误,我无法弄清楚如何查看错误以及为什么我的重新索引任务失败。

我不喜欢的一个可能的解决方案是增加Elasticsearch的超时响应。有什么解决方案可以在不增加超时的情况下看到错误?

我通常做的是使用?wait_for_completion=false启动重新索引,以便创建后台任务。重新索引调用几乎会立即返回,并告诉您所创建任务的 ID。

然后,您可以使用任务 API 通过以下方式检查任务的状态:

GET .tasks/task/<taskId>

即使重新索引完成,任务也会保留在索引中,您可以检查错误(如果有(。

但是,您有责任使用以下方法删除该文档:

DELETE .tasks/task/<taskId>

最新更新