无法使用Node.JS - 超时从Lambda访问DynamoDB

时间:2017-12-12 23:55:48

标签: node.js amazon-dynamodb aws-lambda aws-sdk

我正在尝试从AWS Lambda访问DynamoDB表。我正在关注“Reading and Writing A Single Item in DynamoDB”的AWS node.js文档。

以下是我正在做的事情:

  1. 转到AWS Lambda控制台,然后单击“创建功能”。
  2. 输入功能名称。将运行时保留为“Node.js 6.10”
  3. 选择“从模板创建新角色”,输入角色名称,然后选择“简单微服务权限”模板。单击“创建功能”。
  4. 在处理函数的以下代码中粘贴(基于上面引用文档中的示例):

    exports.handler = (event, context, callback) => 
    {
       console.log('Load the AWS SDK for Node.js');
       var AWS = require('aws-sdk');
       console.log('Set the region');
       AWS.config.update({region: 'REGION'});
    
       console.log('Create the DynamoDB service object');
       var ddb = new AWS.DynamoDB({apiVersion: '2012-10-08'});
       console.log('Done Creating the DynamoDB service object');
    
       callback(null, 'Hello from Lambda');
    };
    

    (是的,我知道这段代码实际上并没有访问任何DynamoDB表,但我只是想证明我甚至无法获得初始化SDK。)

  5. 点击“保存”

  6. 点击屏幕顶部的“测试”,然后保留默认的测试事件。单击“测试”以运行测试。

  7. 测试运行时,出现以下错误:

      

    {“errorMessage”:“2017-12-12T23:37:49.578Z   74ef4b3f-df95-11e7-a4cd-b55e8170a5e5任务在3.00后超时   秒“}

    这是日志输出:

      

    START RequestId:74ef4b3f-df95-11e7-a4cd-b55e8170a5e5版本:$ LATEST   2017-12-12T23:37:46.579Z 74ef4b3f-df95-11e7-a4cd-b55e8170a5e5加载   适用于Node.js的AWS SDK END RequestId:   74ef4b3f-df95-11e7-a4cd-b55e8170a5e5报告RequestId:   74ef4b3f-df95-11e7-a4cd-b55e8170a5e5时长:3001.29 ms Billed   持续时间:3000毫秒内存大小:128 MB最大使用内存:32 MB
      2017-12-12T23:37:49.578Z 74ef4b3f-df95-11e7-a4cd-b55e8170a5e5任务   3.00秒后超时

    请注意,实际记录的唯一一个显式日志条目是“加载适用于Node.js的AWS开发工具包”,这意味着我的函数的执行不会超过以下行:

    var AWS = require('aws-sdk');
    

    我做错了什么或错过了什么?

0 个答案:

没有答案