Terraform配置EventBridge定时规则报错:ScheduleExpression无效求排查
Amazon EventBridge Cron表达式错误分析及修正
你的cron表达式核心问题是字段顺序完全搞反了,Amazon EventBridge的cron表达式遵循固定的字段顺序:分钟 小时 日 月 星期 年(年为可选字段)
错误表达式问题拆解
你当前的表达式:cron(0 0 6,20 ? * MON-FRI *)
- 第二个字段是小时,你填了
0,对应UTC时间凌晨0点 - 第三个字段是日,你填了
6,20,对应每个月的6号和20号
这完全不符合你“周一至周五每天6点、20点运行”的需求。
修正后的正确表达式
把小时字段设为6,20,日字段用?(当同时指定星期字段时,日字段必须用?表示不指定具体日期),正确配置如下:
schedule_expression = cron(0 6,20 ? * MON-FRI *)
额外注意事项
- EventBridge cron默认使用UTC时间,如果你的需求是本地时间,需要先转换为UTC再调整小时值。
- 星期字段的
MON-FRI是合法取值,无需替换为数字。 - 年字段是可选的,若不需要指定年份,可省略最后一个
*,简化为:cron(0 6,20 ? * MON-FRI)
内容的提问来源于stack exchange,提问作者JavaJo
相关产品推荐
相关产品推荐

