Airflow - 如何获取所有未来的运行日期

Gau*_*hah 4 airflow airflow-scheduler

我正在努力安排气流作业。但是,为了验证我是否安排了正确的作业,我需要查看它将来何时运行。

Airflow 有以下命令,可以让我进行下一次运行。但是,这对于某些用例来说还不够。例如,我安排了每隔周五运行一次作业。我如何验证这一点。

airflow next_execution <dag_id>
Run Code Online (Sandbox Code Playgroud)

有没有办法,我可以获得该 dag 运行的所有未来日期。或者至少几个?

joe*_*oeb 5

虽然大多数进程使用croniter,但如果您有权访问您的安装,那么最好通过现有接口从“源”获取信息:

from airflow import models
from datetime import datetime, timedelta


dag_bag = models.DagBag()

dag_id = "dag_name"
dag = dag_bag.get_dag(dag_id)

now = datetime.now()
until = now + timedelta(days=21)

runs = dag.get_run_dates(start_date=now, end_date=until)
print(runs)
Run Code Online (Sandbox Code Playgroud)