您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

将MongoDB与ElasticSearch同步

将MongoDB与ElasticSearch同步

您可以将MongoDB和Elasticsearch与Logstash同步;实际上,同步是Logstash的主要应用之一。安装Logstash之后,您要做的就是为您的用例指定一个 管道 :将一个或多个输入源(在您的情况下为MongoDB)和一个或多个输出接收器(在您的情况下为Elasticsearch)作为配置文件放置(示例在Logstash的管道 目录中;Logstash负责其余的工作。

Logstash正式提供了许多常用数据源和接收器的插件。这些插件使您可以通过几种配置从各种来源读取数据或将数据写入各种来源。您只需要找到合适的 插件,进行安装,然后为您的方案配置它即可。Logstash有一个用于Elasticsearch的官方输出插件,其配置非常直观。但是,Logstash不为MongoDB提供任何输入插件。您需要找到第三方。这个似乎很有希望。

最后,您的管道可能如下所示:

input {
  mongodb {
    uri => 'mongodb://10.0.0.30/my-logs?ssl=true'
    placeholder_db_dir => '/opt/logstash-mongodb/'
    placeholder_db_name => 'logstash_sqlite.db'
    collection => 'events_'
    batch_size => 5000
  }
}
output {
  stdout {
    codec => rubydebug #outputs the same thing as elasticsearch in stdout to facilitate debugging
  }
  elasticsearch {
    hosts => "localhost:9200"
    index => "target_index"
    document_type => "document_type"
    document_id => "%{id}"
  }
}
mongodb 2022/1/1 18:18:07 有600人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶