如何解决如何在Airflow的on_dag_failure函数中获取标签?
这是我的任务,当任务失败时,它将调用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)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。