Airflow 发生故障时\u回调在气流DAG()中不工作

Airflow 发生故障时\u回调在气流DAG()中不工作,airflow,airflow-operator,Airflow,Airflow Operator,我想为dag失败和成功调用两个不同的函数。为此,我想在DAG函数中使用on_failure_回调和on_success_回调 根据我的要求,此回调应该在dag级别,而不是任务级别。这就是为什么我在声明DAG变量时在LED DAG函数中编写回调函数的原因 但是这个回调函数没有被调用。如果我在任务级别调用相同的函数,则工作正常 这是我的代码: def success(): print("successful") dag = DAG(dag_id='callb

我想为dag失败和成功调用两个不同的函数。为此,我想在DAG函数中使用on_failure_回调和on_success_回调

根据我的要求,此回调应该在dag级别,而不是任务级别。这就是为什么我在声明DAG变量时在LED DAG函数中编写回调函数的原因

但是这个回调函数没有被调用。如果我在任务级别调用相同的函数,则工作正常

这是我的代码:

def success():
      print("successful")
    
dag = DAG(dag_id='callback_test',schedule_interval=None,default_args=default_args,on_success_callback=success)
    
    def fun1(**kwargs):
        print("function called")
    
    task1 = PythonOperator(
        task_id='task1',
        provide_context=True,
        python_callable=fun1,
        dag=dag
        )
    
    task1

然而,我认为它也应该在DAG级别工作,根据这一点:

对吧?


我无法让它工作,但是:

如果不工作,请用示例报告。最好是根据最新的气流测试版本1.10.10是旧版本我使它工作。执行此操作时要小心:on_failure_callback=myfunction,不要在函数中包含任何参数,参数是包含在执行上下文中的参数