MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Не можете да стартирате logstash с помощта на конфигурацията на mongoDB?

Проблемът е причинен от грешка в най-новата версия на logstash-output-mongodb. Моля, вижте проблема, докладван в github . Може да се коригира чрез промяна на няколко реда в приставката mongodb. (Моля, бъдете внимателни, тъй като това е хакерско решение, което нито поддържа удостоверяване, нито отдалечени сървъри.)

Променете редовете на вашия файл mongo.rb, както е споменато тук . (пътят трябва да е нещо като /opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-output-mongodb-0.1.4/lib/logstash/outputs/mongodb.rb Можете да намерите точния път във вашето съобщение за грешка.)

Замяна:

    uriParsed=Mongo::URIParser.new(@uri)
    conn = uriParsed.connection({})
    if uriParsed.auths.length > 0
      uriParsed.auths.each do |auth|
        if !auth['db_name'].nil?
          conn.add_auth(auth['db_name'], auth['username'], auth['password'], nil)
        end 
      end
      conn.apply_saved_authentication()
    end
    @db = conn.db(@database)

от:

    client = Mongo::Client.new([ '127.0.0.1:27017' ])
    @db = client.use(@database)

И заменете:

@db.collection(event.sprintf(@collection)).insert(document)

от:

@db.database.collection(event.sprintf(@collection)).insert_one(document)

Самият аз имах този проблем при няколко настройки на logstash. Промяната на редовете ми вършеше работа всеки път.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Създайте ISODate с pyMongo

  2. По-лесен начин за актуализиране на масив с MongoDB

  3. Python:изграждане на LRU кеш

  4. c# mongodb търсене, чувствително към главни и малки букви

  5. Проверка на здравето на Mongodb стъпка по стъпка