【问题标题】:AWS Lambda function + Cloudwatch, how to pass the right parameters to a timed executionAWS Lambda 函数 + Cloudwatch,如何将正确的参数传递给定时执行
【发布时间】:2020-06-08 09:39:56
【问题描述】:

我已经成功地在 AWS Lambda 上构建函数,并将参数传递给函数以按照我认为合适的方式进行测试和执行。但是,我发现很难找到在哪里配置需要在使用 Cloudwatch 的定时事件上传递给我的函数的内容。我看到最简单的方法是没有事件或上下文(event=None 和 context=None),但随着我变得更加复杂,我现在内置了一些测试参数,需要我简单地传递以下内容:

{
   "testing" : "True"
}

同样,我已经启动并运行了该功能,但现在它可以在需要为管理团队实际执行其工作时接受此功能:

{
   "testing" : "False"
}

我确实看到 Event Bus 的配置被设置为默认值,但我无法找到 CloudWatch 最初实际在做什么,因此我可以修改它(希望如此)以将 False 语句传递给我的函数。

我所有的函数都在 python 3.7 中,如果需要更多信息,请告诉我。我已经在此处查看了有关类似问题的问题,例如this,但找不到这些库,我相信我将来也需要配置一些自定义的东西。谢谢

【问题讨论】:

    标签: python python-3.x amazon-web-services aws-lambda amazon-cloudwatch


    【解决方案1】:

    我做的事情与您所追求的类似 - 我触发 Lambda 来创建 EBS 卷的快照。我已经使用控制台来配置我的 Cloudwatch 事件。在事件->规则->动作(右上角)->编辑中,我有以下内容:

    我的常量 JSON 看起来像:

    {
    "volumeId": "vol-0c4079999999999",
     "description":"Jenkins Snapshot",
     "name": "jenkins-snapshot"
    }
    

    然后我将这些信息解析出来以在我的 Lambda 中使用。我有多个使用同一个 Lambda 的事件,它们每个都只有一个不同的常量 JSON。

    【讨论】:

    • 有趣。谢谢,我会试一试并用我的结果编辑此评论。
    • 无法编辑上述内容,但这是正确的,并且在预定执行时就像一个魅力。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2016-04-10
    • 2017-12-30
    • 2019-09-14
    • 2017-08-15
    • 1970-01-01
    • 2017-12-25
    • 1970-01-01
    • 2021-12-13
    相关资源
    最近更新 更多