【问题标题】:Add AWS Lambda function trigger to existing function uding Terraform使用 Terraform 将 AWS Lambda 函数触发器添加到现有函数
【发布时间】:2021-10-03 15:12:22
【问题描述】:

目前我有一个在不同 Terraform 模块中创建的 lambda 函数。我需要从一个独立的存储库为该 lambda 函数创建一个 Cloudwatch Logs 触发器。到目前为止,我没有看到任何 Terraform 资源(据我所知)来执行此操作。我还研究了通过 terraform 在 local-exec 中使用 Boto3。这看起来也不可能。有没有我遗漏的方法可以使用 Terraform、AWS_CLI 或 python 来完成。

谢谢

【问题讨论】:

    标签: amazon-web-services aws-lambda terraform boto3


    【解决方案1】:

    您需要使用 Lambda 函数的 ARN 作为目标值来定义 aws_cloudwatch_log_subscription_filter。您可以将 Lambda 函数的 ARN 传递到 CloudWatch 模块,或者您可以使用lookup the function by name 来获取 ARN。您可能还需要创建一个 aws_lambda_permission 资源以授予 CloudWatch 调用 Lambda 函数的权限。

    【讨论】:

    • 我如何从那个 Lambda 函数将它连接到 Cloudwatch 中的特定日志?我有一个 lambda 函数需要来自 cloudwatch 日志的触发器,以便它可以转发这些日志。 cloudwatch 日志来自单独的 lambda 函数执行。
    • 我刚刚更新了我的答案,我有一个错字,错误的 terraform 资源名称。 aws_cloudwatch_log_subscription_filter 是创建触发器以将 CloudWatch 日志流式传输到 Lambda 函数的东西。该资源是您指定日志组的位置,以及日志应该流式传输到的 Lambda 函数。
    • 这最终奏效了。感谢您的帮助!
    猜你喜欢
    • 2021-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-30
    • 2021-07-11
    • 2019-01-02
    • 2019-07-16
    • 2017-07-27
    相关资源
    最近更新 更多