作业
查询历史作业列表
1.接口说明
接口路径:/hpc/openapi/v2/historyjobs
请求方式:GET
请求数据类型:
接口描述:查询历史作业列表,返回用户历史作业的部分信息
2.请求消息
请求参数:
Headers:
名称 | 类型 | 必填 | 描述 | 示例 |
---|---|---|---|---|
token | string | 是 | 接口凭证 | eyJhbGciOiJIUzI1N... |
参数:
名称 | 类型 | 必填 | 描述 | 示例 |
---|---|---|---|---|
strClusterNameList | string | 是 | 集群ID | 1638523853 |
startTime | string | 是 | 开始时间 | 2021-11-23 01:01:01 |
endTime | string | 是 | 结束时间 | 2021-12-23 01:01:01 |
timeType | string | 是 | CUSTOM | CUSTOM |
queue | string | 否 | 队列名称 | debug |
appType | string | 否 | 应用名称 | fluent |
sort | string | 否 | 排序规则 | DESC/ASC |
orderBy | string | 否 | 排序字段 | jobId |
jobId | string | 否 | 作业ID | 12 |
jobState | string | 否 | 'statR(运行)','statQ(排队)','statH(保留)','statS(挂起)','statE(退出)','statC(完成)','statW(等待)','statX(其他)' | statQ |
hostName | string | 否 | 节点名称 | h04r3n07 |
strUser | string | 否 | 用户名称 | test |
jobName | string | 否 | 作业名称 | STDIN_1208_173644 |
start | int | 是 | 起始坐标 | 0 |
limit | int | 是 | 请求一次获取数据的数目 | 25 |
isQueryByQueueTime | boolean | 是 | 按照结束时间查询false/按照入队时间查询true(推荐false) | false |
3.请求示例
cURL请求示例
curl --location 'https://api01.xxx.com:65106/hpc/openapi/v2/historyjobs?strClusterNameList=1638523853&strUser=test&timeType=CUSTOM&limit=20&isQueryByQueueTime=false&start=0&startTime=2023-01-01%2001%3A01%3A01&endTime=2023-12-12%2001%3A01%3A01%0A' \
--header 'Content-Type: application/json' \
--header 'token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjb21wdXRlVXNlciI6InNsdXJtdGVzdCIsImFjY291bnRTdGF0dXMiOiJUcmlhbCIsImNyZWF0b3IiOiJhYyIsInJvbGUiOiIxIiwiZXhwaXJlVGltZSI6IjE2ODU2MDAyMjU2MTUiLCJjbHVzdGVySWQiOiIxMTExMiIsImludm9rZXIiOiI2MDQ4Y2U3YmExNWMyYWYyZThjZWMxMjk5MWVjMTNjZiIsInVzZXIiOiJzbHVybXRlc3QiLCJ1c2VySWQiOiIxMTY1NTA0ODU0MSJ9.iLCKJ8PnDDK0_SA2NPYm1WozUG8D5ojwFqFhwaJCDc8'
Java请求示例
import okhttp3.*;
public class QueryHistoryJobListDemo {
public static final String TOKEN = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjb21wdXRlVXNlciI6InNsdXJtdGVzdCIsImFjY291bnRTdGF0dXMiOiJUcmlhbCIsImNyZWF0b3IiOiJhYyIsInJvbGUiOiIxIiwiZXhwaXJlVGltZSI6IjE2ODY5MDg1MDkyMzEiLCJjbHVzdGVySWQiOiIxMTExMiIsImludm9rZXIiOiI2MDQ4Y2U3YmExNWMyYWYyZThjZWMxMjk5MWVjMTNjZiIsInVzZXIiOiJzbHVybXRlc3QiLCJ1c2VySWQiOiIxMTY1NTA0ODU0MSJ9.U7pZKgO_K6NuRwOWPxblDfgRpGeVxS-BYieOdLhGDK4";
public static void main(String[] args) throws Exception {
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
Request request = new Request.Builder()
.url("https://api01.xxx.com:65106/hpc/openapi/v2/historyjobs?strClusterNameList=1638523853&strUser=test&timeType=CUSTOM&limit=20&isQueryByQueueTime=false&start=0&startTime=2023-01-01 01:01:01&endTime=2023-12-12 01:01:01 ")
.method("GET", null)
.addHeader("Content-Type", "application/json")
.addHeader("token", TOKEN)
.build();
Response response = client.newCall(request).execute();
System.out.println(response.body().string());
}
}
Python请求示例
import requests
import json
url = "https://api01.xxx.com:65106/hpc/openapi/v2/historyjobs?strClusterNameList=1638523853&strUser=test&timeType=CUSTOM&limit=20&isQueryByQueueTime=false&start=0&startTime=2023-01-01 01:01:01&endTime=2023-12-12 01:01:01"
payload = {}
headers = {
'Content-Type': 'application/json',
'token': 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjb21wdXRlVXNlciI6InNsdXJtdGVzdCIsImFjY291bnRTdGF0dXMiOiJUcmlhbCIsImNyZWF0b3IiOiJhYyIsInJvbGUiOiIxIiwiZXhwaXJlVGltZSI6IjE2ODU2MDAyMjU2MTUiLCJjbHVzdGVySWQiOiIxMTExMiIsImludm9rZXIiOiI2MDQ4Y2U3YmExNWMyYWYyZThjZWMxMjk5MWVjMTNjZiIsInVzZXIiOiJzbHVybXRlc3QiLCJ1c2VySWQiOiIxMTY1NTA0ODU0MSJ9.iLCKJ8PnDDK0_SA2NPYm1WozUG8D5ojwFqFhwaJCDc8'
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
4.响应消息
返回参数:
名称 | 类型 | 描述 | 示例 |
---|---|---|---|
msg | string | 信息 | success |
code | string | 状态码 | 0 |
data | object | 历史作业数据 | |
total | int | 总条数 | true |
list | array | 每页数据 | 100 |
acctTime | string | 记账时间 | 2021-11-04 17:57:42 |
appType | string | 作业应用类型 | FLUENT |
jobEndTime | string | 作业结束时间 | 2021-11-04 17:57:42 |
jobExecHost | string | 作业执行节点 | node248 |
jobProcNum | long | 作业CPU核数 | 1 |
jobExitStatus | long | 作业退出码 | 0 |
jobId | string | 作业id | 12 |
jobName | string | 作业名 | FLUENT_1104_181054 |
jobQueueTime | string | 作业入队列时间 | 2021-11-04 17:57:34 |
jobStartTime | string | 作业启动时间 | 2021-11-04 17:57:34 |
jobState | string | 作业状态 | statC |
jobWalltimeUsed | string | 作业实际运行的Walltime,单位为秒 | 8.0000 |
jobmanagerId | long | 区域id | 1638523853 |
nodect | string | 分配的节点数 | 1 |
queue | string | 队列名 | debug |
userName | string | 用户名 | demo |
workdir | string | 工作空间 | /public/home/demo/00-HPC-CASE/FLUENT_1027_105403 |
返回示例:
{
"code": "0",
"msg": "success",
"data": {
"total": 17,
"list": [
{
"acctTime": "2021-12-08 17:45:37",
"jobId": "3",
"jobmanagerId": 1638523853,
"userName": "test",
"jobName": "STDIN_1208_173644",
"queue": "debug",
"jobQueueTime": "2021-12-08 17:37:17",
"jobStartTime": "2021-12-08 17:37:17",
"jobExecHost": "h04r3n07",
"nodect": 1,
"jobEndTime": "2021-12-08 17:45:37",
"jobWalltimeUsed": "500.0000",
"workdir": "/home/test/BASE/STDIN_1208_173644",
"appType": "BASE",
"jobState": "statC",
"jobExitStatus": 0,
"jobProcNum": 1
},
{
"acctTime": "2021-12-08 18:23:05",
"jobId": "4",
"jobmanagerId": 1638523853,
"userName": "test",
"jobName": "STDIN_1208_181428",
"queue": "debug",
"jobQueueTime": "2021-12-08 18:14:44",
"jobStartTime": "2021-12-08 18:14:45",
"jobExecHost": "h04r3n07",
"nodect": 1,
"jobEndTime": "2021-12-08 18:23:05",
"jobWalltimeUsed": "500.0000",
"workdir": "/home/test/BASE/STDIN_1208_181428",
"appType": "BASE",
"jobState": "statC",
"jobExitStatus": 0,
"jobProcNum": 1
}
]
}
}
5.错误码
错误码 | 说明 |
---|---|
0 | 成功 |
10001 | 内部错误 |
10003 | 参数不全 |
10004 | 参数无效 |
10007 | 用户已被冻结 |
10008 | 权限不足 |
10009 | 没有权限访问接口 |
10010 | 文件校验失败 |
10011 | 文件过大 |
10012 | 连接中断 |
10013 | 操作超时 |
815005 | 作业提交失败(调度系统没返回) |
815007 | 作业提交失败(调度系统sbatch失败) |