【发布时间】:2018-12-17 15:17:00
【问题描述】:
有没有办法通过 Airflow api 获取最近运行的 DAG 的当前状态?我已经用这个尝试了实验性 api:
/api/experimental/dags/<DAG_ID>/tasks/<TASK_ID>
但这仅提供有关任务的信息,而不是每次运行的状态。基本上我需要能够获得最近一次运行任务的结果——成功、失败、排队等。
【问题讨论】:
标签: airflow directed-acyclic-graphs
有没有办法通过 Airflow api 获取最近运行的 DAG 的当前状态?我已经用这个尝试了实验性 api:
/api/experimental/dags/<DAG_ID>/tasks/<TASK_ID>
但这仅提供有关任务的信息,而不是每次运行的状态。基本上我需要能够获得最近一次运行任务的结果——成功、失败、排队等。
【问题讨论】:
标签: airflow directed-acyclic-graphs
您可以有一个任务来检查task_instance.state 上的气流数据库。您可以有一个任务或一个单独的 DAG,它将在您想要在特定执行日期检查的数据库上查找 dag 状态。
【讨论】:
我使用 Airflow 1.10.12 遇到了同样的需求,并使用此服务解决了它:
GET /api/experimental/dags/<string:dag_id>/dag_runs/<string:execution_date>
它将以这种格式返回一个 JSON:
{"state":"running"}
【讨论】: