2017-07-05 7 views
1

amazon rdsのデータを照会するnodejsに簡単なラムダ関数を書いています(注:私のラムダとrdsはデフォルトのvpcすべてのポートが開いているとし、また、ラムダで時間を増やしてみました)"errorMessage":タスクが3.00秒後にタイムアウトしましたaws lambda nodejs lambda関数がRDSに接続しようとしています

私の問題は、私は私のラムダ関数をテストするとき、私は照会データをログ出力を取得することですが、私はまた

実行結果を取得しています: "errorMessage"で失敗しました: "2017-07-05T15:05:27.425Z 596fdf39-6193-11e7-9176-f58796899f9bタスクは3.00秒後にタイムアウトしました" }

var mysql = require('mysql'); 
 

 
exports.handler = (event, context) => { 
 
var con = mysql.createConnection({ 
 
    host: "testdb.cxyzu.ap-south-1.rds.amazonaws.com", 
 
    user: "root", 
 
    password: "mypassword", 
 
    database: "test", 
 
    port: "3306", 
 
// debug: true 
 
}); 
 

 
con.connect(function(err) { 
 
    if (err) throw err; 
 
    console.log("Connected!"); 
 
// var sql = "INSERT INTO users (id, name) VALUES (4, 'dfdd')"; 
 
var sql = "select * from test.users"; 
 
    con.query(sql, function (err, result) { 
 
    if (err) throw err; 
 
// console.log("1 record inserted"); 
 
     console.log(result); 
 
    }); 
 
}); 
 
//callback("sucess"); 
 
}

START RequestId: 596fdf39-6193-11e7-9176-f58796899f9b Version: $LATEST 
 
2017-07-05T15:05:24.680Z \t 596fdf39-6193-11e7-9176-f58796899f9b \t Connected! 
 
2017-07-05T15:05:24.684Z \t 596fdf39-6193-11e7-9176-f58796899f9b \t [ RowDataPacket { id: 1, name: 'sai' }, 
 
    RowDataPacket { id: 2, name: 'chandra' }, 
 
    RowDataPacket { id: 3, name: 'AA' }, 
 
    RowDataPacket { id: 4, name: 'dfdd' } ] 
 
END RequestId: 596fdf39-6193-11e7-9176-f58796899f9b 
 
REPORT RequestId: 596fdf39-6193-11e7-9176-f58796899f9b \t Duration: 3003.80 ms \t Billed Duration: 3000 ms \t Memory Size: 1536 MB \t Max Memory Used: 21 MB \t 
 
2017-07-05T15:05:27.425Z 596fdf39-6193-11e7-9176-f58796899f9b Task timed out after 3.00 seconds

答えて

1

あなたは成功またはエラーコールバックを通じてラムダを終了する必要があります。それ以外の場合は、タイムアウトが発生するまでエンジンはオンのままです。

ラムダを終了する最も簡単な方法は、 'context.succeed( "done");'を呼び出すことです。コードが完成した後。ここで

var mysql = require('mysql'); 

exports.handler = (event, context) => { 
var con = mysql.createConnection({ 
    host: "testdb.cxyzu.ap-south-1.rds.amazonaws.com", 
    user: "root", 
    password: "mypassword", 
    database: "test", 
    port: "3306", 
// debug: true 
}); 

con.connect(function(err) { 
    if (err) throw err; 
    console.log("Connected!"); 
// var sql = "INSERT INTO users (id, name) VALUES (4, 'dfdd')"; 
var sql = "select * from test.users"; 
    con.query(sql, function (err, result) { 
    if (err) throw err; 
// console.log("1 record inserted"); 
     console.log(result); 
     context.succeed("done"); 
    }); 
}); 
//callback("sucess"); 
} 

トピックにいくつかの基本的な紹介:

Lambda Function Handler (Node.js)

+0

おかげでお返事のためにたくさん。私はそれに取り組むでしょう。 – chandra

+0

素晴らしいです。たくさんありがとうございます。 – chandra

+0

それから問題をマークしてください:) –

関連する問題