【发布时间】:2021-06-12 11:21:50
【问题描述】:
需求:我们有 4 个客户,分布在 4 个不同的区域,我们需要在 Cloud Watch 事件中设置一个 Cron 表达式,该表达式需要在每天的特定时间触发 lambda。
目前Cloudwatch是基于GMT触发事件,如何更改时区?
【问题讨论】:
标签: amazon-web-services aws-lambda cron amazon-cloudwatch
需求:我们有 4 个客户,分布在 4 个不同的区域,我们需要在 Cloud Watch 事件中设置一个 Cron 表达式,该表达式需要在每天的特定时间触发 lambda。
目前Cloudwatch是基于GMT触发事件,如何更改时区?
【问题讨论】:
标签: amazon-web-services aws-lambda cron amazon-cloudwatch
您必须自己计算不同区域的 GMT 时间,然后在 EventBridge (CloudWatch) 中设置它们。
例如,如果您想在纽约市 (EDT) 当地时间凌晨 5 点触发事件,则需要将其转换为 GMT 时间。此刻将是上午 9 点。然后在 EventBridge (CloudWatch) 事件中设置该值。
【讨论】:
如果您使用的是 serverless.com,那么您可以使用这个插件来为您进行转换。
https://www.npmjs.com/package/serverless-local-schedule
events:
- schedule:
rate: cron(0 8-20 * * ? *)
timezone: Australia/Sydney
plugins:
- serverless-local-schedule
【讨论】: