Bro*_*oks 24 cron amazon-cloudwatch aws-lambda
我正在尝试设置Cloudwatch预定事件,但我的cron表达似乎无效,但我无法弄清楚原因.
我的cron表达式是:
cron(5,15,25,35,45,55****)
我希望它能在每天每小时的第5天,第15天,第25天,第35天,第45天和第55分钟运行.这似乎与http://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html中的AWS Scheduled Events文档一致.
上述文档允许用0到59之间的逗号分隔值表示分钟,以及用*通配符反映ALL的小时,日期(或星期几),月份和年份.
我尝试在Lambda控制台上设置cron表达式(创建函数并选择Cloudwatch Schedule Event时),并在Cloudwatch控制台中设置cron表达式(以及选择触发器的目标).两者都不适用于我的自定义cron表达式.
我尝试过以下方法:
5,15,25,35,45,55 * * * *
5,15,25,35,45,55 * ? * *
cron(5,15,25,35,45,55 * * * *)
cron(5,15,25,35,45,55 * ? * *)
Run Code Online (Sandbox Code Playgroud)
每次我收到错误说ScheduleExpression无效.但是,我可以使用premade rate()表达式之一.
我如何使用自己的自定义cron表达式?
谢谢.
Man*_*shi 34
你能尝试一下: cron(5,15,25,35,45,55 * * * ? *)
Cron表达式在这里有六个必填字段.
AWS 文档
我认为这也适合您的用例,并且提供更好的易读性:rate(5 minutes)
或者将其放入 CloudFormation 代码中:
Resources:
ChangeDetectFunction:
Type: AWS::Serverless::Function
Properties:
CodeUri: example/
Handler: app.lambda_handler
Runtime: python3.8
Events:
ScheduledEvent:
Name: Every5min
Type: Schedule
Properties:
Schedule: rate(5 minutes)
Run Code Online (Sandbox Code Playgroud)