Как синхронизировать изменения от MongoDB до Elassearch (т.е. отражать изменения в Eastic, когда грубая операция выполняется в Mongo), используя logstash - PullRequest
1 голос
/ 06 ноября 2019

Я просто хочу синхронизировать данные из mongodb в эластичные, используя logstash. Хорошо работает, когда в mongodb появляется новая запись, logstash превращается в эластичный. Но когда я обновляю любую запись в mongodb, она не превращается в эластичный поиск. Я хочу внести изменения в файл конфигурации, чтобы при любом обновлении записи в монго она также отражалась в эластичном.

Я уже пробовал, создавая action => "index", а также action => "Обновление "в файле .conf.

Вот мой файл mongodata.conf

 input{
 mongodb{
   uri => 'mongodb://localhost:27017/DBname'

   placeholder_db_dir => '/opt/logstash'
   placeholder_db_name => 'logstash_sqlite.db'
   collection => "collectionName"
   batch_size => 500
   }
  }

filter {
 mutate {
  remove_field => [ "_id" ]
 }
}

output{
    elasticsearch{
            action => "index"
            hosts => ["localhost:9200"]
            index => "mongo_hi_log_data"
    }
    stdout{ codec => rubydebug }
  }

Я хочу синхронизировать данные из mongodb в эластичные, используя logstash, когда любая запись обновляется или вставляется в mongodb.

...