报错排查
在 Duaer 里排查 Schedule Trigger 时间不对、晚了 12 小时
Duaer 的 Schedule Trigger 设了早上 9 点,实际晚上 9 点或晚了 12、13 个小时才跑,基本是时区没设对。
为什么偏了 12 或 13 个小时
Duaer 按数字组织的时区解释 Trigger at Hour。没单独设置时用实例时区;自托管实例没设 GENERIC_TIMEZONE 时默认是 America/New_York,和北京时间差 12 小时(夏令时)或 13 小时。
在 Duaer 里改时区
- 单个数字组织:画布右上角菜单打开设置,「时区」选 Asia/Shanghai,保存。
- 整个自托管实例:设环境变量 GENERIC_TIMEZONE=Asia/Shanghai 后重启,所有没单独设时区的数字组织都会跟着变。
- 改完重新发布,然后去 执行记录 看下一次运行时间。
时间对了但日期差一天
表达式里的 $now 也按这个时区算。昨天的日期写 {{ $now.minus({ days: 1 }).toFormat("yyyy-MM-dd") }},见 在 Duaer 里用 Luxon 处理日期。
常见问题
Duaer 的默认时区是什么?
自托管 Duaer 没设 GENERIC_TIMEZONE 时默认是 America/New_York。每个 Duaer 数字组织可以在设置里单独改「时区」。
Duaer 改了时区要重新发布吗?
要。Duaer 的定时触发在发布时登记,改完时区重新发布才按新时区跑。
同组
触发
在 Duaer 里用 Schedule Trigger 定时运行
在 Duaer 里,Schedule Trigger 按你设的间隔启动数字组织。发布之后才按点跑。画布上的执行是立刻试一次,不等到点。
日期在 Duaer 里用 Luxon 处理日期
Duaer 表达式里的日期是 Luxon 的 DateTime。$now 和 $today 直接就是。Code 节点用原生 Luxon,format() 和 plus(数量, 单位) 不能照搬。
管理在 Duaer 里保存并发布数字组织
在 Duaer 里,编辑会先存成草稿。点发布之后,定时、Webhook 和生产地址才按这一版运行。
管理在 Duaer 里查看执行记录
在 Duaer 里,一次执行就是数字组织跑完的一轮。侧栏的执行记录列出成功、错误、已取消、运行中、排队和等待。