0

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

4

2 回答 2

0

没有直接的方法来获得最后一个“成功”的动作 AFAIK。如果您在特定上下文之外考虑一下:考虑到 fork/join、控制节点等,定义“成功”并不容易。

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

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

于 2015-02-05T22:43:57.327 回答
0

如何获取失败的操作

wf:lastErrorNode()

在以下 Oozie-workflow 示例片段中,上述函数用于获取最后失败操作的错误消息:

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

我不知道有什么方法可以获取“最后成功的操作名称”。

有关这些函数的更多信息,请参阅 Oozie Workflow 文档的Workflow EL 函数部分

于 2017-08-22T04:21:23.713 回答