一旦在Oozie中完成了一次worflow,是否有辦法進行外部調用?閱讀一些文件似乎是可能的。 (Oozie的可以對動作的開始/結束/故障事件和工作流程結束/故障事件HTTP回調通知。)一次oozie作業完成後的HTTP回調
http://archive.cloudera.com/cdh/3/oozie/WorkflowFunctionalSpec.html
但不知道如何做到這一點,它可以在回調的外部API調用。
感謝
一旦在Oozie中完成了一次worflow,是否有辦法進行外部調用?閱讀一些文件似乎是可能的。 (Oozie的可以對動作的開始/結束/故障事件和工作流程結束/故障事件HTTP回調通知。)一次oozie作業完成後的HTTP回調
http://archive.cloudera.com/cdh/3/oozie/WorkflowFunctionalSpec.html
但不知道如何做到這一點,它可以在回調的外部API調用。
感謝
再往下文檔,section 5
你所說的外部API調用是什麼意思?它只能執行HTTP獲取 - 因此,如果您配置servlet端點或類似的東西,以便在訪問URL時觸發外部API調用,那麼您應該可以做任何你想做的事情。
還值得一但指出該文件說:
了Oozie將投遞通知盡最大努力,在失敗的情況下,將重試的通知在次預配置數量放棄之前預先配置的時間間隔。
有兩個屬性可以添加到您的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 -
這一個給人步驟
2. oozie.wf.action.notification.url=http://yourserver.com/some/path/$jobId/$nodeName/$status
您Oozie的工作之間更加詳細的過渡
服務器端的採樣輸出:
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 -
謝謝,第5節確實解釋了我想要的。 –