AWS Cron 计划表达式
AWS Cron schedule expression
我想在 NodeJS/Typescript 中使用无服务器框架将函数部署到 AWS Lambda。这是我的 serverless.yml:
service: backend
plugins:
- serverless-webpack
provider:
name: aws
region: eu-central-1
runtime: nodejs14.x
stage: dev
functions:
createDailyStatistics:
handler: dist/services/schedules.scheduleDailyStatistics
events:
- schedule:
rate: cron(0 0 * * *)
enabled: true
有人能告诉我,为什么在启动后 serverless deploy
我收到这样的错误:
CREATE_FAILED: CreateDailyStatisticsEventsRuleSchedule1 (AWS::Events::Rule)
Parameter ScheduleExpression is not valid. (Service: AmazonCloudWatchEvents; Status Code: 400; Error Code: ValidationException; Request ID: xxx; Proxy: null)
我的表达式 - 0 0 * * *
是一个标准的 cron 表达式,但 AWS 不处理这个?我想在每天午夜启动这个功能。
感谢您的帮助!
AWS 使用扩展的 CRON 表达式格式:
请注意,表达式中有 6 个字段:Minutes
、Hours
、Day of month
、Month
、Day of week
和 Year
.
在您的例子中,您只提供了 5 个值。我猜您最有可能使用 crontab.guru 来创建您的 cron 表达式,这意味着您希望触发一个事件 At 00:00
。在这种情况下,对于 AWS,您会希望有这样的内容:0 0 * * ? *
.
我想在 NodeJS/Typescript 中使用无服务器框架将函数部署到 AWS Lambda。这是我的 serverless.yml:
service: backend
plugins:
- serverless-webpack
provider:
name: aws
region: eu-central-1
runtime: nodejs14.x
stage: dev
functions:
createDailyStatistics:
handler: dist/services/schedules.scheduleDailyStatistics
events:
- schedule:
rate: cron(0 0 * * *)
enabled: true
有人能告诉我,为什么在启动后 serverless deploy
我收到这样的错误:
CREATE_FAILED: CreateDailyStatisticsEventsRuleSchedule1 (AWS::Events::Rule)
Parameter ScheduleExpression is not valid. (Service: AmazonCloudWatchEvents; Status Code: 400; Error Code: ValidationException; Request ID: xxx; Proxy: null)
我的表达式 - 0 0 * * *
是一个标准的 cron 表达式,但 AWS 不处理这个?我想在每天午夜启动这个功能。
感谢您的帮助!
AWS 使用扩展的 CRON 表达式格式:
请注意,表达式中有 6 个字段:Minutes
、Hours
、Day of month
、Month
、Day of week
和 Year
.
在您的例子中,您只提供了 5 个值。我猜您最有可能使用 crontab.guru 来创建您的 cron 表达式,这意味着您希望触发一个事件 At 00:00
。在这种情况下,对于 AWS,您会希望有这样的内容:0 0 * * ? *
.