我正在尝试将索引A中的一小部分数据复制到索引B中。
我在EC2实例上运行了Logstash配置,其中包含Elasticsearch输入,一些过滤器和Elasticsearch输出。
第一次运行它时工作正常,但如果将任何新数据添加到索引A(符合输入的查询条件),则Logstash配置不会检测到它并将其输出到索引B.
这让我想到,Elasticsearch输入只运行一次吗?与文件或S3输入之类的输入不同,它会添加新文件。
答案 0 :(得分:4)
Logstash elasticsearch
输入插件使用可选查询执行单个搜索(通过扫描/滚动),完成后退出。
你说得对,它的行为与for file
输入插件的行为方式不同,后者只会拖动一个或多个文件并动态处理新行。
如果您需要在新文档与查询匹配时获得通知,则可能需要调查Watcher插件。 Watcher很可能检测到与查询匹配的新文档的存在,然后调用webhook,这可以通过Logstash中的http
input plugin实现。