获取任务列表
接口
listTasks
参数
参数 | 类型 | 是否必选 | 说明 |
---|---|---|---|
jobId | String | 是 | 作业ID |
marker | String | 否 | 本页起始资源标识符。默认为空字符串。 |
maxItemCount | int | 否 | 返回条数,最大取值200,默认200 |
返回值
成功后返回一个 ListTasksResponse 实例, 可以通过这个实例的 getTaskList() 方法,获取 List<Task> 对象。如果失败,抛出异常: ClientException。TASK 属性如下表:
属性 | 类型 | 说明 |
---|---|---|
taskName | String | 任务名称 |
state | String | 任务运行状态: Waiting, Running, Failed, Finished, Stopped。. |
startTime | Date | 任务开始时间,如果还在Waiting状态,则为null。 |
endTime | Date | 任务结束时间, 如果还没结束,则为null。 |
instanceMetrics | Metrics | 各种状态的实例个数。 |
例子
Java 源码
import com.aliyuncs.batchcompute.main.v20151111.*;
import com.aliyuncs.batchcompute.model.v20151111.*;
import com.aliyuncs.batchcompute.pojo.v20151111.*;
import com.aliyuncs.exceptions.ClientException;
import java.util.ArrayList;
import java.util.List;
public class ListTasks {
static String ACCESS_KEY_ID = "xxx"; //这里填写您的 AccessKeyId
static String ACCESS_KEY_SECRET = "xxx"; //这里填写您的 AccessKeySecret
static String REGION_ID = "cn-xxx"; //这里填写 region
static String jobId = "job-000000005BE3E897000007FA00114EE9";
public static void main(String[] args) {
String marker = ""; //上次listJobs返回的nextMarker,第一次查询不用填。
int maxItemCount = 100; //最大100,默认50
BatchCompute client = new BatchComputeClient(REGION_ID, ACCESS_KEY_ID, ACCESS_KEY_SECRET);
try{
List<Task> list = new ArrayList<>();
do{
ListTasksResponse response = client.listTasks(jobId, marker, maxItemCount);
//成功
list.addAll(response.getItems());
//下一页的marker,查询下一页的时候,需要带上这个参数
marker = response.getNextMarker();
}while(marker!=null && !marker.equals(""));
for (Task task: list){
System.out.println("taskName: " + task.getTaskName());
System.out.println("taskState: " + task.getState());
System.out.println("taskStartTime: " + task.getStartTime());
}
}catch(ClientException e){
e.printStackTrace();
//失败
}
}
}
执行结果:
taskName: javaSdkTask
taskState: Stopped
taskStartTime: null