Azkaban 内置时间参数

参数名称 样例 含义
azkaban.flow.start.timestamp 2018-08-21T15:23:15.075+08:00 计划执行时间的具体时间
azkaban.flow.start.year 2018 计划执行时间的年
azkaban.flow.start.month 08 计划执行时间的月
azkaban.flow.start.day 21 计划执行时间的日
azkaban.flow.start.hour 15 计划执行时间的小时
azkaban.flow.start.minute 23 计划执行时间的分钟
azkaban.flow.start.second 15 计划执行时间的秒
azkaban.flow.start.milliseconds 075 计划执行时间的毫秒
azkaban.flow.start.timezone Asia/Shanghai 计划执行时间的时区
azkaban.flow.current.date 2018-08-21 计划执行时间日期
azkaban.flow.current.month 2019-08-01 计划执行时间所在月开始1号
azkaban.flow.current.hour 2018-08-21 15:00:00 计划执行时间所在小时的0分0秒
azkaban.flow.1.days.ago 2018-08-20 计划执行时间一天前日期
azkaban.flow.2.days.ago 2018-08-19 计划执行时间两天前日期
azkaban.flow.3.days.ago 2018-08-18 计划执行时间三天前日期
azkaban.flow.7.days.ago 2018-08-14 计划执行时间的七天前日期
azkaban.flow.30.days.ago 2018-07-22 计划执行时间的三十天前日期
schedule.exec.time 1534839814392 计划执行时间的unix时间戳

Azkaban 自定义时间参数

Azkaban推荐使用Joda Time来自定义时间以及日期的格式。更多自定义参数请用户自行百度 Joda Time 使用姿势;

获取计划执行时间,格式为:年 - 月 - 日 时 : 分 : 秒 $(new("org.joda.time.DateTime", ${schedule.exec.time}).toString('YYYY-MM-dd HH:mm:ss'))

在此基础上,可使用以下方法来获取自定义时间 如:获取计划执行时间的前一天的零点:格式为:年 - 月 - 日 00:00:00 '$(new("org.joda.time.DateTime", ${schedule.exec.time}).minusDays(1).toString('YYYY-MM-dd00:00:00'))'

方向 向前 向后
minusSeconds(n) — 前 n 秒 plusSeconds(n) — 后 n 秒
minusMinutes(n) — 前 n 分 plusMinutes(n) — 后 n 分
minusHours(n) — 前 n 时 plusHours(n) — 后 n 时
minusDays(n) — 前 n 日 plusDays(n) — 后 n 日
minusWeeks(n) — 前 n 周 plusWeeks(n) — 后 n 周
minusMonths(n) — 前 n 月 plusMonths(n) — 后 n 月
minusYears(n) — 前 n 年 plusYears(n) — 后 n 年