我有一堆AWS Lambda函数,我想在一天中的某些时间触发它们,但这些时间在不同的时区。例如,我可能希望事件在以下位置触发:
- 悉尼时间下午4:55
- 芝加哥时间下午6:30
- 芝加哥时间晚上9点
。。。等等
使用Cloudwatch事件,无论我使用哪个AWS区域,我似乎只能指定使用UTC(即伦敦时间)触发的事件。今天,这很好;我可以计算出伦敦和悉尼、伦敦和芝加哥之间的时差,等等——然而,夏季在不同城市的不同日期生效,这会导致我的Lambdas在错误的时间触发。
有没有办法使用非UTC时间设置触发这些Cloudwatch事件?或者,除了Cloudwatch之外,是否有其他机制可以用于在一天中的特定时间触发Lambda函数,并在我想要的时区中指定这些时间?
提前感谢
小心-伦敦目前(截至2017年2月6日)为UTC,但从2017年3月26日开始,他们将处于英国夏令时,即UTC+1。换句话说,伦敦时间不一定是UTC。
对我来说,最好的办法是让另一个lambda根据已知的时区变化更新cloudwatch触发时间。您没有展示您的实现语言,但作为一个例子,在Java中,您可以看看这篇文章。每天在UTC时间零点运行此Lambda一次,并适当更新cloudwatch规则时间。