airflow.sensors.date_time
¶
模块内容¶
类¶
等待直到指定的日期时间。 |
|
等待直到指定的日期时间发生。 |
- class airflow.sensors.date_time.DateTimeSensor(*, target_time, **kwargs)[source]¶
基类:
airflow.sensors.base.BaseSensorOperator
等待直到指定的日期时间。
此传感器的一个主要优点是
target_time
的幂等性。它处理TimeSensor
和TimeDeltaSensor
不适用的某些情况。- 示例 1 :
如果一个任务需要在每个
execution_date
的上午 11 点等待。使用TimeSensor
或TimeDeltaSensor
,所有在凌晨 1 点启动的回填任务都必须等待 10 个小时。这是不必要的,例如,一个{{ ds }} = '1970-01-01'
的回填任务不需要等待,因为1970-01-01T11:00:00
已经过去。- 示例 2 :
如果一个 DAG 计划每天 23:00 运行,但其中一个任务需要在第二天 01:00 运行,使用
TimeSensor
会立即返回True
,因为 23:00 > 01:00。相反,我们可以这样做DateTimeSensor( task_id="wait_for_0100", target_time="{{ next_execution_date.tomorrow().replace(hour=1) }}", )
- 参数
target_time ( str | datetime.datetime ) – 作业成功的日期时间之后的时间。(模板化)
- class airflow.sensors.date_time.DateTimeSensorAsync(*, start_from_trigger=False, end_from_trigger=False, trigger_kwargs=None, **kwargs)[source]¶
基类:
DateTimeSensor
等待直到指定的日期时间发生。
自行延迟以避免在等待时占用工作进程槽。它是 DateTimeSensor 的直接替代品。
- 参数