python - 如何将 Airflow dag 配置为每天在特定时间运行?

标签 python airflow

如何将 Airflow dag 配置为在每天的指定时间执行,无论发生什么,就像 crons 一样。

我知道使用 TimeSensor 可以获得类似的行为,但在这种情况下,它取决于传感器任务,并且可能与 dag 执行时间冲突。

示例:使用传感器方法,如果我有传感器在第 0 时第 15 分钟运行,但如果 dag 稍后执行,那么我的任务将被延迟,所以即使对于传感器方法,我也需要确保 Dag 正确执行时间。

那么如何保证Dag在指定的时间执行呢?

最佳答案

例如,要在每天凌晨 2:30 启动一个 DAG,您可以执行以下操作:

DAG(
   dag_id='dag_id',
   # start date:28-03-2017
   start_date= datetime(year=2017, month=3, day=28),
   # run this dag at 2 hours 30 min interval from 00:00 28-03-2017
   schedule_interval='30 2 * * *')

在配置时间表之前,可以在此处验证和测试 cron 间隔的解释:https://crontab.guru/

关于python - 如何将 Airflow dag 配置为每天在特定时间运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35668852/

相关文章:

logging - Airflow KubernetesPodOperator 1.10.12 - 记录了任务启动信息,但没有来自容器的标准输出

airflow - 如何在手动触发 DAG 时修改具有默认值的 DAG 参数

python - 如何在包含 True 和 False 值的数组中找到 True 值所在的索引?

python - Python 代码库的持续集成系统

python - 无法在嵌套函数内的python中按值传递

python - Tornado 安全问题

python - Hadoop Reducer 没有结合所有 map 作业

airflow - Airflow 中的 CeleryExecutor 不会并行化 subdag 中的任务

python - Apache Airflow : Control over logging [Disable/Adjust logging level]

airflow - 在单次 dag 运行期间读取 dag 定义文件的频率是多少(每次任务运行/触发时都会重新评估/重新计算 dag)?