AWS:指标中的 lambda 调用次数与实际调用次数不对应

Posted

技术标签:

【中文标题】AWS:指标中的 lambda 调用次数与实际调用次数不对应【英文标题】:AWS: Number of lambda invocations in metrics not corresponding with actual number of invocations 【发布时间】:2022-01-08 20:25:35 【问题描述】:

大家好,

下面是我的 lambda 调用代码的 sn-p 与 boto3

lambda_client = boto3.client('lambda', region_name='eu-west-1')
json_payload = json.dumps(data)
lambda_response = lambda_client.invoke(target_lambda_arn, 'RequestResponse', json_payload)

在我看来,这应该只调用 1 个 lambda,因为它是 1 个调用,但如果我查看 lambda 指标,它显示在使用上述 sn-p 进行调用时总共有 4 个调用。如果我进行 2 次调用,则它总共显示 16 次调用。为什么会这样?不是应该两边都对应吗?

注意:上述 sn-p 是在一个 AWS Glue EDL 脚本中运行的,该脚本在 2 个工作节点和 G.1x 工作类型上运行,作业上没有设置重试。

提前致谢。

【问题讨论】:

【参考方案1】:

可能是 Lambda 函数失败并导致重试?有关更多信息,您可以查看此资源:https://docs.aws.amazon.com/lambda/latest/dg/invocation-retries.html 如果您希望禁用该功能,您可以通过访问您的 Lambda 函数并将重试次数设置为 0 来执行此操作。您可以在配置中找到此配置 - > 异步调用选项卡。您还可以查看 Cloudwatch 日志和指标,以更深​​入地了解根本原因。

【讨论】:

以上是关于AWS:指标中的 lambda 调用次数与实际调用次数不对应的主要内容,如果未能解决你的问题,请参考以下文章

如何从 laravel 调用现有的 AWS Lambda 函数?

如何从账户 A 中的 Lambda(VPC 中的 Lambda)调用账户 B 中的 AWS Lambda 函数(VPC 中的这个 Lambda)

如何从 AWS lambda 发布到 Node.js 中的云观察指标

AWS Appsync 从 Lambda 调用变异?

如何使用API 参考对AWS Lambda进行API调用

从 Lambda 调用 AWS AppSync graphql API