Amazon web services 计划Lambda的无服务器Cron语法

Amazon web services 计划Lambda的无服务器Cron语法,amazon-web-services,cron,amazon-cloudwatch,serverless-framework,Amazon Web Services,Cron,Amazon Cloudwatch,Serverless Framework,如何编写cron语法来安排Lambda在每小时开始时每十分钟运行一次?以下是我尝试过但不断出错的内容: users-cron: handler: functions/users.cron events: - schedule: rate: rate(10 minutes) - schedule: rate: cron(0-10 0-23 ? * MON-SUN *) 形式上,有一个非常相似的例子: 每10分钟调用一次Lambda函数(周一

如何编写cron语法来安排Lambda在每小时开始时每十分钟运行一次?以下是我尝试过但不断出错的内容:

users-cron:
  handler: functions/users.cron
  events:
    - schedule:
        rate: rate(10 minutes)
    - schedule:
        rate: cron(0-10 0-23 ? * MON-SUN *)
形式上,有一个非常相似的例子:

每10分钟调用一次Lambda函数(周一至周五)
cron(0/10*?*周一至周五*)

你可以试试:

users-cron:
  handler: functions/users.cron
  events:
    - schedule:
        rate: cron(0/10 * ? * * *)

这正是回答我问题的语法:

users-cron:
  handler: functions/users.cron
  events:
    - schedule:
        rate: cron(0/10 0-23 ? * MON-SUN *)

你明白问号和星号*之间的区别吗?例如,为什么不用星号替换?它会不会表现得不一样?如果没有,计划作业的行为将如何不同?从同一链接:
*-指定所有值
?-没有指定的值
月日或周日值之一必须是问号(?)
为什么不删除第一个明细表?看起来,如果您保持
rate:rate(10分钟)
,您的函数将执行两次。不同之处在于,这10分钟的执行将在部署该功能时开始,而不是在小时开始时开始。此外,使用
0-23
*
表示小时,使用
MON-SUN
*
表示星期几是等效语法。星号表示
指定了所有的值
。你说得对!对不起,那是一种类型。我删除了,
rate:rate(10分钟)