Tenho aplicativo que está usando mongoose.js
. Até agora eu estava usando instância única de mongod
. Mas recentemente eu mudei para o conjunto de réplicas.
Como eu posso acessar no mongoose.js a coleção oplog? Quero dizer, como posso obter uma coleção de outro banco de dados (local
) Então vamos dizer que eu estou conectado ao banco de dados e tenho mongoose.connection
Posso consultar o oplog agora?
Respostas:
8 para resposta № 1Você pode acessar outro banco de dados em mangusto porusando o método mongoose.connect, usando uma URL do MongoDB para especificar o banco de dados. Por exemplo, para conectar-se ao banco de dados "local" onde o oplog é encontrado:
mongoose.connect("mongodb://localhost/local")
Você diz que está interessado em fazer issoPara observar novas entradas no oplog, provavelmente você desejará usar um cursor disponível na coleção "oplog.rs" quando a conexão com o banco de dados "local" for estabelecida, por exemplo:
mongoose.connection.once("open", function callback () {
var collection = mongoose.connection.db.collection("oplog.rs")
collection.find({}, {tailable: true}).each(function(err, entry) {
if (err) {
// handle error
} else {
// got a new oplog entry
console.log("--- entry", entry)
}
})
});
Espero que isso seja útil, deixe-me saber se você tiver outras dúvidas.