如何获得 dag 状态,如运行或成功或失败

Jim*_*rty 3 python-2.7 airflow

我想知道 dag 的状态是运行还是失败还是成功。我正在通过 CL 参数气流触发器触发 dag,并且在作业执行后,我想知道运行的状态。我找不到任何办法。

我试过气流 dag_state 但它没有给出。如果一天中有多次运行以通过命令行参数或通过 python 代码获取最新运行的状态,我该怎么办。

Jos*_*osh 6

您可以在 CLI 中使用list_dag_runs命令来列出给定 dag ID 的 dag 运行。返回的信息包括每次运行的状态。

您还可以通过几种不同的方式通过 python 代码检索信息。我过去使用的一种方法是airflow.models.dagrun.DagRun中“查找”方法

关于如何通过 DagRun.find() 获取 dag_runs 状态的 python3 示例:

dag_id = 'fake_dag_id'
dag_runs = DagRun.find(dag_id=dag_id)
for dag_run in dag_runs:
      print(dag_run.state)
Run Code Online (Sandbox Code Playgroud)