You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS SDK v2.1500 Node.js客户端调用Lambda执行成功后仍超时无响应问题排查求助

AWS SDK v2.1500 Node.js客户端调用Lambda执行成功后仍超时无响应问题排查求助

大家好,我碰到一个棘手的问题想请教下:我在Node.js客户端用AWS SDK v2.1500调用Lambda函数,Lambda在AWS控制台的日志里明明显示执行成功了,但我的客户端一直收不到响应,直到设置的超时时间到了才抛出超时错误。

我的Lambda客户端初始化和调用代码如下:

const lambda = new AWS.Lambda({
  httpOptions: {
    connectTimeout: LAMBDA_CONNECTION_TIMEOUT_MS,
    timeout: LAMBDA_CONNECTION_TIMEOUT_MS, // 这里设置的是15分钟
  },
  maxRetries: 0,
});

try {
  response = await lambda
    .invoke({
      FunctionName: lambdaName,
      Payload: payload ? JSON.stringify(payload) : undefined,
    }, (err, data) => {
      if (err){
        console.error(`Could not invoke lambda: \n ${err}`);
      }
    }
    )
    .promise();
} catch (e) {
  // 这里捕获到了超时错误
}

抛出的错误栈是:

at ClientRequest. (/app/node_modules/aws-sdk/lib/http/node.js:87:34)
at ClientRequest. (/app/node_modules/aws-sdk/lib/http/node.js:87:34)
2023-12-08T15:48:55.864+01:00   at Object.onceWrapper (node:events:628:28)
2023-12-08T15:48:55.864+01:00   at ClientRequest.emit (node:events:514:28)
2023-12-08T15:48:55.864+01:00   at ClientRequest.emit (node:domain:488:12)
2023-12-08T15:48:55.864+01:00   at TLSSocket.emitRequestTimeout (node:_http_client:840:9)
2023-12-08T15:48:55.864+01:00   at Object.onceWrapper (node:events:628:28)
2023-12-08T15:48:55.864+01:00   at TLSSocket.emit (node:events:526:35)
2023-12-08T15:48:55.864+01:00   at TLSSocket.emit (node:domain:488:12)
2023-12-08T15:48:55.864+01:00   at Socket._onTimeout (node:net:589:8)
2023-12-08T15:48:55.864+01:00   at listOnTimeout (node:internal/timers:573:17)

想问问各位,我应该从哪些方面入手排查这个问题?或者有没有办法调试底层的连接流程,看看中间到底发生了什么导致客户端收不到响应?

备注:内容来源于stack exchange,提问作者borko84

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 11:18:08