获取任务列表

接口

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 源码

  1. import com.aliyuncs.batchcompute.main.v20151111.*;
  2. import com.aliyuncs.batchcompute.model.v20151111.*;
  3. import com.aliyuncs.batchcompute.pojo.v20151111.*;
  4. import com.aliyuncs.exceptions.ClientException;
  5. import java.util.ArrayList;
  6. import java.util.List;
  7. public class ListTasks {
  8. static String ACCESS_KEY_ID = "xxx"; //这里填写您的 AccessKeyId
  9. static String ACCESS_KEY_SECRET = "xxx"; //这里填写您的 AccessKeySecret
  10. static String REGION_ID = "cn-xxx"; //这里填写 region
  11. static String jobId = "job-000000005BE3E897000007FA00114EE9";
  12. public static void main(String[] args) {
  13. String marker = ""; //上次listJobs返回的nextMarker,第一次查询不用填。
  14. int maxItemCount = 100; //最大100,默认50
  15. BatchCompute client = new BatchComputeClient(REGION_ID, ACCESS_KEY_ID, ACCESS_KEY_SECRET);
  16. try{
  17. List<Task> list = new ArrayList<>();
  18. do{
  19. ListTasksResponse response = client.listTasks(jobId, marker, maxItemCount);
  20. //成功
  21. list.addAll(response.getItems());
  22. //下一页的marker,查询下一页的时候,需要带上这个参数
  23. marker = response.getNextMarker();
  24. }while(marker!=null && !marker.equals(""));
  25. for (Task task: list){
  26. System.out.println("taskName: " + task.getTaskName());
  27. System.out.println("taskState: " + task.getState());
  28. System.out.println("taskStartTime: " + task.getStartTime());
  29. }
  30. }catch(ClientException e){
  31. e.printStackTrace();
  32. //失败
  33. }
  34. }
  35. }

执行结果:

  1. taskName: javaSdkTask
  2. taskState: Stopped
  3. taskStartTime: null