当前位置: 首页 > 知识库问答 >
问题:

我可以在CloudFormation模板中创建CloudWatch计划事件吗?

华修永
2023-03-14

我知道我可以通过AWS控制台创建计划的Cloud Watch事件:

https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/Create-CloudWatch-Events-Scheduled-Rule.html

有没有办法在云形成模板中声明类似事件?

共有3个答案

曾山
2023-03-14

是的,有可能由@bhalothia分享。请找一篇能让你深入了解它的文章。

实际执行

http://marcelog.github.io/articles/serverless_cloudwatch_event_cloudformation_template.html

详细说明:

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html

我希望这对你有帮助。

国阳
2023-03-14

是的,这是可能的。

AWS::Events::Rule资源创建一个与传入的Amazon CloudWatch事件(CloudWatch事件)事件匹配的规则,并将它们路由到一个或多个目标进行处理。

以下是CloudFormation示例片段:

Type: AWS::Events::Rule
Properties: 
  Description: String
  EventPattern: JSON object
  Name: String
  ScheduleExpression: String
  State: String
  Targets:
    - Target

如果你有更多问题,这是官方文件。

锺离卓
2023-03-14

下面是在cloudwatch中创建计划事件的示例,它创建了一个每隔10分钟调用指定Lambda函数的规则。PermissionForEventsToInvokeLambda资源授予EventBridge调用关联函数的权限。

"ScheduledRule": {
  "Type": "AWS::Events::Rule",
  "Properties": {
    "Description": "ScheduledRule",
    "ScheduleExpression": "rate(10 minutes)",
    "State": "ENABLED",
    "Targets": [{
      "Arn": { "Fn::GetAtt": ["LambdaFunction", "Arn"] },
      "Id": "TargetFunctionV1"
    }]
  }
},
"PermissionForEventsToInvokeLambda": {
  "Type": "AWS::Lambda::Permission",
  "Properties": {
    "FunctionName": { "Ref": "LambdaFunction" },
    "Action": "lambda:InvokeFunction",
    "Principal": "events.amazonaws.com",
    "SourceArn": { "Fn::GetAtt": ["ScheduledRule", "Arn"] }
  }
}

该示例引用自AWS官方文档。

 类似资料:
  • 读者们好, 我正在ubuntu 16.04中使用Odoo 11,试图在我的本地机器上安装Odoo SaaS工具包11 for Odoo v11 CE,当我在SaaS中创建模板数据库时,我遇到了一个问题= 我的etc/hosts文件如下: 127.0.0.1localhost127.0.1.1shivam.sahu希瓦姆 ::1 ip6本地主机ip6环回fe00::0 ip6本地网ff00::0 i

  • 我想使用云形成创建一个堆栈预先存在的Lambda函数到一个状态机使用步骤函数的时间表(30分钟)。我已经成功地为我的其他方法创建了堆栈。 在本质上,我需要帮助或指导如何创建一个计划的事件在Cloud形成步骤函数。以下是我一直在尝试的: 但我不断地犯错误,比如 [错误] /Resources/NOTDScheduler/Properties/Targets/0/statemachineARN/Fn:

  • 是否可以使用AWS提供的Java SDK创建AWS CloudWatch自定义度量? 《开发人员指南》讨论了通过命令行工具发布自定义度量。 这在Java SDK中是可能的吗?如果是,请提供链接或教程。

  • 我写了一个cron表达式如下: 0 13 * * 1-5代码 触发“周一至周五每周一天13:00” 但是当我在cloud dwatch事件中使用它时,我用替换了当月的一天,如aws文档中所述。但是这不起作用,并且说 我错过了什么? 谢谢你!

  • 我创建了一个AWS Lambda函数,并在Cloudwatch中创建了一个计划事件规则,每5分钟触发一次:

  • 我正在尝试创建一个自动修复过程,该过程将停止/删除在eu-central-1区域之外创建的任何VPC、Cloudformation Stack、VPC、Lambda、Internet Gateway或EC2。我的第一步是对CloudWatch事件规则进行参数化,以检测前面提到的任何事件。 目前,该事件应该只触发一个SNS主题,该主题将向我发送一封电子邮件,但将来会有一个lambda字体来进行修复。