У меня есть установка Logstash 6.2x, где я читаю ввод Kafka и записываю вывод в экземпляр Elasticsearch, и у меня возникают проблемы при использовании, если / else
Конфигурация Logstash выглядит как
input {
kafka {
bootstrap_servers => '192.168.2.66:9092,192.168.2.67:9092,192.168.2.68:9092'
topics => ["linum", "newdata"]
codec => "json"
type => "kafka"
tags => ["linumsrvr1"]
decorate_events => true
}
}
output {
if [topic] == "linum" {
elasticsearch {
hosts => ["192.168.2.32:9200"]
action => "index"
index => "linum-%{+YYYY.MM.dd}"
}
stdout {codec => rubydebug}
} else {
[kafka][topic_id] == "newdata" {
elasticsearch {
hosts => ["192.168.2.32:9200"]
index => "newdata-%{+YYYY.MM.dd}"
}
stdout {codec => rubydebug}
}
}
}
Я могу получить данные в Elasticsearch, когда выходные данные содержат 4 строки, начинающиеся / оканчивающиеся на "asticsearch {..... / dd} "
По какой-то причине я не получаю никаких отправляемых данныхElasticsearch, когда я использую операторы «IF» или «IF» + «ELSE».
Я хотел бы создать два отдельных индекса для этих двух тем.
Я буду признателен за некоторые рекомендации относительно того, чтоЯ делаю не так.
Спасибо