2

我已经使用 claudia.js claudia-bot-builder 构建了一个机器人,并且在我今天早上尝试推送更新之前一切正常。现在脚本正在超时。

脚本

claudia create --region ap-southeast-2 --api-module index --profile xero-messenger-bot

错误

creating Lambda lambda.createFunction   FunctionName=my-bot
{TimeoutError: Connection timed out after 120000ms
    at ClientRequest.<anonymous> 
(/usr/local/lib/node_modules/claudia/node_modules/aws-sdk/lib/http/node.js:83:34)
    at Object.onceWrapper (events.js:291:19)
    at emitNone (events.js:86:13)
    at ClientRequest.emit (events.js:186:7)
    at TLSSocket.emitTimeout (_http_client.js:679:10)
    at Object.onceWrapper (events.js:291:19)
    at emitNone (events.js:86:13)
    at TLSSocket.emit (events.js:186:7)
    at TLSSocket.Socket._onTimeout (net.js:342:8)
    at ontimeout (timers.js:365:14)
  message: 'Connection timed out after 120000ms',
  code: 'NetworkingError',
  time: 2017-04-20T05:48:18.230Z,
  region: 'ap-southeast-2',
  hostname: 'lambda.ap-southeast-2.amazonaws.com',
  retryable: true 
}

我尝试了几个不同的区域(ap-southeast-1、us-east-2 等),但它们似乎都抛出了相同的错误。

我认为这是我的代码,但同样的脚本昨天还在工作,所以我不确定为什么今天不行。

有什么想法可以在哪里查看更多信息?

4

2 回答 2

4

在搜索了太多之后,我停在了 Gitter 的Claudia's 上。@stojanovic 建议我应该使用--use-s3-bucket标志。

claudia create --handler lambda.handler --use-s3-bucket your-bucket-name --deploy-proxy-api --region us-east-1
于 2017-05-24T06:36:07.153 回答
1

我知道这是一个旧帖子,但一个快速的讨厌的修复可以只是去 NPM 全局 claudia 包并编辑以下文件 _~\node_modules\claudia\node_modules\aws-sdk\lib\http\node.js_ 并添加超时对你有用:

...
AWS.NodeHttpClient = AWS.util.inherit({
  handleRequest: function handleRequest(httpRequest, httpOptions, callback, errCallback) {
      httpOptions.timeout = xxxxx (default to 120000);
...

希望有帮助

于 2018-08-16T12:48:18.440 回答