任务进度
1. 接口参数
Path:
/api/v1/task_progress/wf
method:
post
Request params:
| 参数名称 | 类型 | 必须 | 描述 |
|---|---|---|---|
api_name |
string | 是 | api的名称,在申请wfAPI时的名称,可填写任意值,但请注意,为保证是测试api,此参数内必须包含test,例如:wfapi_test。 |
api_id |
string | 是 | api的id,申请wf的测试环境的api下发的id,请注意!必须为测试环境的api!!! |
task_id |
string | 是 | 创建任务接口返回的UUID,为任务id |
2. 接口返回
成功:
{
"code": 200,
"message": "成功",
'progress': 30,
'status': 'PENDING'
}
任务状态枚举值:
STATUS_CHOICES = [
('PENDING', '等待执行'),
('PROCESSING', '正在处理'),
('SUCCESS', '成功'),
('FAILED', '失败'),
('STOPPED', '强制停止')
]
其中,STOPPED为特殊状态,用户调取停止任务接口后,任务被标记为STOPPED,除此之外,其他情况不会被标记为STOPPED
此任务耗时较长,约为30分钟,加上10分钟的等待期,以及任务队列排队时间,任务执行时长约为40分钟左右,可随时调用任务进度,来获取任务最新的执行状态
3. 注意事项
3.1 任务最终状态
任务最终状态有:
SUCCESS:任务执行完毕;FAILED:任务内部报错,导致任务失败;STOPPED:强行停止标记,用户主动调取停止任务,任务被中断。
在任务最终状态时,均可下一步执行下载日志申请接口,申请详细接口开通日志,
3.2 可强行停止期限
任务创建后会被放入任务队列,等待celery消费者领取,在任务被消费者领取后,依旧有10min等待期,等待期与任务执行期中,可随时调用停止任务接口,强行对还未开始或已经开始的任务进行中断,但请注意,一旦任务开始执行,只有任务执行到下个节点,才会被停止,也就是说,任务可能不会立即停止,详见停止任务接口。