Перезапись метаданных _version из поляasticsearch с использованием logstash - PullRequest
0 голосов
/ 05 октября 2018

Я использую ELK-стек для импорта файлов CSV.Каждый раз, когда импортируются файлы CSV, поле «_version» документа увеличивается, как и ожидалось.Однако, поскольку поле _version является полем метаданных, ELK не индексирует его.Поэтому это поле не доступно для поиска и не может быть использовано на панели инструментов.

Я создал вторую конфигурацию logstash, где и вход, и выход - Elasticsearch.

Конфигурация фильтра:

filter {
mutate {
   add_field => {"Version" => "{[@metadata][_version]}"}
 }
}

Конфигурация ввода:

input {
elasticsearch {
  hosts => ["localhost:9200"]
  index => "test_csv"
  query => '{"query":{"match_all" : {}}}'
  size => 1000
  scroll => "1s"
  docinfo => true
  docinfo_fields => ["_index", "_type", "_id", "_version"]
  schedule => "/1 * * * *" 
}
}

Я не могу получить значение из поля _version.Вывод в Kibana выглядит следующим образом:

Version         {[@metadata][_version]}

Если я заменю поле _version в фильтре на _id или _index, я получу информацию обратно.

Есть идеи, как получить значение из поля _version?Любые мысли по этому вопросу высоко ценятся.

Хлоя

1 Ответ

0 голосов
/ 08 октября 2018

Для версии 6.4.2 у меня работает следующее:

filter {
     mutate {  
         add_field => {"Version" => "%{[@version]}"} 
     }
}
...