[英]ElasticSearch to Kafka event - on each change using Logstash
[英]Using Elasticsearch + Logstash to push aggregated statistics to Kafka
我們正在使用Kafka,Elasticsearch和Logstash。 為了進行試驗,我們想構建一個小型服務,該服務:
至此,我們已經獲得了生成點擊消息並將其推送到Kafka主題的服務,並且我們正在使用Logstash讀取這些消息並將其推送到Elasticsearch。
我們現在需要的是一種產生包含匯總結果的新Kafka消息的方法。 我們嘗試使用以下Logstash配置文件(此時的聚合請求完全是隨機的):
input {
elasticsearch {
hosts => "localhost"
query => '{
"query": {
"query_string": {
"query": "*",
"analyze_wildcard": true
}
},
"size": 0,
"aggs": {
"messages": {
"value_count": {
"field": "message"
}
}
}
}'
}
}
output {
kafka {
topic_id => 'aggregated_stats'
}
}
不幸的是,Elasticsearch給我們以下錯誤消息:
org.elasticsearch.ElasticsearchIllegalArgumentException: aggregations are not supported with search_type=scan
而且,似乎Logstash在生成單個消息后立即退出,而我們希望它隨着聚合統計信息的變化而不斷生成新消息。
這有道理嗎?
在輸出配置中添加“ broker_list”時,它在我的服務器上工作。
output {
kafka {
broker_list => "x.x.x.x:9092,y.y.y.y:9092"
topic_id => "aggregated_stats"
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.