我使用logstash将每天生成的日志中的一些数据传输到elasticsearch,我的logstash输出部分如下所示:
我在我的日志文件和elasticsearch中都保留了相同的ID(id_ot),但是我想做的是:如果Elasticseach中已经存在新的ID(id_ot),那么我将不插入它。如何在Logstash中做到这一点?
任何帮助都会得到真正的帮助!
答案 0 :(得分:1)
您只需要添加action => create
parameter,如果已经存在具有该ID的文档,则该文档不会被索引
output {
elasticsearch {
...
action => "create"
}
}
答案 1 :(得分:0)
您要提供的是upsert,如果剂量存在,则创建文档或更新现有的文档。
弹性通过doc_as_upsert
选项支持这一点
https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-update.html#doc_as_upsert
在链接的右侧,您可以选择与您的版本匹配的弹性版本。