如何在serverless.yml中配置EventBridge规则定时触发Lambda函数
实现配置方案
可根据是否需要复用原有手动创建的EventBridge规则,选择以下两种方案:
方案1:复用已有EventBridge规则(你已持有对应ARN的场景)
无需修改原有规则,直接将Lambda与现有规则绑定即可,配置如下:
functions: myFunction: # 替换为你的Lambda函数自定义名称 handler: index.handler # 替换为你的Python函数实际入口路径 events: - eventBridge: existing: true arn: 替换为你持有的EventBridge规则ARN
其中existing: true参数用于告知Serverless Framework直接关联现有规则,不需要新创建EventBridge资源。
方案2:在Serverless配置中新建触发规则
若无需保留之前手动创建的规则,可直接在配置中定义全新的定时触发规则:
functions: myFunction: # 替换为你的Lambda函数自定义名称 handler: index.handler # 替换为你的Python函数实际入口路径 events: - eventBridge: schedule: 'cron(0 13 * * ? *)' description: '每日北京时间21点触发Lambda执行'
注意事项
- AWS EventBridge的Cron表达式默认使用UTC时区,以上示例中
0 13 * * ? *对应北京时间(GMT+8)每日21点。如果你需要UTC时区21点触发,将Cron规则改为cron(0 21 * * ? *)即可 - 配置完成后执行
sls deploy命令即可自动完成Lambda部署、EventBridge规则绑定/创建的全自动化流程
内容的提问来源于stack exchange,提问作者Mase456
相关产品推荐
相关产品推荐

