日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Azkaban WebApi 调用

發布時間:2023/12/10 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Azkaban WebApi 调用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

登錄接口

獲取projectid及flow列表

獲取某個project下flow的schedule執行計劃

修改執行時間

列表執行歷史

執行flow

刪除執行計劃


?

官方文檔:https://azkaban.readthedocs.io/en/latest/ajaxApi.html

?

登錄接口

調用示例:

curl -k -X POST --data "action=login&username=azkaban&password=azkaban" https://localhost:8443

注意:文中請求均以curl命令形式展現,最后的url是請求的url,-X POST代表POST方式請求,--data或-d代表POST請求的BODY體

{"status" : "success","session.id" : "c001aba5-a90f-4daf-8f11-62330d034c0a" }

輸出示例:

?

?

取到session.id后,后續請求需該參數保持登錄狀態。

?

獲取projectid及flow列表

curl -k --get --data "session.id=6c96e7d8-4df5-470d-88fe-259392c09eea&ajax=fetchprojectflows&project=azkaban-test-project" https://localhost:8443/manager

?

輸出示例:

{"project" : "test-azkaban","projectId" : 192,"flows" : [ {"flowId" : "test"}, {"flowId" : "test2"} ] }

?

?

獲取某個project下flow的schedule執行計劃

curl -k --get --data "session.id=XXXXXXXXXXXXXX&ajax=fetchSchedule&projectId=1&flowId=test" http://localhost:8081/schedule

?

輸出示例:

{"schedule" : {"cronExpression" : "0 * 9 ? * *","nextExecTime" : "2017-04-01 09:00:00","period" : "null","submitUser" : "azkaban","executionOptions" : {"notifyOnFirstFailure" : false,"notifyOnLastFailure" : false,"failureEmails" : [ ],"successEmails" : [ ],"pipelineLevel" : null,"queueLevel" : 0,"concurrentOption" : "skip","mailCreator" : "default","memoryCheck" : true,"flowParameters" : {},"failureAction" : "FINISH_CURRENTLY_RUNNING","failureEmailsOverridden" : false,"successEmailsOverridden" : false,"pipelineExecutionId" : null,"disabledJobs" : [ ]},"scheduleId" : "3","firstSchedTime" : "2017-03-31 11:45:21"} }

?

修改執行時間

curl -k -d ajax=scheduleCronFlow -d projectName=wtwt -d flow=azkaban-training --data-urlencode cronExpression="0 23/30 5,7-10 ? * 6#3" -b "azkaban.browser.session.id=XXXXXXXXXXXXXX" http://localhost:8081/schedule

輸出示例:

{"message" : "PROJECT_NAME.FLOW_NAME scheduled.","scheduleId" : SCHEDULE_ID,"status" : "success" }

列表執行歷史

curl -k --get --data "session.id=6c96e7d8-4df5-470d-88fe-259392c09eea&ajax=fetchFlowExecutions&project=azkaban-test-project&flow=test&start=0&length=3" https://localhost:8443/manager

start 開始位置

length 長度

?

輸出示例:

{"total" : 2,"executions" : [ {"submitTime" : 1562914409512,"submitUser" : "azkaban","startTime" : 1562914409540,"endTime" : 1562914409571,"flowId" : "command","projectId" : 9,"execId" : 48,"status" : "SUCCEEDED"}, {"submitTime" : 1562913985555,"submitUser" : "azkaban","startTime" : 1562913985583,"endTime" : 1562913985652,"flowId" : "command","projectId" : 9,"execId" : 47,"status" : "SUCCEEDED"} ],"length" : 3,"project" : "whqtest","from" : 0,"projectId" : 9,"flow" : "command" }

?

執行flow

curl -k --get --data 'session.id=189b956b-f39f-421e-9a95-e3117e7543c9' --data 'ajax=executeFlow' --data 'project=azkaban-test-project' --data 'flow=test' https://localhost:8443/executor

返回值

{ message: "Execution submitted successfully with exec id 295", project: "foo-demo", flow: "test", execid: 295 }

?

刪除執行計劃

curl -k https://HOST:PORT/schedule -d "action=removeSched&scheduleId=SCHEDULE_ID" -b azkaban.browser.session.id=SESSION_ID

返回值

{ "message" : "PROJECT_NAME.FLOW_NAME scheduled.", "scheduleId" : SCHEDULE_ID, "status" : "success" }

?

總結

以上是生活随笔為你收集整理的Azkaban WebApi 调用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。