首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >找出elasticsearch中的索引错误?

找出elasticsearch中的索引错误?
EN

Stack Overflow用户
提问于 2019-02-28 00:27:45
回答 2查看 3.5K关注 0票数 6

我使用的是ES 1.x版本,在为一些文档建立索引时遇到了问题。

有些文档没有索引,我在ES日志中看到的都是下面的几行。

stop throttling indexing: numMergesInFlight=2, maxNumMerges=3

now throttling indexing: numMergesInFlight=4, maxNumMerges=3

我快速地在谷歌上搜索了一下,并理解了这些错误的高级别,但我想了解以下内容:

  1. 将重试被限制的文档吗?
  2. 是否有任何方法可以通过启用一些详细的日志记录来了解被限制的文档,如果是,那么在哪些类中?
  3. 除了上面的INFO日志之外,我没有看到任何错误消息。有没有一种方法可以为索引启用详细日志记录,以显示索引过程中到底发生了什么?
EN

回答 2

Stack Overflow用户

发布于 2019-03-07 17:59:45

您在日志中看到的节流消息不是问题所在。节流在后台进行,以便elasticsearch防止数据段爆炸。请看这里的解释:https://www.elastic.co/guide/en/elasticsearch/guide/current/indexing-performance.html#segments-and-merging

节流不会丢弃消息,而只是减慢索引速度,这会对索引器和外部队列造成背压。

当索引失败时,您应该会得到索引/批量请求的错误响应。为了知道问题出在哪里,您应该检查ES为索引/批量请求提供的响应。日志可能不能说明全部情况,因为它取决于日志级别的配置,这是ES中每个模块的配置。

另一种选择是,您可以对日志进行索引,但是日志没有您认为的时间戳。检查_cat/indices,以查看在索引时文档计数是否增加。如果文档数量增加,这意味着索引的文档已经存在,您需要改进搜索。

票数 1
EN

Stack Overflow用户

发布于 2019-02-28 04:20:57

据我所知,elasticsearch不会进行重试,这取决于客户端(尽管我已经很长时间没有使用1.x了)。例如,由于以下原因,elasticsearch会重试503和429批处理:https://github.com/logstash-plugins/logstash-output-elasticsearch/blob/master/lib/logstash/outputs/elasticsearch.rb#L55

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54910072

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档