Как пометить состояние задачи воздушного потока как неудачной из-за ее успешного обратного вызова? - PullRequest
0 голосов
/ 11 апреля 2019

Может ли задача быть помечена как неудачная из-за ее "on_success_callback"

Вариант использования:

Задание выполняется и регистрирует некоторую информацию.

Я обрабатываю эти журналы в «on_success_callback» задачи и, основываясь на журналах, хочу пометить состояние задачи как неудачное.

Я пытался вызвать исключение в «on_success_callback», но он просто регистрирует, что «on_success_callback» не удалось, и помечает задачу как успешную.

Это код для моей задачи воздушного потока,
dag_utils - это файл python, который дает реализацию task_callback, в которой я обрабатываю журналы: </p> <pre><code>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 )

1 Ответ

0 голосов
/ 11 апреля 2019

Может ли задача быть помечена как неудачная из-за ее "on_success_callback"? => Нет

Потому что они являются обратными вызовами после получения статуса от задачи. Предпочтительный код воздушного потока здесь

В соответствии с вашими требованиями, я предлагаю новую задачу перед вашим task1 для обработки журналов с вывода task1. С помощью этой реализации вы можете легко пометить как провал или успех.

...