我有一个在弹性 beantalk 上运行的 EC2 实例托管我们的网站。我们的网站是一个节点应用程序,它连接到我们的副本集,然后进行查询,但该查询只是消失了。这是服务器启动时运行的代码:
(function() {
logger.log('info', 'called');
const MongoClient = require('mongodb').MongoClient;
var client = new MongoClient();
client.connect(process.env.MONGO_CONNECTION_STRING, mongoClientOptions, function(err, db) {
if(err) return logger.log('error', err.message);
logger.log('info', 'Connected to mongodb replset.');
var collection = db.collection(SESSION_COLLECTION_NAME);
collection.findOne({}, function(err, doc) {
if(err) return logger.log('error', err.message);
logger.log('info', doc);
});
});
})();
此代码在本地运行良好。但是在服务器上,我所看到的只是Connected to mongodb replset.
,然后什么都没有。没有错误日志或信息日志。
需要注意的一点是,mongodb 数据库与我们的 EC2 实例位于同一 AWS 区域,但它由名为 Compose 的第三方托管。
那么这里可能发生了什么?我不知道如何进一步调试。