我想知道dag的状态是运行、失败还是成功。我正在通过CL参数airflow trigger触发dag,在作业执行之后,我想知道运行的状态。我找不到任何方法。
我尝试了airflow dag_state,但它没有提供任何帮助。如果一天中有不止一次运行,通过命令行参数或python代码获取最近一次运行的状态,我应该怎么做?
发布于 2019-11-07 12:32:01
您可以将list_dag_runs命令与CLI配合使用,以列出给定dag ID的dag运行。返回的信息包括每次运行的状态。
您还可以通过python代码以几种不同的方式检索信息。我过去使用过的一种方法是'find' method in airflow.models.dagrun.DagRun
使用python3的示例说明如何通过DagRun.find()获取dag_runs的状态:
dag_id = 'fake_dag_id'
dag_runs = DagRun.find(dag_id=dag_id)
for dag_run in dag_runs:
      print(dag_run.state)发布于 2019-11-10 08:09:50
您可以使用以下CL
airflow dag_state dag_id execution_date示例:
        airflow dag_state test_dag_id 2019-11-08T18:36:39.628099+00:00在上面的示例中:
test_dag_id is the actual dag
2019-11-08T18:36:39.628099+00:00 is the execution date. You can get this from airflow UI for your run.另一种选择是使用airflow rest api插件。这是更好的选择。您可以触发dag,也可以检查DAG的状态。
https://stackoverflow.com/questions/58741649
复制相似问题