Oozie:工作流程:如何获取上一次成功的操作

Oozie:工作流程:如何获取上一次成功的操作

问题描述:

如果我的oozie工作流程中的任何操作失败,我正尝试发送电子邮件提醒。如何获取哪个操作失败或者有什么方法可以查看工作流DAG中最后一个成功的操作名称?Oozie:工作流程:如何获取上一次成功的操作

有没有直接的方法来获得最后的“成功”的行动AFAIK。如果你在特定环境下思考一会儿:考虑fork/join,控制节点等,定义“成功”并不容易。

但是,一旦标准定义好了,我想有可能找到最后一个“成功“节点使用Oozie的REST API。例如,工作流的响应($ OOZIE_URL/v1/job/job_id?show = info)返回工作流中的操作列表。动作与“过渡”字段相关联:最后一个动作的过渡为空,其他节点的过渡是它们的下游节点等。

祝你好运,让我们知道它是否有效。

如何获得其行动得到了失败

wf:lastErrorNode() 

在下面的Oozie的工作流实例片段中,上述功能是用来获取最后的错误信息失败的动作:

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

我不知道有什么办法可以获得“上一个成功的动作名称”。

有关这些功能的更多信息,请参阅Oozie Workflow文档的Workflow EL functions section