我希望任务在启动 12 小时后失败,我已设置execution_timeout为 12 小时:
Operator 是 SQLSensor,因为它有时会丢失连接并失败,所以我将其设置retries为 3。
但是,由于重试,任务会在每次超时后重新开始。
1:任务于10:00开始
2:22:00超时
3:然后任务在22:01再次开始
我不想要这个,如何设置所有重试的总超时?
log_sensor = SqlSensor(
task_id='log_sensor',
conn_id='mssql_etl',
sql=my_query,
retries=3,
execution_timeout=timedelta(hours=12),
dag=dag)
Run Code Online (Sandbox Code Playgroud)
小智 0
我认为您想使用slakwarg,如此处文档中所述https://airflow.apache.org/docs/1.10.2/code.html?highlight=task%20timeout
\n\nsla (datetime.timedelta) \xe2\x80\x93 作业预计成功的时间。请注意,这表示周期结束后的时间增量。例如,如果您将 SLA 设置为 1 小时,则如果 2016-01-01 实例尚未成功,调度程序将在 2016-01-02 凌晨 1:00 后不久发送电子邮件。调度程序特别关注具有 SLA 的作业,并针对 SLA 未命中发送警报电子邮件。SLA 缺失也会记录在数据库中以供将来参考。共享相同 SLA 时间的所有任务都会捆绑在一封电子邮件中,并在该时间之后立即发送。SLA 通知对于每个任务实例仅发送一次。
\n
| 归档时间: |
|
| 查看次数: |
3642 次 |
| 最近记录: |