触发方式
订阅器支持多种触发方式,满足不同的自动化场景需求。
📅 定时计划(Cron)
使用 Cron 表达式定义复杂的执行计划,适合需要在特定时间点执行的任务。
快捷预设
系统提供常用的预设选项:
| 预设 | Cron 表达式 | 说明 |
|---|---|---|
| 每小时 | 0 * * * * | 每小时的第 0 分钟 |
| 每 2 小时 | 0 */2 * * * | 每 2 小时执行一次 |
| 每 6 小时 | 0 */6 * * * | 每 6 小时执行一次 |
| 每天上午 9 点 | 0 9 * * * | 每天 09:00 |
| 每天中午 12 点 | 0 12 * * * | 每天 12:00 |
| 每天下午 6 点 | 0 18 * * * | 每天 18:00 |
| 工作日上午 9 点 | 0 9 * * 1-5 | 周一至周五 09:00 |
| 每周一上午 9 点 | 0 9 * * 1 | 每周一 09:00 |
| 每月 1 日上午 9 点 | 0 9 1 * * | 每月 1 日 09:00 |
自定义配置
执行频率
选择基本频率类型:
| 频率 | 说明 |
|---|---|
| 每小时 | 每隔 N 小时执行 |
| 每天 | 每天在指定时间执行 |
| 每周 | 每周指定日期执行 |
| 每月 | 每月指定日期执行 |
每小时配置
- 间隔小时数:1-12 小时
- 在第几分钟执行:0-59 分钟
示例:每 2 小时的第 30 分钟执行 → 30 */2 * * *
每天配置
- 执行时间:选择小时和分钟
示例:每天 09:30 执行 → 30 9 * * *
每周配置
- 选择星期:可多选周一至周日
- 执行时间:选择小时和分钟
示例:每周一、三、五上午 9 点 → 0 9 * * 1,3,5
每月配置
- 选择日期:1-31 日,或"最后一天"
- 执行时间:选择小时和分钟
示例:每月 1 日和 15 日上午 9 点 → 0 9 1,15 * *
Cron 表达式格式
┌───────────── 分钟 (0-59)
│ ┌───────────── 小时 (0-23)
│ │ ┌───────────── 日期 (1-31)
│ │ │ ┌───────────── 月份 (1-12)
│ │ │ │ ┌───────────── 星期 (0-7, 0和7都是周日)
│ │ │ │ │
* * * * *
特殊字符
| 字符 | 说明 | 示例 |
|---|---|---|
* | 任意值 | * * * * * 每分钟 |
, | 列表 | 0 9,18 * * * 9点和18点 |
- | 范围 | 0 9 * * 1-5 周一至周五 |
/ | 步长 | */15 * * * * 每15分钟 |
时区说明
Cron 表达式使用您的本地时区。系统会在配置界面显示当前时区。
⏱️ 固定间隔(Interval)
按固定时间间隔重复执行,适合需要定期检查或监控的任务。
配置选项
| 选项 | 说明 | 范围 |
|---|---|---|
| 间隔时间 | 数值 | 1-999 |
| 单位 | 时间单位 | 分钟、小时、天 |
示例
| 配置 | 说明 |
|---|---|
| 30 分钟 | 每 30 分钟执行一次 |
| 2 小时 | 每 2 小时执行一次 |
| 1 天 | 每天执行一次 |
与 Cron 的区别
| 特性 | 固定间隔 | Cron |
|---|---|---|
| 配置复杂度 | 简单 | 灵活但复杂 |
| 执行时间 | 相对于上次执行 | 固定时间点 |
| 适用场景 | 监控、轮询 | 定时报告、计划任务 |
🕐 一次性定时(One-time)
在指定的日期和时间执行一次,适合临时任务或一次性需求。
配置选项
使用日期时间选择器选择执行时间:
- 选择日期
- 选择时间(小时和分钟)
使用场景
- 预约发送报告
- 定时提醒
- 临时数据采集
注意事项
- 执行完成后订阅器不会再次触发
- 可以手动再次设置新的执行时间
- 建议执行后检查结果
🔔 事件触发(Event)
通过外部事件触发执行,适合与其他系统集成。自动化配置里的“触发来源”先选择事件的采集方式,再选择具体平台:
- Issue 触发:工作空间内部的 Issue 创建或状态变化。
- Webhook:由平台主动推送事件到系统生成的接收端点,适合需要实时响应的场景。
- 轮询:系统按固定间隔主动拉取平台的变更请求事件,适合不便配置 Webhook 的场景。
选择 Webhook 或轮询后,再选择具体平台:
- GitHub:观察某个仓库的变更请求(Change Request)事件。
- GitLab:观察某个项目的变更请求事件。
选择触发方式后直接展示订阅资源
选择 Webhook / 轮询并确定 GitHub / GitLab 平台后,自动化配置会直接在下方展示该平台对应的事件订阅:
- 订阅资源:被观察的仓库/项目名称与地址。
- Webhook 地址:系统生成的接收端点,用于接收平台回调。
- 状态:该订阅当前的启用/停用状态。
订阅地址会直接展示在自动化配置中,与事件类型、执行目标放在一起。若要为当前来源创建新的订阅,直接在触发配置里点击 添加订阅,创建成功后会自动选中,并在同一页面展示 Webhook 地址。
Git Push 触发
代码推送时触发执行(开发中)。
配置选项
| 选项 | 说明 |
|---|---|
| 仓库 | Git 仓库地址(owner/repo 格式) |
| 分支 | 监听的分支(可选,默认所有分支) |
使用场景
- 代码提交后自动审查
- 自动运行测试
- 更新文档
💡 选择建议
按场景选择
| 场景 | 推荐触发方式 |
|---|---|
| 每日报告 | 定时计划(Cron) |
| 实时监控 | 固定间隔 |
| 临时任务 | 一次性定时 |
| 系统集成 | Webhook |
| CI/CD | Git Push |
按频率选择
| 频率 | 推荐触发方式 |
|---|---|
| 每分钟级 | 固定间隔 |
| 每小时级 | 固定间隔或 Cron |
| 每天级 | Cron |
| 每周/月级 | Cron |
| 不定时 | Webhook |
⚠️ 注意事项
执行频率限制
- 最小间隔建议不低于 1 分钟
- 高频执行会消耗更多资源
- 考虑任务执行时间,避免重叠
时区问题
- Cron 使用本地时区
- 跨时区协作时注意时间换算
- 系统会显示下次执行时间供确认
Webhook 安全
- 建议使用签名验证
- 妥善保管签名密钥
- 定期轮换密钥