如何在 Airflow 的 on_dag_failure 函数中获取标签?

How can I get the tags in the on_dag_failure function on Airflow?

这是我的任务和任务,当任务失败时它会调用on_dag_failure

        dag = DAG('my_dag_id',
              catchup=False,
              schedule_interval='00 01 17 * *',
              description = 'My dag desc',
              default_args=default_args,
              tags=['TAG_1','TAG_2'],
    )

    run_this_0 = BashOperator(
        task_id='my_task_id',
        bash_command='some cmd',
        on_failure_callback = on_dag_failure,
        execution_timeout=None,
        dag=dag
)

在 on_dag_failure 中,我想获取在 dag 中定义的标签。 有什么办法可以得到吗?

def on_dag_failure(context):
    tags = dag.tags #how to get the tags from the dag
    tags_str = ""

    for tag in tags:
        tags_str += tag + " "
    
    print(tags_str)

models.DAG 对象应该在提供给函数的 context 变量中可用:

def on_dag_failure(context):
  tags_str = " ".join(context["dag"].tags)
  print(tags_str)