任务运维
作业组管理
DeployJobgroup
接口说明
上线已发布的最高版本作业组
原型
POST /v1/project/<projectName>/jobgroup/<jobgroupName>?deploy
请求参数
名称 | 类型 | 位置 | 必须 | 描述 |
---|---|---|---|---|
projectName | String | URL | 是 | 项目空间名称 |
jobgroupName | String | URL | 是 | 作业组名称 |
响应参数
除公共响应参数外,无特殊响应。
错误码
Code | message | HTTP状态码 | 描述 |
---|---|---|---|
AccessDenied | No permission | 403 | 无权限 |
ProjectNotFound | Project is not found. | 404 | 项目空间不存在 |
JobNotFound | Job is not found | 404 | 作业不存在 |
请求示例
POST /v1/project/project1/jobgroup/my-jobgroup?deploy
响应示例
HTTP/1.1 200 OK
Content-Length: 0
Content-Type: application/json
ListJobgroups
接口说明
获取运维中心作业组列表
原型
GET /v1/project/<projectName>/jobgroup?
请求参数
名称 | 类型 | 位置 | 必须 | 描述 |
---|---|---|---|---|
projectName | String | URL | 是 | 项目空间名称 |
owner | String | QueryString | 否 | 责任人搜索项 |
deployer | String | QueryString | 否 | 上线人搜索项 |
publisher | String | QueryString | 否 | 发布人搜索项 |
name | String | QueryString | 否 | 作业组名称(唯一id串)搜索项 |
sourceName | String | QueryString | 否 | 作业组展示名称搜索项 |
status | String | QueryString | 否 | 任务状态过滤项(ALL, PUBLISHED(已发布), DEPLOYED(已上线), DEPLOYED_NEWVERSION(已上线有新版本)),默认 ALL |
pageNo | Integer | QueryString | 是 | 页码,默认:1,若为-1,则不分页 |
pageSize | Integer | QueryString | 是 | 当前页最大显示数量,默认:10,若为-1,则不分页。 |
orderBy | String | QueryString | 否 | 排序字段 |
order | String | QueryString | 否 | 排序方式,枚举值{asc, desc},默认desc |
响应参数
名称 | 类型 | 描述 |
---|---|---|
jobs | List<JobObj> | 作业组描述对象 列表 |
pageNo | Integer | 页码 |
pageSize | Integer | 当前页最大显示数量 |
totalCount | Integer | 总数 |
JobObj 对象定义
名称 | 类型 | 描述 |
---|---|---|
name | String | 作业组名称(唯一 id 串) |
sourceName | String | 作业组展示名称 |
status | String | 作业组状态 |
newestVersion | Integer | 最新版本 |
onlineVersion | Integer | 上线版本 |
nodeCount | Integer | 作业组中节点数量 |
owner | String | 责任人 |
deployer | String | 上线人 |
publisher | String | 发布人 |
publishTime | DateTime | 发布时间,格式: yyyy-MM-ddTHH:mm:ssZ |
deployTime | DateTime | 上线时间,格式: yyyy-MM-ddTHH:mm:ssZ |
isAlarmed | Boolean | 是否配置告警 |
isScheduled | Boolean | 是否配置调度 |
isRunning | Boolean | 是否存在正在运行的实例 |
错误码
Code | message | HTTP状态码 | 描述 |
---|---|---|---|
AccessDenied | No permission | 403 | 无权限 |
请求示例
GET /v1/project/project1/jobgroup?status=DEPLOYED&pageNo=1&pageSize=10
响应示例
HTTP/1.1 200 OK
Content-Length: xxxx
Content-Type: application/json
{
"jobs":[
{
"name":"testJobgroup-00",
"sourceName":"testJobgroup",
"status":"DEPLOYED",
"nodeCount":10,
"publishTime":"2020-01-01T00:00:00Z",
"deployTime":"2020-01-01T00:00:00Z",
"owner":"project1",
"publisher":"user1",
"deployer":"user1",
"isRunning":false,
"isAlarmed":false,
"isScheduled":false,
"newestVersion":1,
"onlineVersion":1
}
],
"totalCount":1,
"pageNo":1,
"pageSize":10
}
DeleteJobgroup
接口说明
删除运维中心作业组
原型
DELETE /v1/project/<projectName>/jobgroup/<jobgroupName>
请求参数
名称 | 类型 | 位置 | 必须 | 描述 |
---|---|---|---|---|
projectName | String | URL | 是 | 项目空间名称 |
jobgroupName | String | URL | 是 | 作业组名称 |
响应参数
除公共响应参数外,无特殊响应。
错误码
Code | message | HTTP状态码 | 描述 |
---|---|---|---|
AccessDenied | No permission | 403 | 无权限 |
ProjectNotFound | Project is not found. | 404 | 项目空间不存在 |
请求示例
DELETE /v1/project/project1/jobgroup/my-jobgroup
响应示例
HTTP/1.1 200 OK
Content-Length: 0
HTTP/1.1 403 NOTPERMISSION
Content-Length: xxx
Content-Type: application/json
{
"code":"AccessDenied",
"message":"No Permission to access project p1",
"requestId":" 81d0b05f-5ad4-1f22-8068-d5c9de60a1d7"
}
KillJobgroupExecution
接口说明
停止正在执行的作业组实例
原型
POST /v1/project/<projectName>/jobgroup/<jobgroupName>/execution/<execId>?kill
请求参数
名称 | 类型 | 位置 | 必须 | 描述 |
---|---|---|---|---|
projectName | String | URL | 是 | 项目空间名称 |
jobgroupName | String | URL | 是 | 作业组名称 |
execId | Integer | URL | 是 | 实例 ID |
响应参数
除公共参数外,无特殊响应参数
错误码
Code | message | HTTP状态码 | 描述 |
---|---|---|---|
AccessDenied | No permission | 403 | 无权限 |
ProjectNotFound | Project is not found. | 404 | 项目空间不存在 |
JobNotFound | Job{0} is not found | 404 | 作业{0}不存在 |
ExecutionNotFound | Execution {0} is not found. | 404 | 实例 {0} 不存在。 |
请求示例
POST /v1/project/project1/jobgroup/my-jobgroup-00/execution/302?kill
响应示例
HTTP/1.1 200 OK
Content-Length: 0
Content-Type: application/json
ListJobgroupExecutions
接口说明
获取运维中心作业组执行实例列表
原型
GET /v1/project/<projectName>/jobgroup?execution
请求参数
名称 | 类型 | 位置 | 必须 | 描述 |
---|---|---|---|---|
projectName | String | URL | 是 | 项目空间名称 |
owner | String | QueryString | 否 | 责任人搜索项 |
name | String | QueryString | 否 | 作业组名称(唯一id串)搜索项 |
sourceName | String | QueryString | 否 | 作业组展示名称搜索项 |
execId | String | QueryString | 否 | 作业组示例 ID 过滤搜索,默认为空,显示全部 |
status | String | QueryString | 否 | 任务状态过滤项 包括 ALL, RUNNING、STARTING、FAILED、SUCCEED和 KILLED,PENDING, QUEUED, READY,NOTFIRE 状态的查询 默认 ALL 多状态查询,各状态字段用,分开,如 STARTING,FAILED |
startTime | DateTime | QueryString | 是 | 起始时间过滤项 (默认为 空)format: 'yyyy-MM-ddTHH:mm:ssZ' |
endTime | DateTime | QueryString | 是 | 结束时间过滤项 (默认为 空)format: 'yyyy-MM-ddTHH:mm:ssZ' |
fromLogicalStartTime | DateTime | QueryString | 是 | 起始业务时间过滤项 (默认为空)format: 'yyyy-MM-ddTHH:mm:ssZ' |
toLogicalStartTime | DateTime | QueryString | 是 | 截止业务时间过滤项 (默认为空) format: 'yyyy-MM-ddTHH:mm:ssZ' |
executionType | String | QueryString | 是 | 指定实例类型过滤,包括 MANUAL(手动触发)/PERIOD(周期调度),默认为空 |
executionCause | String | QueryString | 是 | 指定实例调度来源类型过滤, 包括 MANUAL(手动执行)、TRIGGER(周期触发)、RERUN(重跑)、FIX(修数据), 默认为空(全部) |
pageNo | Integer | QueryString | 是 | 页码,默认:1,若为-1,则不分页 |
pageSize | Integer | QueryString | 是 | 当前页最大显示数量,默认:10,若为-1,则不分页。 |
orderBy | String | QueryString | 否 | 排序字段 |
order | String | QueryString | 否 | 排序方式,枚举值{asc, desc},默认desc |
响应参数
名称 | 类型 | 描述 |
---|---|---|
executions | List<ExecutionInfo> | 作业组实例记录 列表 |
pageNo | Integer | 页码 |
pageSize | Integer | 当前页最大显示数量 |
totalCount | Integer | 记录总数 |
ExecutionInfo 对象定义
名称 | 类型 | 描述 |
---|---|---|
execId | String | 执行实例 ID |
name | String | 作业组名称(唯一 id 串) |
sourceName | String | 作业组展示名称 |
status | String | 作业组实例执行状态 |
executionCause | String | 指定实例来源 |
executionType | String | 指定实例类型 |
startTime | DateTime | 开始时间,格式: yyyy-MM-ddTHH:mm:ssZ |
endTime | DateTime | 结束时间,格式: yyyy-MM-ddTHH:mm:ssZ |
updateTime | DateTime | 更新时间,格式: yyyy-MM-ddTHH:mm:ssZ |
logicalStartTime | DateTime | 基准时间,格式: yyyy-MM-ddTHH:mm:ssZ |
runtime | String | 运行时间,format 'xxHxxmxxs' |
rerun | Integer | 重跑次数, 默认为0 |
owner | String | 责任人 |
错误码
Code | message | HTTP状态码 | 描述 |
---|---|---|---|
AccessDenied | No permission | 403 | 无权限 |
ProjectNotFound | Project is not found. | 404 | 项目空间不存在 |
请求示例
GET /v1/project/project1/jobgroup?execution&sourceName=jg1&status=ALL&pageNo=1&pageSize=10
响应示例
HTTP/1.1 200 OK
Content-Length: xxxx
Content-Type: application/json
{
"executions":[
{
"startTime":"2020-02-13T01:23:13Z",
"owner":"user1",
"status":"RUNNING",
"execId":1,
"name":"jg1",
"sourceName":"jg1",
"nodeCount":10,
"endTime":"",
"logicalStartTime":"2020-02-13T01:23:00Z",
"runtime":"1h2m5s",
"rerun":0
},
{
"startTime":"2020-02-13T01:23:13Z",
"owner":"user1",
"status":"RUNNING",
"execId":1,
"name":"jg1",
"sourceName":"jg1",
"nodeCount":10,
"endTime":"2020-02-13T01:26:15Z",
"logicalStartTime":"2020-02-13T01:23:00Z",
"runtime":"3m2s",
"rerun":0
}
],
"totalCount":2,
"pageNo":1,
"pageSize":10
}
作业管理
ListJobExecutions
接口说明
获取运维中心作业执行实例列表
原型
GET /v1/project/<projectName>/job?execution
请求参数
名称 | 类型 | 位置 | 必须 | 描述 |
---|---|---|---|---|
projectName | String | URL | 是 | 项目空间名称 |
owner | String | QueryString | 否 | 责任人搜索项 |
name | String | QueryString | 否 | 作业名称(唯一id串)搜索项 |
sourceName | String | QueryString | 否 | 作业展示名称搜索项 |
execId | String | QueryString | 否 | 作业示例 ID 过滤搜索,默认为空,显示全部 |
type | String | QueryString | 否 | 作业类型搜索项, 枚举值 { ALL(全部) realtime (实时流水线) flinksql(flinksql 作业) flinkjar(flink 自定义作业) streamingjar(sparkstreaming jar作业) streamingscala(sparkstreaming scala作业) pipeline(可视化作业) shell(shell 作业) python(python 作业) sparksql sparkscala pyspark spark jdbc hsql} 离线作业 全部 {pipeline, shell, python, spark, sparksql, pyspark, jdbc, hsql,pipeline,di,quality} 实时作业全部 {realtime, flinksql, flinkjar} |
status | String | QueryString | 否 | 任务状态过滤项 包括 ALL, RUNNING、STARTING、FAILED、SUCCEED和 KILLED,PENDING, QUEUED, READY,NOTFIRE 状态的查询 默认 ALL 多状态查询,各状态字段用,分开,如 STARTING,FAILED |
startTime | DateTime | QueryString | 是 | 起始时间过滤项 (默认为 空)format: 'yyyy-MM-ddTHH:mm:ssZ' |
endTime | DateTime | QueryString | 是 | 结束时间过滤项 (默认为 空)format: 'yyyy-MM-ddTHH:mm:ssZ' |
fromLogicalStartTime | DateTime | QueryString | 是 | 起始业务时间过滤项 (默认为空)format: 'yyyy-MM-ddTHH:mm:ssZ' |
toLogicalStartTime | DateTime | QueryString | 是 | 截止业务时间过滤项 (默认为空) format: 'yyyy-MM-ddTHH:mm:ssZ' |
executionType | String | QueryString | 是 | 指定实例类型过滤,包括 MANUAL(手动触发)/PERIOD(周期调度),默认为空 |
executionCause | String | QueryString | 是 | 指定实例调度来源类型过滤, 包括 MANUAL(手动执行)、TRIGGER(周期触发)、RERUN(重跑)、FIX(修数据), 默认为空(全部) |
pageNo | Integer | QueryString | 是 | 页码,默认:1,若为-1,则不分页 |
pageSize | Integer | QueryString | 是 | 当前页最大显示数量,默认:10,若为-1,则不分页。 |
orderBy | String | QueryString | 否 | 排序字段 |
order | String | QueryString | 否 | 排序方式,枚举值{asc, desc},默认desc |
响应参数
名称 | 类型 | 描述 |
---|---|---|
executions | List<ExecutionInfo> | 作业组实例记录 列表 |
pageNo | Integer | 页码 |
pageSize | Integer | 当前页最大显示数量 |
totalCount | Integer | 记录总数 |
ExecutionInfo 对象定义
名称 | 类型 | 描述 |
---|---|---|
execId | String | 执行实例 ID |
name | String | 作业名称(唯一 id 串) |
sourceName | String | 作业展示名称 |
type | String | 作业类型 |
status | String | 作业组实例执行状态 |
executionCause | String | 指定实例来源 |
executionType | String | 指定实例类型 |
startTime | DateTime | 开始时间,格式: yyyy-MM-ddTHH:mm:ssZ |
endTime | DateTime | 结束时间,格式: yyyy-MM-ddTHH:mm:ssZ |
updateTime | DateTime | 更新时间,格式: yyyy-MM-ddTHH:mm:ssZ |
logicalStartTime | DateTime | 基准时间,格式: yyyy-MM-ddTHH:mm:ssZ |
runtime | String | 运行时间,format 'xxHxxmxxs' |
rerun | Integer | 重跑次数, 默认为0 |
owner | String | 责任人 |
runId | String | 运行ID |
错误码
Code | message | HTTP状态码 | 描述 |
---|---|---|---|
AccessDenied | No permission | 403 | 无权限 |
ProjectNotFound | Project is not found. | 404 | 项目空间不存在 |
请求示例
GET /v1/project/proj/job?execution&type=flinksql,flinkjar,realtime&pageNo=1&pageSize=10
响应示例
HTTP/1.1 200 OK
Content-Length: xxxx
Content-Type: application/json
{
"pageNo": 1,
"pageSize": 10,
"totalCount": 2,
"executions":[{
"runId": "wqqxxx",
"name": "test",
"type": "realtime",
"status": "RUNNING",
"startTime": "2021-02-19T21:30:08Z",
"endTime": "",
"runtime": "1H20m33s",
"owner": "user1"
}, {
"runId": "sqqxxx",
"name": "flinksql",
"status": "RUNNING",
"startTime": "2021-02-19T21:30:08Z",
"endTime": "",
"runtime": "24H00m01s",
"onwer": "user2"
}
]
}