查询任务监控信息
按指标类型和时间范围查询某个分布式训练任务的资源监控数据,返回任务下各 Pod 的指标时间序列以及最大值、平均值、当前值,可用于绘制 CPU、内存、GPU、显存利用率曲线,评估资源使用是否合理。
https://api.alayanew.com/v1/training/instance/{id}/metrics鉴权(Authorizations)
bearerAuthAuthorizationString必填用户可通过已获取的 Open API Key 做验证。例如:Bearer [YOUR_API_KEY]。
Path Parameters
idString必填训练任务 ID(来自任务列表的 id)。例如:1234567890。
Query Parameters
typeString必填指标类型,必填。取值:cpu CPU 利用率、memory 内存利用率、gpu GPU 利用率、vram 显存利用率。例如:cpu。
startTimeString查询起始时间,ISO 8601 格式。未传 period 时使用。例如:2025-09-10 12:00:00。
endTimeString查询结束时间,ISO 8601 格式,需晚于 startTime。未传 period 时使用。例如:2025-09-10 18:30:00。
periodString时段,可选。传此参数时将自动计算 startTime 与 endTime,无需再单独传时间。取值:15m 近 15 分钟、1h 近 1 小时、6h 近 6 小时、24h 近 24 小时、3d 近 3 天、7d 近 7 天、30d 近 30 天。例如:6h。
Response
application/json · 200statusInteger业务状态码,200 表示成功。
messageString接口响应信息。例如:"OK"。
dataObject监控信息响应对象。
显示 properties
metricDataArray各 Pod 的指标序列。
显示 properties
typeString指标类型,与请求的 type 对应。例如:"gpu"。
podNameStringPod 名称。例如:"pod_name_master"。
maxRateString该时段内的最大比率。例如:"0.93"。
avgRateString该时段内的平均比率。例如:"0.7"。
currentRateString当前比率。例如:"0.65"。
gpuNameStringGPU 名称,type 为 gpu / vram 时返回。例如:"NVIDIA-H800A-NV-80G-3"。
metricDataArray时间序列数据点。
显示 properties
timestampIntegerUnix 时间戳(秒)。例如:1636457100。
valueString该时间点的数值(比率)。例如:"0.95"。
startTimeString查询范围起始时间。例如:"2025-09-10 12:00:00"。
endTimeString查询范围结束时间。例如:"2025-09-10 18:30:00"。
curl -X 'GET' \
'https://api.alayanew.com/v1/training/instance/1234567890/metrics?type=gpu&period=6h' \
-H 'accept: application/json' \
-H 'Authorization: Bearer [YOUR_API_KEY]'import requests
task_id = "1234567890"
url = f"https://api.alayanew.com/v1/training/instance/{task_id}/metrics"
params = {"type": "gpu", "period": "6h"}
headers = {
"accept": "application/json",
"Authorization": "Bearer [YOUR_API_KEY]"
}
response = requests.get(url, params=params, headers=headers)
print(response.json())const taskId = '1234567890';
const params = new URLSearchParams({ type: 'gpu', period: '6h' });
fetch(`https://api.alayanew.com/v1/training/instance/${taskId}/metrics?${params}`, {
method: 'GET',
headers: {
'accept': 'application/json',
'Authorization': 'Bearer [YOUR_API_KEY]'
}
})
.then(res => res.json())
.then(console.log)
.catch(console.error);{
"status": 200,
"message": "OK",
"data": {
"metricData": [
{
"type": "gpu",
"podName": "pod_name_master",
"maxRate": "0.93",
"avgRate": "0.7",
"currentRate": "0.65",
"gpuName": "NVIDIA-H800A-NV-80G-3",
"metricData": [
{
"timestamp": 1636457100,
"value": "0.95"
}
]
}
],
"startTime": "2026-06-01T08:54:13.309Z",
"endTime": "2026-06-01T08:54:13.309Z"
}
}{
"status": 403,
"message": "Forbidden",
"data": {}
}{
"status": 500,
"message": "Internal Server Error",
"data": {}
}Last updated on
