如何在 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)
这是我的任务和任务,当任务失败时它会调用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)