[英]ElasticSearch to Kafka event - on each change using Logstash
最终目标:连接 Elasticsearch 和 kafka,并接收 ES 索引到 kafka 的持续变化事件。 从kafka,我有听众做进一步的处理。
方法:我使用了Logstash输入输出插件。 这是配置代码。
input {
elasticsearch {
hosts => ["localhost:9200"]
index => "liferay-20116"
}
}
output {
kafka {
topic_id => "elastic-topic-index"
codec => json
}
}
它正在工作,但有一个奇怪的问题。
当我听 kafka 时,它会读取来自 ES 的所有文档,目前大约有 176 个文档。
一旦读取,它会停止一段时间,说 2 秒,然后再次阅读整个 176 文档!
我不知道是什么问题,这是由于 Logstash 行为还是 Kafka 行为怪异?
任何帮助将不胜感激!
这是这个插件的标准行为 - 它将数据匹配推送到给定的查询。 如果您只想更改文档,唯一的解决方法是建立自己对更改内容的了解 - 例如,您需要为条目提供时间戳,然后将这些知识合并到发送给 ES 的查询中。
我确实在不使用 Logstash 的情况下弄清楚了。
我正在使用 ElasticSearch 插件,它在每次更改时作为网络套接字发出事件。
参考: https : //codeforgeek.com/2017/10/elasticsearch-change-feed/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.