【问题标题】:Old Lambda function is the one being triggered after updating existing API Gateway with new Lambda function旧 Lambda 函数是在使用新 Lambda 函数更新现有 API Gateway 后触发的函数
【发布时间】:2021-05-25 12:49:42
【问题描述】:

旧 Lambda 函数名称:OldLambda

新 Lambda 函数名称:OldLambda-810

新的 lambda 函数是从头开始制作的,但它是旧 Lambda 的精确副本,只是做了一点小改动。两者都是通过 API 网关触发的。

前往 AWS API Gateway,找到端点,将“Lambda 函数”从 OldLambda 编辑到 OldLambda-810。此更改正确反映在 AWS Lambda 函数中。

我想通过真实应用程序触发新的 Lambda 来测试它,但没有使用新的 Lambda 函数创建新的 CloudWatch 日志。取而代之的是 OldLambda 的新日志。

当我通过 Lambda 测试事件触发新的 Lambda 时,会创建日志。

【问题讨论】:

  • 您是否重新部署了 API 阶段?
  • @Michael-sqlbot :重新部署 API 阶段有效!太感谢了。对于其他想知道的人,请转到 Api Gateway > Resource > Actions > Deploy API > 从 Deploy stage 下拉菜单中选择任何现有阶段

标签: amazon-web-services aws-lambda aws-api-gateway


【解决方案1】:

在 API Gateway 控制台中进行的 API 更改通常不会立即生效。诚然,这并不总是直观的,但您需要将 API“部署”到一个阶段,以便实时推送您的更改。将“阶段”视为指向上次部署 API 规则时存在的已配置行为快照的指针。

重要

每次更新 API(包括修改路由、方法、集成、授权者以及阶段设置以外的任何其他内容)时,都必须将 API 重新部署到现有阶段或新阶段。

https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-deploy-api.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-24
    • 2017-06-03
    • 2019-10-05
    • 2017-09-05
    • 2019-06-03
    • 1970-01-01
    • 2018-07-18
    • 2018-10-02
    相关资源
    最近更新 更多