python - 如何从成功回调中将气流任务的状态标记为失败?
问题描述
任务是否可以从其“on_success_callback”标记为失败
用例:
任务执行并记录一些信息。
我在任务的“on_success_callback”中处理这些日志,并根据日志,我想将任务的状态标记为失败。
我尝试在“on_success_callback”中引发异常,但它只是记录“on_success_callback”失败并将任务标记为成功。
这是我的气流任务的代码,
dag_utils 是一个 python 文件,它提供了 task_callback 的实现,我在其中处理日志:
airflow_task = BashOperator(
task_id='task1',
bash_command = dag_utils.make_full_command(cmd),
trigger_rule=TriggerRule.ALL_SUCCESS,
on_failure_callback = dag_utils.task_callback,
on_success_callback = dag_utils.task_callback,
dag=dag
)
解决方案
可以从其“on_success_callback”中将任务标记为失败吗?=> 没有
因为它们是从任务收到状态后的回调。在此处首选气流代码
为了满足您的要求,我建议您在上游有一个新任务task1
来处理task1
输出中的日志。使用此实现,您可以轻松地将其标记为失败或成功。
推荐阅读
- linux - 使用“日期”命令转换整个列
- javascript - 为什么 redux 存储更改后连接的 React 组件不更新?
- python - NameError: name 'Address' 未定义(使用 python shell 时),但它在 models.py 中
- protractor - Protractor 无法编译 Typescript 但路径存在
- biginteger - 32-1024 位定点矢量算法与 AVX-2
- bash - 从 Linux bash 调用 Matlab 时捕获错误消息
- python - 如何获得每个问题的所有四个选项...例如,如果我打印问题,那么我如何打印该特定问题的所有四个选项
- python - 使用 os.path.join() 运行脚本时出现 TypeError
- java - ExecutorService InvokeAll 用于混合数据类型
- asp.net-core - ASP.NET Core 验证剃刀标记