Can Beats可以更新Elasticsearch中的现有文档吗?

时间:2017-03-26 20:37:42

标签: elasticsearch filebeat

考虑以下用例:

  • 我希望将来自一个特定日志行的信息作为文档X索引到Elasticsearch中。
  • 我希望日志文件中某些日志行的信息被索引到同一个文档X中(不会覆盖原始文件,只需添加更多数据)。

第一部分,我显然可以用filebeat来实现。

第二,有没有人知道如何接近它?我是否仍然可以在摄取节点上使用filebeat +某些管道?

显然,我可以使用ES API来更新所述文档,但我正在寻找一些不需要更改我的应用程序的解决方案 - 相反,它可以实现使用日志文件。

提前致谢!

1 个答案:

答案 0 :(得分:1)

不,这不是Beats打算完成的事情。像你描述的充实是Logstash可以帮助的事情之一。

Logstash有一个Elasticsearch input,允许您从ES检索数据并在管道中使用它进行充实。并且Elasticsearch output支持upsert操作(如果存在则更新,如果不存在则插入new)。使用这两种功能,您可以在新数据进入时丰富和更新文档。

您可能需要考虑像Elasticearch一样摄取日志行。然后使用Logstash构建一个单独的索引,该索引是特定于实体的,并根据日志中的数据进行驱动。