作业测试运行 - RunJobTest
功能介绍
提交作业测试运行请求,用于在测试环境中验证作业定义的正确性。
调用方法
请参见如何调用API。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权,具体权限要求请参见权限和授权项。
- 如果使用身份策略授权,当前API调用无需身份策略权限。
URI
POST /v2/{project_id}/jobs/{job_name}/run-test
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| project_id | 是 | String | 项目ID,获取方法请参见项目ID和账号ID。 |
| job_name | 是 | String | 参数解释: 作业名,在测试运行场景中指定要运行的作业。可以通过调用"查询作业列表"接口获取作业名。 约束限制: 最大支持128字符。 取值范围: 数字、字母、下划线、中横线和点号。 默认取值: 不涉及。 |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Auth-Token | 否 | String | IAM Token,通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值),使用Token认证时必选,最小长度:0,最大长度:4096。 |
| workspace | 是 | String | 工作空间ID,获取方法请参见实例ID和工作空间ID。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| pipeline_id | 是 | String | 参数解释: 作业流水线ID,用于唯一标识作业的流水线定义。在测试运行场景中,通过此ID加载作业定义并执行测试运行。可以通过调用「查询作业详情」接口获取pipeline_id。 约束限制: 只能包含数字,长度为1-64个字符。 取值范围: 符合正则表达式^[0-9]{1,64}$的字符串。 默认取值: 不涉及。 |
| objects | 是 | Array of objects objects | 参数解释: 作业节点对象列表,定义作业中各节点的执行顺序和配置信息。每个节点对象包含节点ID、名称和属性列表。 |
| task_properties | 否 | task_properties object | 参数解释: 任务属性,定义作业的执行用户、代理和超时时间等运行时配置。 |
| params | 否 | Array of params objects | 参数解释: 作业参数列表,以对象数组形式传递给作业的运行参数。每个参数包含参数名称和参数值,在作业执行时引用。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| id | 否 | String | 参数解释: 节点ID,用于在作业中唯一标识一个节点。在测试运行场景中,通过此ID定位作业中的节点。 约束限制: 只能包含字母、数字和连字符,长度为1-128个字符。 取值范围: 符合正则表达式^[a-zA-Z0-9-]{1,128}$的字符串。 默认取值: 不涉及。 |
| name | 否 | String | 参数解释: 节点名称,用于标识作业中的一个节点。在测试运行场景中,通过此名称指定作业中的节点。 约束限制: 只能包含字母、数字、下划线和连字符,长度为1-128个字符。 取值范围: 符合正则表达式^[a-zA-Z0-9-_]{1,128}$的字符串。 默认取值: 不涉及。 |
| properties | 否 | Array of properties objects | 参数解释: 节点属性列表,以键值对形式定义节点的配置参数。每个属性包含名称和值,部分属性通过ref_value引用其他节点的ID。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| name | 否 | String | 参数解释: 属性名称,用于指定节点的配置项名称,如processorType、clusterName、type等。 约束限制: 不涉及。 取值范围: 字符串。 默认取值: 不涉及。 |
| value | 否 | String | 参数解释: 属性值,指定配置项的值。与ref_value互斥,当属性为直接赋值时使用value。 约束限制: 不涉及。 取值范围: 字符串。 默认取值: 不涉及。 |
| ref_value | 否 | String | 参数解释: 引用值,用于引用其他节点的ID。与value互斥,当属性为引用其他节点时使用ref_value。 约束限制: 不涉及。 取值范围: 字符串,通常为另一个节点的ID。 默认取值: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| agency | 否 | String | 参数解释: 代理名称,用于指定作业执行的IAM代理。通过代理获取执行作业所需的权限。与execute_user二选一,agency优先级更高。 约束限制: 不涉及。 取值范围: 字符串。 默认取值: 不涉及。 |
| execute_user | 否 | String | 参数解释: 执行用户,用于指定作业的执行用户。与agency二选一,当agency为空时使用execute_user。 约束限制: 不涉及。 取值范围: 字符串。 默认取值: 不涉及。 |
| instance_timeout | 否 | Integer | 参数解释: 实例超时时间,单位为秒。超过此时间作业实例将被标记为超时。 约束限制: 不涉及。 取值范围: 整数,取值范围为1-1440。 默认取值: 60。 |
响应参数
状态码:200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| plan_time | Long | 参数解释: 计划时间,作业计划执行的时间戳,单位为毫秒。用于确认作业是否按预期时间调度。 取值范围: 正整数。 |
| submit_time | Long | 参数解释: 提交时间,作业实际提交到执行引擎的时间戳,单位为毫秒。用于确认作业的实际提交时刻。 取值范围: 正整数。 |
状态码:400
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 错误码。 |
| error_msg | String | 错误描述。 |
请求示例
测试运行job_name为job_123的作业。
GET /v2/62099355b894428e8916573ae635f1f9/factory/jobs/job_123/run-test
{
"pipeline_id" : "480108",
"objects" : [ {
"id" : "3dbba493-fb52-47c6-9bb6-5dee740da577",
"name" : "RC_ontology_integration_55f77d3d1b3c4c25ad0e47f1aa26e6db_StorageLocation",
"properties" : [ {
"name" : "processorType",
"value" : "RESOURCE"
}, {
"name" : "clusterName",
"value" : "mrs-daa-test"
}, {
"name" : "clusterId",
"value" : "cdfd04e2-daf4-4827-ad48-87ab16b66e9e"
}, {
"name" : "type",
"value" : "com.cloud.datacraft.resource.MRCluster"
} ]
}, {
"id" : "5719e312-fc2a-4060-8186-e275cc986035",
"name" : "ontology_integration_55f77d3d1b3c4c25ad0e47f1aa26e6db_StorageLocation",
"properties" : [ {
"name" : "queryInterval",
"value" : "10"
}, {
"name" : "execTimeOut",
"value" : "1 hour"
}, {
"name" : "execTimeOutRetry",
"value" : "false"
}, {
"name" : "maximumRetries",
"value" : "0"
}, {
"name" : "retryDelay",
"value" : "120 sec"
}, {
"name" : "action",
"value" : "EXIT"
}, {
"name" : "Job Name",
"value" : "daaspark_9535c662-6d3d-4a6f-92b9-ccbb6ec31d3a"
}, {
"name" : "MRS Cluster Type",
"value" : "v2"
}, {
"name" : "resourceJarPath",
"value" : "daa-data-factory-runtime"
}, {
"name" : "Path of Jar File",
"value" : "a94e6d15-c4e1-4022-8ff1-d59031e3f8c2"
}, {
"name" : "sparkJobProcessType",
"value" : "BATCH"
}, {
"name" : "input",
"value" : ""
}, {
"name" : "output",
"value" : ""
}, {
"name" : "processorType",
"value" : "INVOKE_ACTIVITY"
}, {
"name" : "type",
"value" : "com.cloud.datacraft.activity.ExecuteSpark"
}, {
"name" : "emptyRunningJob",
"value" : "0"
}, {
"name" : "taskWorkGroupId",
"value" : "-1"
}, {
"name" : "mrCluster",
"ref_value" : "3dbba493-fb52-47c6-9bb6-5dee740da577"
} ]
} ],
"task_properties" : {
"agency" : "dlg_agency",
"instance_timeout" : 60
}
} 响应示例
状态码:200
success
{
"plan_time" : 1788261922879,
"submit_time" : 1788261922879
} 状态码:400
BadRequest
{
"error_code" : "DLF.3051",
"error_msg" : "The request parameter is invalid."
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | success |
| 400 | BadRequest |