通过单个服务器设置,我从驱动程序接收事件。
mongoose.connect('mongodb://localhost/mydb');
mongoose.connection.on('disconnected', function() {...});
mongoose.connection.on('error', function(err) {...});
使用副本集 ( mongoose.connect('mongodb://localhost:27017/mydb,mongodb://localhost:27018/mydb');
) 时,关闭所有连接的集成员不会触发相同的事件。
我对本机驱动程序的内部不是很熟悉,我想知道这是否是一个错误,或者我是否需要手动检测这种情况。
我正在使用 Mongoose 3.6.17(mongodb 驱动程序 1.3.18)
没有猫鼬,我尝试了相同的结果(没有来自副本集的事件)。
require('mongodb').MongoClient.connect("mongodb://localhost:27017,localhost:27018/mydb", function(err, db) {
if (db) {
db.on('disconnected', function() {
console.log('disconnected');
}).on('error', function(err) {
console.log('error');
});
}
});