Elasticsearch重新索引失败的超时响应

时间:2019-09-17 12:12:06

标签: elasticsearch reindex

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

当index1的大小太大时,我的问题浮出水面,因此超时响应从Elasticsearch返回。还有另一个查询(GET _tasks?detailed = true&actions = * reindex),它显示了重新索引过程。但是我无法弄清楚如果在重新索引期间出现错误,如何看到错误以及为什么我的重新索引任务失败。

我不喜欢的一种可能的解决方案是增加Elasticsearch的超时响应。有什么解决方案可以使我看到错误而又不增加超时时间吗?

1 个答案:

答案 0 :(得分:1)

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

然后您可以使用Task API使用以下命令检查任务的状态:

GET .tasks/task/<taskId>

即使重新索引完成,任务也将保留在索引中,您可以检查是否存在错误。

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

DELETE .tasks/task/<taskId>