获取任务列表。
接口说明
在调用该接口前,需要在 POM 文件添加以下依赖:
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-schedulerx2</artifactId>
<version>1.0.5</version>
</dependency>
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用背景高亮的方式表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
edas:ReadSchedulerxJobQuery | get | *全部资源 * |
| 无 |
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
GroupId | string | 是 | 应用 ID,在控制台的应用管理页面中获取。 | DocTest.Group |
Namespace | string | 是 | 命名空间,在控制台的命名空间页面中获取。 | 1a72ecb1-b4cc-400a-a71b-20cdec9b**** |
NamespaceSource | string | 否 | 特殊第三方才需要填写。 | schedulerx |
RegionId | string | 是 | 地域 ID。 | cn-hangzhou |
JobName | string | 否 | 任务名称。 | helloword |
Status | string | 否 | 任务状态。
| 1 |
返回参数
示例
正常返回示例
JSON
格式
{
"Code": 200,
"Message": "namespace can not find namespace: 1a72ecb1-b4cc-400a-a71b-20cdec9b****, namespaceSource:null",
"RequestId": "71BCC0E3-64B2-4B63-A870-AFB64EBCB58B",
"Success": true,
"Data": {
"Jobs": [
{
"Status": 1,
"JarUrl": "https:doc***.oss-cn-hangzhou.aliyuncs.com/sc-****-D-0.0.2-SNAPSHOT.jar",
"MaxAttempt": 0,
"Parameters": "test",
"Description": "Test",
"JobId": 99341,
"ExecuteMode": "standalone",
"MaxConcurrency": "1",
"Name": "helloworld",
"ClassName": "com.alibaba.schedulerx.test.helloworld",
"Content": "echo 'hello'",
"JobType": "java",
"AttemptInterval": 30,
"MapTaskXAttrs": {
"TaskMaxAttempt": 0,
"TaskAttemptInterval": 0,
"ConsumerSize": 5,
"QueueSize": 10000,
"DispatcherSize": 5,
"PageSize": 100
},
"TimeConfig": {
"Calendar": "工作日",
"TimeType": 1,
"DataOffset": 0,
"TimeExpression": "0 0/10 * * * ?"
},
"JobMonitorInfo": {
"ContactInfo": [
{
"UserPhone": "1381111****",
"UserName": "userA",
"Ding": "https://oapi.dingtalk.com/robot/send?access_token=**********",
"UserMail": "user@mail.com"
}
],
"MonitorConfig": {
"Timeout": 12300,
"SendChannel": "sms",
"TimeoutKillEnable": false,
"TimeoutEnable": true,
"FailEnable": true,
"MissWorkerEnable": true
}
},
"XAttrs": "{\"pageSize\":5,\"queueSize\":10,\"consumerSize\":5,\"dispatcherSize\":5,\"taskMaxAttempt\":0,\"taskAttemptInterval\":0,\"globalConsumerSize\":1000,\"taskDispatchMode\":\"push\"}"
}
]
},
"AccessDeniedDetail": {
"AuthAction": "",
"AuthPrincipalDisplayName": "",
"AuthPrincipalOwnerId": "",
"AuthPrincipalType": "",
"EncodedDiagnosticMessage": "",
"NoPermissionType": "",
"PolicyType": ""
}
}
错误码
访问错误中心查看更多错误码。
变更历史
变更时间 | 变更内容概要 | 操作 |
---|---|---|
2024-10-18 | OpenAPI 返回结构发生变更 | 查看变更详情 |
2022-12-26 | API 内部配置变更,不影响调用 | 查看变更详情 |
2022-11-02 | OpenAPI 返回结构发生变更 | 查看变更详情 |
Demo
package com.alibaba.schedulerx.pop;
import java.util.List;
import com.alibaba.schedulerx.common.util.JsonUtil;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.exceptions.ServerException;
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.schedulerx2.model.v20190430.ListJobsRequest;
import com.aliyuncs.schedulerx2.model.v20190430.ListJobsResponse;
import com.aliyuncs.schedulerx2.model.v20190430.ListJobsResponse.Data.Job;
public class TestListJobs {
public static void main(String[] args) {
//OpenAPI 的接入点,具体查看支持地域列表以及购买机器地域填写。
String regionId = "cn-hangzhou";
//鉴权使用的 AccessKey ID,由阿里云官网控制台获取。
String accessKeyId = "XXXXXXXX";
//鉴权使用的 AccessKey Secret,由阿里云官网控制台获取。
String accessKeySecret = "XXXXXXXX";
//产品名称
String productName ="schedulerx2";
//对照支持地域列表选择 Domain 填写
String domain ="schedulerx.cn.hangzhou.aliyuncs.com";
//构建 OpenAPI 客户端。
DefaultProfile.addEndpoint(regionId, productName, domain);
DefaultProfile defaultProfile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);
DefaultAcsClient client = new DefaultAcsClient(defaultProfile);
ListJobsRequest request = new ListJobsRequest();
//命名空间。
request.setNamespace("433d8b23-06e9-408c-aaaa-90d4d1b****");
//应用 ID。
request.setGroupId("DocTest.Group");
ListJobsResponse response;
try {
response = client.getAcsResponse(request);
if (!response.getSuccess()) {
System.out.println(JsonUtil.toJson(response));
System.out.println(response.getCode());
} else {
System.out.println(JsonUtil.toJson(response));
List<Job> jobs = response.getData().getJobs();
for (Job job : jobs) {
System.out.println("jobId:" + job.getJobId() + ", name:" + job.getName() + ", status=" + job.getStatus());
}
}
} catch (ServerException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClientException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}