执行(Execution)接口
更新时间:2025-04-18
创建执行
接口描述
可以通过如下两种方式创建执行:
- 引用一个已存在的模板(参考请求示例1)
- 在创建执行时动态创建一个模板(参考请求示例2)
请求结构
- method:POST
- URL:/api/logic/oos/v2/execution
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
execution | Execution | 执行描述 | 是 | RequestBody参数 |
请求示例1
JSON
1POST /api/logic/oos/v2/execution
2{
3 "template":{
4 "ref":"tpl-tKXV1J**",
5 "name":"test_oos_template",
6 "linear":true
7 },
8 "properties":{
9 "strParam":"testParam"
10 },
11 "description":"这是一段描述",
12 "tags":[
13 {
14 "tagKey":"key2",
15 "tagValue":"value2"
16 }
17 ]
18}
请求示例2
JSON
1{
2 "template": {
3 "name": "执行脚本的模板",
4 "linear": true,
5 "operators": [
6 {
7 "name": "run_script",
8 "description": "这是一段描述",
9 "operator": "BCE::Agent::ExecuteShell",
10 "retries": 0,
11 "retryInterval": 60000,
12 "timeout": 3600000,
13 "properties": {
14 "content": "ls /", // 脚本内容,必填
15 "user": "root", // 以指定的用户身份执行脚本,必填
16 "workDir": "/tmp", // 在指定的目录执行脚本,必填
17 "__workerSelectors__": [ // 选择执行的虚机列表,必填
18 {
19 "id": "3f367371-****-****-****-c27f57798e7e", // BCC长实例id
20 "shortId": "i-w1ayJ7**", // BCC短实例id
21 }
22 ]
23 }
24 }
25 ]
26 }
27}
响应示例
JSON
1{
2 "success":true,
3 "msg":"",
4 "code":200,
5 "result":{
6 // 执行ID
7 "id":"d-CRpnWZ******"
8 }
9}
查看执行详情
请求结构
- method:GET
- URL:/api/logic/oos/v2/execution?{Query参数}
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
id | String | 执行ID | 是 | Query参数 |
请求示例
JSON
1GET /api/logic/oos/v2/execution?id=d-lkzdgP******
响应示例
JSON
1{
2 "success":true,
3 "msg":"",
4 "code":200,
5 "result":{
6 "id":"d-lkzdgP******",
7 // 结构体字段参考附录中的Execution
8 }
9}
查询执行列表
请求结构
- method:POST
- URL:/api/logic/oos/v2/execution/list
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
template | Template | 模板信息,如设置则只返回指定模板触发的执行列表 | 否 | RequestBody参数 |
state | String | 执行状态,如设置则只返回指定状态的执行列表,可选值:RUNNING(执行中)、SUCCESS(执行成功)、FAILED(执行失败)、CANCELED(已取消)、PENDING(等待中) | 否 | RequestBody参数 |
eventExecutionName | String | 报警事件运维名称,如设置则只返回指定报警事件运维触发的执行列表 | 否 | RequestBody参数 |
cronExecutionName | String | 定时运维名称,如设置则只返回指定定时运维触发的执行列表 | 否 | RequestBody参数 |
startTime | long | 执行开始时间,单位:毫秒,默认值为7天前毫秒时间戳 | 否 | RequestBody参数 |
endTime | long | 执行结束时间,单位:毫秒,默认值为当前毫秒时间戳 | 否 | RequestBody参数 |
sort | String | 排序字段,默认为执行开始时间,可选值:startTime,endTime | 否 | RequestBody参数 |
ascending | boolean | 是否升序,默认false | 否 | RequestBody参数 |
pageNo | int | 页数,从1开始计数 | 是 | RequestBody参数 |
pageSize | int | 每页展示数量,最大值:100,最小值:1 | 是 | RequestBody参数 |
请求示例
JSON
1POST /api/logic/oos/v2/execution/list
2{
3 "sort": "startTime",
4 "state": "SUCCESS",
5 "startTime": 1719296223700,
6 "endTime": 1719901023700,
7 "template": {
8 "name": "my_template_123"
9 },
10 "pageNo": 1,
11 "pageSize": 10
12}
响应示例
JSON
1{
2 "success": true,
3 "msg": "",
4 "result": {
5 "executions": [
6 {
7 "id": "d-kwE00s******",
8 "template": {
9 "name": "my_template_123",
10 "type": "INDIVIDUAL",
11 // 结构体字段参考附录中的Template
12 },
13 "parallelism": 0,
14 "createdTimestamp": 1719900946278,
15 "updatedTimestamp": 1719901257454,
16 "finishedTimestamp": 1719901257454,
17 "state": "SUCCESS",
18 "reason": ""
19 }
20 ],
21 "orderBy": "startTime",
22 "order": "desc",
23 "pageNo": 1,
24 "pageSize": 10,
25 "totalCount": 3
26 }
27}