作业
查询实时作业详情
1.接口说明
接口路径:/hpc/openapi/v2/jobs/{jobId}
请求方式:GET
请求数据类型:
接口描述:查询实时作业的详细信息
2.请求消息
请求参数:
Headers:
名称 | 类型 | 必填 | 描述 | 示例 |
---|---|---|---|---|
token | string | 是 | 接口凭证 | eyJhbGciOiJIUzI1N... |
参数:
名称 | 类型 | 必填 | 描述 | 示例 |
---|---|---|---|---|
jobId | string | 是 | 作业ID | 5_1 |
3.请求示例
cURL请求示例
shell
curl --location 'https://scnet-demo.accloud.cn/hpc/openapi/v2/jobs/35919' \
--header 'Content-Type: application/json' \
--header 'token: <Token>'
Java请求示例
java
import okhttp3.*;
public class QueryJobDetailByIdDemo {
public static final String TOKEN = "<Token>";
public static void main(String[] args) throws Exception {
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
Request request = new Request.Builder()
.url("https://scnet-demo.accloud.cn/hpc/openapi/v2/jobs/35946")
.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请求示例
python
import requests
import json
url = "https://scnet-demo.accloud.cn/hpc/openapi/v2/jobs/35919"
payload = {}
headers = {
"Content-Type": "application/json",
"token": "<Token>"
}
response = requests.request("GET", url, headers=headers, data=payload)
print(response.text)
4.响应消息
返回参数:
名称 | 类型 | 描述 | 示例 |
---|---|---|---|
msg | string | 信息 | success |
code | string | 状态码 | 0 |
data | object | 作业对象 | 0 |
appType | string | 应用类型 | FLUENT |
aveRSS | string | 作业运行状态占用的物理内存 | 217404K |
aveVMSize | string | 作业运行状态占用的虚拟内存 | 1150244K |
cpuTimeUsed | string | 占用CPU时间 | |
dcuNumReq | long | 请求的DCU数量 | |
dcuNumUsed | long | 使用的DCU数量 | |
errorPath | string | 错误输出路径 | /public/home/demo/00-HPC-CASE/FLUENT_1027_105403/std.err.111 |
exitCode | string | 作业退出码 | |
gpuNumReq | long | 请求的GPU数量 | 0 |
gpuNumUsed | long | 使用的GPU数量 | 0 |
jobEndTime | string | 作业结束时间 | |
jobId | string | 作业ID | 111 |
jobInitAttr | map | 作业的原始信息 | |
Account | string | demo | |
AccrueTime | string | 2021-11-04T20:47:16 | |
AllocNode:Sid | map | node248:23026 | |
BatchFlag | string | 1 | |
CPUs/Task | string | 1 | |
Command | string | /public/home/demo/00-HPC-CASE/FLUENT_1027_105403/job_FLUENT.slurm | |
CommandExist | string | true | |
Comment | string | FLUENT | |
Contiguous | string | 0 | |
CoreSpec | string | * | |
Deadline | string | N/A | |
DelayBoot | string | 00:00:00 | |
Dependency | string | ||
EligibleTime | string | 2021-11-04T20:47:16 | |
EndTime | string | 2021-11-05T20:47:17 | |
ExcNodeList | string | ||
ExitCode | string | 0:0 | |
Features | string | ||
GroupId | string | demo(1001) | |
JobId | string | 111 | |
JobName | string | FLUENT_1104_210037 | |
JobState | string | RUNNING | |
Licenses | string | ||
MCS_label | string | N/A | |
MinCPUsNode | string | ||
MinTmpDiskNode | string | 0 | |
Network | string | ||
Nice | string | 0 | |
NodeList | string | node248 | |
NtasksPerN:B:S:C | string | 2:0:*:* | |
NumCPUs | string | 2 | |
NumNodes | string | 1 | |
NumTasks | string | 2 | |
OverSubscribe | string | OK | |
Partition | string | debug | |
Power | string | ||
Priority | string | 1000 | |
QOS | string | user_demo | |
Reason | string | None | |
Reboot | string | 0 | |
ReqB:S:C:T | int | 0:0:*:* | |
ReqNodeList | string | ||
Requeue | string | 1 | |
Restarts | string | 0 | |
RunTime | string | 00:00:15 | |
BatchHost | string | node248 | |
SecsPreSuspend | string | 0 LastSchedEval=2021-11-04T20:47:17 | |
Socks/Node | string | * | |
StartTime | string | 2021-11-04T20:47:17 | |
StdErr | string | /public/home/demo/00-HPC-CASE/FLUENT_1027_105403/std.err.111 | |
StdIn | string | /dev/null | |
StdOut | string | /public/home/demo/00-HPC-CASE/FLUENT_1027_105403/std.out.111 | |
SubmitTime | string | 2021-11-04T20:47:16 | |
SuspendTime | string | None | |
TRES | int | cpu=2,mem=4306M,node=1,billing=2 | |
TimeLimit | string | 1-00:00:00 | |
TimeMin | string | N/A | |
UserId | string | test(1001) | |
WorkDir | string | /public/home/test/00-HPC-CASE/FLUENT_1027_105403 | |
jobName | string | 作业名称 | FLUENT_1104_210037 |
jobRunTime | string | 作业运行时间 | 00:00:15 |
jobStartTime | string | 作业开始时间 | 2021-11-04 20:47:17 |
jobStatus | string | 作业状态 | statR |
jobSubmitTime | string | 作业提交时间 | 2021-11-04 20:47:16 |
jobVncSessionInfo | object | 作业的VNC信息(作业未用到vnc则为空) | |
archive | string | VncViewer.jar文件 | VncViewer.jar |
iClientNumber | int | 连接该会话的客户端数 | 0 |
iPixelDepth | string | 0 | |
listClients | array | 会话客户端地址列表 | |
locale | string | 编码方式 | zh_CN.UTF-8 |
loginPasswd | string | 会话登录密码 | 0449d1b0 |
mapSessionExtraAttrs | map | 其它会话属性 | |
strAuthType | string | 认证方式 | |
strGeometry | string | 宽和高 | 1280x1088 |
strJobManagerAddr | string | 会话所属区域的地址 | 10.0.35.248 |
strJobManagerID | string | 调度器ID | 1634819344 |
strJobManagerName | string | 会话所属区域的名称 | Cluster_node248 |
strRelateJobID | string | 相关作业号 | 111 |
strServerAddr | string | 会话所在主机的地址 | 10.0.35.248 |
strServerName | string | 会话所在主机的主机名 | node248 |
strSessionCTime | string | 会话创建时间 | 2021-11-04 20:47:23 |
strSessionHeight | string | 会话高度 | 1088 |
strSessionID | string | 会话ID号 | 1 |
strSessionOwner | string | 会话所有者 | test |
strSessionType | string | 会话类型 | |
strSessionWidth | string | 会话宽度 | 1280 |
vncCode | string | VncViewer.class 文件 | com.tigervnc.vncviewer.VncViewer.class |
jobmanagerId | string | 调度器ID | 1634819344 |
jobmanagerName | string | 调度器名称 | Cluster_node248 |
jobmanagerType | string | 调度器类型 | slrum/pbs |
memUsed | string | 占用物理内存,格式为字符串(字符串中带有单位),单位为M | 4306M |
nodeNumReq | string | 请求的节点数 | 1 |
nodeUsed | string | 使用的节点(节点名称字符串,包含使用CPU的节点和使用GPU的节点),多个节点用加号连接 | node248 |
outputPath | string | 标准输出路径 | /public/home/test/00-HPC-CASE/FLUENT_1027_105403/std.out.111 |
priority | string | 作业优先级 | 1000 |
procNumReq | string | 请求的CPU数 | 2 |
procNumUsed | string | 使用的CPU个数 | 2 |
queue | string | 队列 | debug |
restarts | string | 作业的重启次数 | 0 |
scale | string | 作业规模 | |
user | string | 用户 | test |
walltimeReq | string | 请求的Walltime时间 | 1-00:00:00 |
workDir | string | 工作路径 | /public/home/test/00-HPC-CASE/FLUENT_1027_105403 |
返回示例:
json
{
"code":"0",
"msg":"success",
"data":{
"jobId":"23",
"jobName":"STDIN_0910_094758",
"jobStatus":"statR",
"queue":"debug",
"user":"test",
"jobSubmitTime":"2021-12-10 15:10:17",
"jobStartTime":"2021-12-10 15:10:17",
"jobEndTime":null,
"exitCode":null,
"nodeUsed":"h04r3n07",
"procNumUsed":1,
"gpuNumUsed":0,
"dcuNumUsed":null,
"memUsed":"3826M",
"cpuTimeUsed":null,
"jobRunTime":"01:10:59",
"walltimeReq":"1-00:00:00",
"nodeNumReq":1,
"procNumReq":1,
"gpuNumReq":0,
"dcuNumReq":null,
"workDir":"/public/home/test/BASE/STDIN_1210_114429",
"errorPath":"/public/home/test/BASE/STDIN_1210_114429/std.err.23",
"outputPath":"/public/home/test/BASE/STDIN_1210_114429/std.out.23",
"priority":"1000",
"account":null,
"appType":"BASE",
"scale":null,
"jobVncSessionInfo":null,
"jobInitAttr":{
"Account":"test",
"DelayBoot":"00:00:00",
"ExitCode":"0:0",
"MinCPUsNode":"1 MinMemoryCPU=3826M",
"Licenses":"",
"TRES":"cpu=1,mem=3826M,node=1,billing=1",
"NtasksPerN:B:S:C":"0:0:*:*",
"Network":"",
"JobState":"RUNNING",
"Requeue":"1",
"CoreSpec":"*",
"ExcNodeList":"",
"Contiguous":"0",
"SuspendTime":"None",
"Priority":"1000",
"Restarts":"0",
"Deadline":"N/A",
"NodeList":"h04r3n07",
"StartTime":"2021-12-10T15:10:17",
"Dependency":"",
"ReqB:S:C:T":"0:0:*:*",
"SubmitTime":"2021-12-10T15:10:17",
"BatchFlag":"1",
"SecsPreSuspend":"0 LastSchedEval=2021-12-10T15:10:17",
"WorkDir":"/public/home/test/BASE/STDIN_1210_114429",
"NumCPUs":"1",
"NumNodes":"1",
"TimeMin":"N/A",
"RunTime":"01:10:59",
"EndTime":"2021-12-11T15:10:17",
"JobName":"STDIN_0910_094758",
"Reason":"None",
"StdIn":"/dev/null",
"StdErr":"/public/home/test/BASE/STDIN_1210_114429/std.err.23",
"AllocNode:Sid":"h04r3n07:14034",
"OverSubscribe":"OK",
"MCS_label":"N/A",
"Nice":"0",
"Features":"",
"JobId":"23",
"TimeLimit":"1-00:00:00",
"EligibleTime":"2021-12-10T15:10:17",
"Partition":"debug",
"Socks/Node":"*",
"Comment":"BASE",
"ReqNodeList":"",
"MinTmpDiskNode":"0",
"NumTasks":"1",
"GroupId":"test(10005)",
"Reboot":"0",
"QOS":"test_qos",
"CommandExist":"true",
"Command":"/public/home/test/BASE/STDIN_1210_114429/job_BASE.slurm",
"UserId":"test(2002)",
"BatchHost":"h04r3n07",
"StdOut":"/public/home/test/BASE/STDIN_1210_114429/std.out.23",
"AccrueTime":"2021-12-10T15:10:17",
"CPUs/Task":"1",
"Power":""
},
"jobmanagerId":"1638523853",
"jobmanagerName":"Cluster",
"jobmanagerType":"SLURM",
"restarts":"0",
"aveVMSize":"221140K",
"aveRSS":"1800K|"
}
}
5.错误码
错误码 | 说明 |
---|---|
0 | 成功 |
10001 | 内部错误 |
10003 | 参数不全 |
10004 | 参数无效 |
10007 | 用户已被冻结 |
10008 | 权限不足 |
10009 | 没有权限访问接口 |
10010 | 文件校验失败 |
10011 | 文件过大 |
10012 | 连接中断 |
10013 | 操作超时 |
815005 | 作业提交失败(调度系统没返回) |
815007 | 作业提交失败(调度系统sbatch失败) |