【问题标题】:aws custom event on schedult to trigger lambda Using Terraformschedult 上的 aws 自定义事件以触发 lambda 使用 Terraform
【发布时间】:2022-01-12 01:15:13
【问题描述】:

我想创建一个应按计划传递给 Lambda 的自定义事件 我能够创建一个预定的事件 但无法传递自定义事件详细信息:

所以我想要这样的东西

resource "aws_cloudwatch_event_rule" "roup1-rule" {
  name                = "Group1"
  description         = "Group1"
  schedule_expression = "rate(10 minutes)"
  is_enabled          = true
  event_pattern       = <<EOF
{
  "source": ["Group1"],
  "groupNumber":["Group1"],
  "notificationDate":["-"]
}
EOF
}

但我只得到这样的空事件

{'version': '0', 'id': '8d41b334-297c-bc93-795d-54b7622a3da7', 'detail-type': 'Scheduled Event', 'source': 'aws.events', 'account': '215132885729', 'time': '2021-12-06T21:05:34Z', 'region': 'us-east-1', 'resources': ['arn:aws:events:us-east-1:215132885729:rule/gov-prov-srvcs-Demographic_Group1'], 'detail': {}}
{'version': '0', 'id': '8d41b334-297c-bc93-795d-54b7622a3da7', 'detail-type': 'Scheduled Event', 'source': 'aws.events', 'account': '215132885729', 'time': '2021-12-06T21:05:34Z', 'region': 'us-east-1', 'resources': ['arn:aws:events:us-east-1:215132885729:rule/gov-prov-srvcs-Demographic_Group1'], 'detail': {}}

【问题讨论】:

    标签: amazon-web-services terraform amazon-cloudwatch


    【解决方案1】:

    event_pattern 不与schedule_expression 一起使用。 event_pattern 仅用于过滤掉其他服务产生的事件。

    您必须将event 添加到您的函数代码中。无论如何,它是一个常数值。

    【讨论】:

    • 我们不能传递一个常量 json 。我可以通过控制台执行此操作,以按计划发送常量 json。但在 TF 中无法做到这一点
    • 资源 "aws_cloudwatch_event_target" "Group1-tgt" { rule = aws_cloudwatch_event_rule.Group1-rule.name arn = aws_lambda_function.createtrigger.arn event_pattern =
    • @devx 你必须使用input
    猜你喜欢
    • 2021-12-17
    • 1970-01-01
    • 2019-10-24
    • 1970-01-01
    • 2016-06-24
    • 2016-09-01
    • 2015-09-17
    • 1970-01-01
    相关资源
    最近更新 更多