elasticsearch 将文档添加到elasticsearch(如果不存在),elasticsearch,logstash,logstash-file,elasticsearch,Logstash,Logstash File" /> elasticsearch 将文档添加到elasticsearch(如果不存在),elasticsearch,logstash,logstash-file,elasticsearch,Logstash,Logstash File" />

elasticsearch 将文档添加到elasticsearch(如果不存在)

elasticsearch 将文档添加到elasticsearch(如果不存在),elasticsearch,logstash,logstash-file,elasticsearch,Logstash,Logstash File,我使用logstash将每天生成的日志中的一些数据传输到elasticsearch,我的logstash输出部分如下所示: 我在日志文件和elasticsearch中保留相同的id(id_ot),但我想做的是:如果新的id(id_ot)已经存在于elasticsearch中,那么我不会插入它。在logstash我怎么做 任何帮助都是非常感激的 您只需添加,如果已经存在具有该ID的文档,则不会对其编制索引 output { elasticsearch { ... action

我使用logstash将每天生成的日志中的一些数据传输到elasticsearch,我的logstash输出部分如下所示:

我在日志文件和elasticsearch中保留相同的id(id_ot),但我想做的是:如果新的id(id_ot)已经存在于elasticsearch中,那么我不会插入它。在logstash我怎么做


任何帮助都是非常感激的

您只需添加,如果已经存在具有该ID的文档,则不会对其编制索引

output {
  elasticsearch {
    ...
    action => "create"
  }
}

您需要的是一个upsert,如果存在,则创建文档或更新现有文档。 elastic通过
doc\u as\u upsert
选项支持此功能


在链接的右侧,您可以选择与您的版本匹配的弹性版本。

doc\u as\u upsert
如果文档不存在,则创建文档。但如果存在,它将更新文档。OP不想更新现有的,但只想创建。所以瓦尔的答案是正确的<代码>创建操作不会更新现有操作。谢谢你,瓦尔。这就是我所需要的。RegardsVal,如果我可以问你另一个问题:我实施ILM是为了管理数据,看起来像:Mohamed,让我们结束这个问题并创建一个新问题,这样我们就不会在这个线程中塞进太多不相关的主题,谢谢