2015-02-05 2 views
0

Я пытаюсь отправить уведомление по электронной почте, если какое-либо действие в моем рабочем процессе oozie терпит неудачу. Как мне получить, какое действие получило неудачу или есть ли способ увидеть последнее успешное имя действия в DAG рабочего процесса?Oozie: workflow: Как получить последнее успешное действие

ответ

0

Нет прямого способа получить последнее «успешное» действие AFAIK. Если вы задумаетесь об этом за пределами определенного контекста на мгновение: определить «успех» непросто, учитывая, что fork/join, контрольные узлы и т. Д.

Однако, как только критерии определены, я думаю, что можно найти последние «успешные ", используя API REST Oozie. Например, ответ рабочего процесса ($ OOZIE_URL/v1/job/job_id? Show = info) возвращает список действий в рабочем процессе. Действия связаны с полем «переход»: переход последнего действия равен нулю, переход других узлов - их нисходящим узлом и т. Д.

Удачи и сообщите нам, если это сработает.

0

как получить какие действия получили не удалось

wf:lastErrorNode() 

В следующем Oozie документооборота пример фрагмента кода, вышеупомянутая функция используется, чтобы получить сообщение об ошибке последнего не удалось действия:

<kill name="fail"> 
    <message>Action failed, error message: ${wf:errorMessage(wf:lastErrorNode())}</message> 
</kill> 

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

Дополнительную информацию о таких функциях см. В документе Workflow EL functions section документа Oozie Workflow.

Смежные вопросы