AWS Lambda - 连接到同一AWS区域中的MongoLab数据库

时间:2016-03-01 11:25:56

标签: mongodb amazon-web-services aws-lambda mlab

尝试使用AWS Lambdas并尝试从一个返回到同一AWS区域中托管的MongoLab数据库:

var mongodb = require('mongodb');

console.log('Loading function');

exports.handler = function(event, context) {

    console.log("Connecting to Mongo");

    mongodb.MongoClient.connect('mongodb://xxxx:xxxx@dsxxxx-a0.mlab.com:xxxx,xxxx-a1.mlab.com:xxxx/xxxxxx?replicaSet=rs-xxxxx', function(err, db) {
        console.log("Connected to mongo");

        var col = db.collection('tasks');

        col.find({ }).toArray(function(err, docs) {
            if (err) {
                console.log('err > ' + err);
                throw err;
            }

            console.log('docs.length > ' + docs.length);

            docs.forEach(function(x) {
                console.log(x._id);
            });

            db.close();
            console.log("Done");
            context.done(null, "finished");
        });    
    });
};

我从Cloudwatch获取以下日志,因此我知道我正在调用Lambda并尝试连接到数据库,但它从未从连接尝试返回并在3秒后超时:

  

2016-03-01T11:08:33.546Z ... 加载功能

     

START RequestId:Version:... $ LATEST

     

2016-03-01T11:08:33.548Z ... 连接到Mongo

     

END RequestId:...

     

REPORT RequestId:...持续时间:3000.08毫秒

     

结算时长:3000毫秒内存大小:128 MB最大使用内存:35 MB

     

2016-03-01T11:08:36.547Z ... 任务在3.00秒后超时

连接uri测试从3T MongoChef测试很好,所以我知道它很好,但是在某处(说来自IAM )我需要设置或者我是否只是错过了一些明显的东西?

0 个答案:

没有答案