有没有办法通过电子邮件发送完成电子邮件的工作流程的持续时间?有这样一个变量,我可以使用吗?如何在最后获得oozie工作流程的持续时间
2
A
回答
0
我不认为这样的变量是可用的。但是如果需要的话,你可以使用shell动作来完成。在您的工作流程中,开始执行一个shell脚本以启动时间并将其保存在一个变量中。在工作流程刚刚完成之前,您的电子邮件操作有另一个shell脚本来计算当前时间 - 开始时间并在您的电子邮件中使用它。但这会让你的工作流程变得很脏
0
这是Oozie的一个显着缺点。我们的每个工作流都以一个shell动作开始,该动作调用一个简单的bash脚本来获取时间戳。
<action name="start-time">
<shell xmlns="uri:oozie:shell-action:0.1">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<exec>utc-time.sh</exec>
<file>../common/utc-time.sh#utc-time.sh</file>
<capture-output/>
</shell>
<ok to="the-first-actual-action"/>
<error to="fail"/>
</action>
这是可测试与Java EL在我们对完成发送电子邮件,错误,像这样:
<action name="email">
<email xmlns="uri:oozie:email-action:0.1">
<to>${emailsToAlert}</to>
<subject>COMPLETED: ${wf:name()}</subject>
<body>
Workflow ID: ${wf:id()}
Workflow Name: ${wf:name()}
Workflow app path: ${wf:appPath()}
Start Time: ${wf:actionData('start-time')['time']}
End Time: ${timestamp()}
</body>
</email>
<ok to="end"/>
<error to="fail"/>
</action>
获取持续时间是另一个涉及传递的起点和终点跳穿圈运动时间到一个bash脚本。
我正在调查Oozie SLA functionality,但我还没有找到提取数据的方法。
相关问题
- 1. 如何在oozie工作流程中获得oozie jobId?
- 2. 如何获得AudioInputStream的持续时间?
- 3. 如何获得给定h264流(Silverlight)的精确持续时间?
- 4. 在oozie中查找上次执行工作流程的时间
- 5. Apache Oozie工作流程
- 6. Netsuite timetrack持续时间字段到工作流程
- 7. 如何在Oozie工作流程EL功能中使用Oozie作业属性?
- 8. 如何在html中获得精确的持续时间
- 9. Azure的Oozie的工作流程
- 10. 持续集成工作流程理念
- 11. Oozie:子工作流操作:如何检索子工作流ID?
- 12. 与开始Oozie的工作流程
- 13. 如何在oozie工作流任务之间传递数据
- 14. 为Oozie的工作流
- 15. Android MediaPlayer - 如何从流文件获得正确的持续时间
- 16. 如何在将来的日期运行oozie工作流程
- 17. 如何在Rust中获得持续时间为毫秒数
- 18. 如何在python中获得单调持续时间?
- 19. 如何在java中获得flv持续时间?
- 20. 如何获取Soundpool的持续时间
- 21. 如何在工作流程中获得KNIME工作流程名称
- 22. 如何获得laravel中的mp3文件的持续时间5.5
- 23. 不云数据流流工人获得持续使用折扣?
- 24. 如何获得视频剪辑的持续时间
- 25. iOS:如何获得长按手势的持续时间?
- 26. 如何使用python获得Youtube视频的持续时间?
- 27. 如何使用C#获得视频文件的持续时间?
- 28. 如何获得视频闪存文件的持续时间?
- 29. 如何获得Laravel的月份持续时间
- 30. 如何获得从两次减去的持续时间
我想过这个,但希望能有一个更清洁的解决方案。有趣的是,Hue界面能够显示持续时间;因此,我假设它应该在日志中的某处。 – Pasha 2014-12-09 17:33:57