oozie作业完成后的http回调

8yparm6h  于 2021-06-04  发布在  Hadoop
关注(0)|答案(2)|浏览(354)

在oozie中完成一个工作流后,是否有一种方法可以发出和外部调用。阅读一些文档似乎是可能的(oozie可以对操作开始/结束/失败事件和工作流结束/失败事件发出http回调通知。)
http://archive.cloudera.com/cdh/3/oozie/workflowfunctionalspec.html
但不知道如何做到这一点,它可以是一个外部api调用回调。
谢谢

6gpjuf90

6gpjuf901#

再往下看文件,第5节
外部api调用是什么意思?它只能执行http get—因此,如果您配置一个servlet端点或类似的东西,以便在访问url时触发外部api调用,那么您应该可以执行几乎任何您想要的操作。
然而,值得注意的是,文件中说:
oozie将尽最大努力传递通知,如果失败,它将在放弃之前以预先配置的间隔重试预先配置的通知次数。

5sxhfpxr

5sxhfpxr2#

有两个属性可以添加到oozie job.properties中。变量$jobid、$status和$nodename在运行时被替换。

1. oozie.wf.workflow.notification.url=http://yourserver.com/some/path/$jobId/$status

这将给您一个http get调用http://yourserver.com/some/path/ 例如,每个状态更改的工作级别

myhost.softlayer.com - - [19/Feb/2016 10:35:02] "GET /dbgen/lineitem2/0000050-151213000221460-oozie-oozi-W/RUNNING HTTP/1.1" 200 -
myhost.softlayer.com - - [19/Feb/2016 10:35:35] "GET /dbgen/lineitem2/0000050-151213000221460-oozie-oozi-W/SUCCEEDED HTTP/1.1" 200 -

这一个给你的oozie工作步骤之间更详细的过渡

2. oozie.wf.action.notification.url=http://yourserver.com/some/path/$jobId/$nodeName/$status

服务器端输出示例:

myhost.softlayer.com - - [19/Feb/2016 10:35:02] "GET /dbgen/lineitem2/0000050-151213000221460-oozie-oozi-W/:start:/T:ReadConfig HTTP/1.1" 200 -
myhost.softlayer.com - - [19/Feb/2016 10:35:03] "GET /dbgen/lineitem2/0000050-151213000221460-oozie-oozi-W/ReadConfig/S:RUNNING HTTP/1.1" 200 -
myhost.softlayer.com - - [19/Feb/2016 10:35:09] "GET /dbgen/lineitem2/0000050-151213000221460-oozie-oozi-W/ReadConfig/T:CheckStep HTTP/1.1" 200 -
myhost.softlayer.com - - [19/Feb/2016 10:35:10] "GET /dbgen/lineitem2/0000050-151213000221460-oozie-oozi-W/sqoop-table-import/S:RUNNING HTTP/1.1" 200 -
myhost.softlayer.com - - [19/Feb/2016 10:35:10] "GET /dbgen/lineitem2/0000050-151213000221460-oozie-oozi-W/CheckStep/T:sqoop-table-import HTTP/1.1" 200 -
myhost.softlayer.com - - [19/Feb/2016 10:35:29] "GET /dbgen/lineitem2/0000050-151213000221460-oozie-oozi-W/javaStatsReporting/S:RUNNING HTTP/1.1" 200 -
myhost.softlayer.com - - [19/Feb/2016 10:35:29] "GET /dbgen/lineitem2/0000050-151213000221460-oozie-oozi-W/sqoop-table-import/T:javaStatsReporting HTTP/1.1" 200 -
myhost.softlayer.com - - [19/Feb/2016 10:35:35] "GET /dbgen/lineitem2/0000050-151213000221460-oozie-oozi-W/end/T:null HTTP/1.1" 200 -
myhost.softlayer.com - - [19/Feb/2016 10:35:35] "GET /dbgen/lineitem2/0000050-151213000221460-oozie-oozi-W/javaStatsReporting/T:end HTTP/1.1" 200 -

相关问题