如果我的oozie工作流中的任何操作失败,我将尝试发送电子邮件警报。如何获取失败的操作或是否有任何方法可以在工作流dag中查看最后成功的操作名称?
dnph8jn41#
没有直接的方法可以让最后一次“成功”的行动失败。如果您在特定上下文之外考虑一下:考虑到fork/join、控制节点等,很难定义“success”。不过,一旦定义了条件,我想可以使用oozie的restapi找到最后一个“成功”的节点。例如,工作流的响应($oozie\u url/v1/job/job\u id?show=info)返回工作流中的操作列表。动作链接到“transition”字段:最后一个动作的transition为空,其他节点的transition为其下游节点,等等。祝你好运,让我们知道它是否有效。
hm2xizp92#
如何获取失败的操作
wf:lastErrorNode()
在下面的oozie工作流示例片段中,前面提到的函数用于获取上次失败操作的错误消息:
<kill name="fail"> <message>Action failed, error message: ${wf:errorMessage(wf:lastErrorNode())}</message> </kill>
我不知道有什么办法可以得到“最后一个成功的动作名”请参阅oozie workflow文档中的workflow el functions部分,以了解有关这些功能的更多信息。
2条答案
按热度按时间dnph8jn41#
没有直接的方法可以让最后一次“成功”的行动失败。如果您在特定上下文之外考虑一下:考虑到fork/join、控制节点等,很难定义“success”。
不过,一旦定义了条件,我想可以使用oozie的restapi找到最后一个“成功”的节点。例如,工作流的响应($oozie\u url/v1/job/job\u id?show=info)返回工作流中的操作列表。动作链接到“transition”字段:最后一个动作的transition为空,其他节点的transition为其下游节点,等等。
祝你好运,让我们知道它是否有效。
hm2xizp92#
如何获取失败的操作
在下面的oozie工作流示例片段中,前面提到的函数用于获取上次失败操作的错误消息:
我不知道有什么办法可以得到“最后一个成功的动作名”
请参阅oozie workflow文档中的workflow el functions部分,以了解有关这些功能的更多信息。