查询作业详情 - ShowJob
功能介绍
此接口可以查询指定DLF作业定义。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权,具体权限要求请参见权限和授权项。
- 如果使用身份策略授权,当前API调用无需身份策略权限。
URI
- 参数说明
参数名
是否必选
参数类型
说明
project_id
是
String
项目编号,获取方法请参见项目ID和账号ID。
job_name
是
String
作业名称。
表1 Query参数 参数
是否必选
参数类型
描述
version
否
Integer
作业版本号,若传入版本号,则查询指定版本号的作业;若不传入,则查询最新的版本作业。
dependencies
否
Boolean
返回下游依赖当前作业的作业,只返回第一层。
- true:返回下游依赖的作业名称。
- false:不返回下游依赖的作业名称。
默认值:false。
请求参数
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| workspace | 否 | String | 工作空间id。
|
响应参数
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| name | 是 | String | 作业名称,只能包含六种字符:英文字母、数字、中文、中划线、下划线和点号,且长度小于等于128个字符。作业名称不能重复。 |
| nodes | 是 | List<Node> | 节点定义,参考表4 |
| schedule | 是 | Schedule数据结构 | 调度配置,参考表5 |
| params | 否 | List<Param> | 作业参数定义,参考表6 |
| directory | 否 | String | 作业在目录树上的路径。创建作业时如果路径目录不存在,会自动创建目录,如/dir/a/,默认在根目录/。 |
| processType | 是 | String | 作业类型:
|
| id | 否 | Long | 作业Id。用户查询作业时使用。 |
| createTime | 否 | Long | 作业创建时间。 |
| downstreamJobs | 否 | String | 下游依赖当前作业的作业名称。当query参数dependencies取值为true时,返回该字段。 |
| lastUpdateUser | 否 | String | 作业最后修改人。 |
| logPath | 否 | String | 作业运行日志存放的OBS路径。 |
| basicConfig | 否 | BasicConfig数据结构 | 作业的基本信息,参考表29 |
| description | 否 | String | 作业描述信息 |
| cleanoverdueDays | 否 | integer | 设置作业的最大超时时间 |
| cleanWaitingJob | 否 | String | 清除等待的作业 |
| emptyRunningJob | 否 | String | 是否空跑 |
| version | 否 | String | 作业版本信息 |
| singleNodeJobFlag | 否 | Boolean | 是否选择单任务,默认为false。 |
| singleNodeJobType | 否 | String | 单任务类型,作业类型为BATCH时类型可选择如下:
作业类型为REAL_TIME时类型可选择如下:
|
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| name | 是 | String | 节点名称,只能包含六种字符:英文字母、数字、中文、中划线、下划线和点号,且长度小于等于128个字符。同一个作业中节点名称不能重复。 |
| type | 是 | String | 节点类型:
|
| location | 是 | Location数据结构 | 节点在作业画布上的位置,参考表7。 |
| preNodeName | 否 | List<String> | 本节点依赖的前面的节点名称列表。 |
| conditions | 否 | List<Condition> | 节点执行条件,如果配置此参数,本节点是否执行由condition的字段expression所保存的EL表达式计算结果决定,参考表8。 |
| properties | 是 | List<Property> | 节点属性,参考表14。 每种节点类型有自己的定义,如下: |
| pollingInterval | 否 | Int | 轮询节点执行结果时间间隔。 单位 : 秒,取值范围[1, 60] 默认值: 10 |
| execTimeOutRetry | 否 | String | 节点是否超时重试,默认值为"false" |
| maxExecutionTime | 否 | Int | 节点最大执行时间,如果节点在最大执行时间内还未执行完成,会把节点置为失败状态。 单位 : 分钟,取值范围[5, 1440] 默认值 : 60 |
| retryTimes | 否 | Int | 节点失败重试次数。取值范围[0, 5]。0代表不重试 默认值 : 0 |
| retryInterval | 否 | Int | 失败重试时间间隔。取值范围[5, 120] 单位 : 秒 默认值 : 120 |
| failPolicy | 否 | String | 节点失败策略: |
| eventTrigger | 否 | Event数据结构 | 实时作业节点事件触发配置,参考表11。 |
| cronTrigger | 否 | Cron数据结构 | 实时作业节点Cron触发配置,参考表9。 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| type | 是 | String | 调度类型。
|
| cron | 否 | 数据结构 | 当type为CRON时,配置调度频率、启动时间等信息,参考表10。 |
| event | 否 | 数据结构 | 当type为EVENT时,配置事件源等信息,参考表11。 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| name | 是 | String | 参数名称,只能包含英文字母、数字、中划线和下划线。不能超过64个字符。 |
| value | 是 | String | 参数值,不能超过1024个字符。 |
| type | 否 | String | 参数类型 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| preNodeName | 是 | String | 本节点依赖的前一个节点名称 |
| expression | 是 | String | EL表达式,如果EL表达式的计算结果为true,则触发执行本节点。 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| startTime | 是 | String | 调度开始时间,采用ISO 8601时间表示方法,格式为yyyy-MM-dd'T'HH:mm:ssZ,例如2018-10-22T23:59:59+08表示的时间为2018年10月22日23时59分59秒,在正8区,即北京时区。 |
| endTime | 否 | String | 调度结束时间,采用ISO 8601时间表示方法,格式为yyyy-MM-dd'T'HH:mm:ssZ,例如2018-10-22T23:59:59+08表示的时间为2018年10月22日23时59分59秒,在正8区,即北京时区。如果结束时间不配置,作业会按照调度周期一直执行下去。 |
| expression | 是 | String | Cron表达式,格式为"<秒> <分> <时> <天> <月> <星期>",每个字段允许的输入值参考表12。 |
| expressionTimeZone | 否 | String | Cron表达式对应的时区信息,例如GMT+8。调度系统会将表达式时间从该时区转换为服务端系统时区后执行,转换偏移量 = 设置时区(小时) - 系统时区(小时)。 例如:expressionTimeZone=GMT+2,服务端时区为 GMT+8,则偏移量为 -6,expression = 0 0 8 * * ? 将在服务端时间 02:00 执行。 默认值:使用DataArts Studio服务端所在的时区。 |
| period | 是 | String | 用于描述运行的间隔时间,格式为时间+时间单位。 例如:"1 hours","1 days","1 weeks","1 months" 需要与expression中的表达式对应。 |
| dependPrePeriod | 否 | Boolean | 是否依赖本作业上一个运行周期任务的执行结果。 默认值 : false |
| dependJob | 否 | DependJob数据结构 | 依赖其它作业配置,参考表12 DependJob数据结构说明。 |
| concurrent | 否 | Integer | 支持并发执行数量 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| startTime | 是 | String | 调度开始时间,采用ISO 8601时间表示方法,格式为yyyy-MM-dd'T'HH:mm:ssZ,例如2018-10-22T23:59:59+08表示的时间为2018年10月22日23时59分59秒,在正8区,即北京时区。 |
| endTime | 否 | String | 调度结束时间,采用ISO 8601时间表示方法,格式为yyyy-MM-dd'T'HH:mm:ssZ,例如2018-10-22T23:59:59+08表示的时间为2018年10月22日23时59分59秒,在正8区,即北京时区。如果结束时间不配置,作业会按照调度周期一直执行下去。 |
| expression | 是 | String | Cron表达式,格式为"<秒> <分> <时> <天> <月> <星期>",每个字段允许的输入值参考表12。 |
| expressionTimeZone | 否 | String | Cron表达式对应的时区信息,例如GMT+8。调度系统会将表达式时间从该时区转换为服务端系统时区后执行,转换偏移量 = 设置时区(小时) - 系统时区(小时)。 例如:expressionTimeZone=GMT+2,服务端时区为 GMT+8,则偏移量为 -6,expression = 0 0 8 * * ? 将在服务端时间 02:00 执行。 默认值:使用DataArts Studio服务端所在的时区。 |
| dependPrePeriod | 否 | Boolean | 是否依赖本作业上一个运行周期任务的执行结果。 默认值 : false |
| dependJobs | 否 | DependJob数据结构 | 依赖其它作业配置,参考表12 DependJob数据结构说明。 |
| intervalType | 否 | String | 调度间隔类型:
|
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| eventType | 是 | String | 选择对应的连接名称与topic,当有新的kafka消息时将会触发作业运行一次 配置为:KAFKA 事件类型,当前只支持监听DIS通道的新上报数据事件,每上报一条数据,触发作业运行一次。 配置为:DIS 选择要监听的OBS路径,如果该路径下有新增文件,则触发调度;新增的文件的路径名,可以通过变量Job.trigger.obsNewFiles引用。前提条件:该OBS路径已经配置DIS消息通知。 配置为:OBS |
| channel | 是 | String | DIS通道名称。 通过DIS管理控制台获取通道名称:
|
| failPolicy | 否 | String | 执行失败处理策略:
默认值 : SUSPEND |
| concurrent | 否 | int | 调度并发数 取值范围:1~128 默认值:1 |
| readPolicy | 否 | String | 读取策略:
默认值 : LAST |
| 字段 | 取值范围 | 允许的特殊字符 | 说明 |
|---|---|---|---|
| 秒 | 0-59 | , - * / | 当前版本只允许输入0。 |
| 分 | 0-59 | , - * / | - |
| 时 | 0-23 | , - * / | - |
| 天 | 1-31 | , - * ? / L W C | - |
| 月 | 1-12 | , - * / | 当前版本只允许输入*。 |
| 星期 | 1-7 | , - * ? / L C # | 从星期日开始算起。 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| jobs | 是 | List<String> | 依赖的作业名称列表,必须依赖已存在的作业。 |
| dependPeriod | 否 | String | 依赖周期:
默认值 : SAME_PERIOD |
| dependFailPolicy | 否 | String | 依赖作业任务执行失败处理策略:
默认值 : FAIL |
| sameWorkSpaceJobs | 否 | DependWorkspaceJob数据结构 | 依赖本工作空间作业列表,请参考表32。 |
| otherWorkSpaceJobs | 否 | DependWorkspaceJob数据结构 | 依赖其他工作空间作业列表,请参考表32。 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| scriptName | 是 | String | 脚本名称 |
| database | 否 | String | 数据库名称 MRS Hive中的数据库,默认default。 |
| connectionName | 否 | String | 连接名称 |
| scriptArgs | 否 | String | 脚本参数,key、value形式,多个参数间用\n分隔,例如key1=value1\nkey2=value2 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| scriptName | 是 | String | 脚本名称 |
| database | 否 | String | 数据库名称 MRS Spark SQL中的数据库,默认default。 |
| connectionName | 否 | String | 连接名称 |
| scriptArgs | 否 | String | 脚本参数,key、value形式,多个参数间用\n分隔,例如key1=value1\nkey2=value2 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| scriptName | 是 | String | 脚本名称 |
| database | 否 | String | 数据库名称 DWS服务中的数据库,默认postgres。 |
| connectionName | 否 | String | 连接名称 |
| scriptArgs | 否 | String | 脚本参数,key、value形式,多个参数间用\n分隔,例如key1=value1\nkey2=value2 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| scriptName | 是 | String | 脚本名称 |
| database | 否 | String | 数据库名称 DLI服务中数据库。 |
| connectionName | 否 | String | 连接名称 |
| scriptArgs | 否 | String | 脚本参数,key、value形式,多个参数间用\n分隔,例如key1=value1\nkey2=value2 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| scriptName | 是 | String | 脚本名称 |
| connectionName | 是 | String | 连接名称 |
| arguments | 否 | String | Shell脚本参数 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| clusterName | 是 | String | 集群名称。 通过DataArts Studio管理控制台 > 数据集成,在批量数据迁移集群列表可以获取到集群名称。 |
| jobName | 是 | String | 作业名称。 通过DataArts Studio管理控制台 > 数据集成,在批量数据迁移集群列表单击对应的集群管理,进入后在作业管理中获取作业名称。 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| streamName | 是 | String | DIS通道名称 通过DIS管理控制台获取通道名称:
|
| destinationType | 是 | String | 转储目标:
|
| duplicatePolicy | 是 | String | 转储任务重名处理策略:
|
| configuration | 是 | 数据结构 | 转储配置,参考添加转储任务的 obs_destination_descriptor参数说明和cloudtable_destination_descriptor参数说明。 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| namespace | 否 | String | 命名空间 默认值:default |
| action | 是 | String | 动作类型:
|
| table | 否 | String | 表名 |
| columnFamily | 否 | String | 列族 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| action | 是 | String | 动作类型:
|
| path | 是 | String | OBS路径 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| url | 是 | String | URL地址 云服务提供的URL地址。 |
| method | 是 | String | HTTP方法:
|
| headers | 否 | String | HTTP消息头,每个消息头的格式为<消息头名称>=<值>,多个消息头之间使用换行符分割。 |
| body | 否 | String | 消息体 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| topic | 是 | String | SMN主题URN 通过SMN管理控制台获取SMN主题URN:
在主题列表中可以获取到SMN主题URN。 |
| subject | 是 | String | 消息标题,给邮箱订阅者发送邮件时作为邮件主题。 |
| messageType | 是 | String | 消息类型
|
| message | 是 | String | 发送的消息。 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| clusterName | 是 | String | MRS集群名称 通过MRS管理控制台获取集群名称:
在现有列表中可以获取到集群名称。 |
| jobName | 是 | String | MRS作业名称 用户自定义。 |
| resourcePath | 是 | String | 自定义Spark Jar包OBS资源路径 |
| parameters | 是 | String | Spark Jar包自定义参数 对于开发的自定义Jar包,可以在此处对参数进行输入替换 |
| input | 否 | String | 输入路径 MRS Spark作业输入数据路径,可以为HDFS或者是OBS路径。 |
| output | 否 | String | 输出路径 MRS Spark作业输出数据路径,可以为HDFS或者是OBS路径。 |
| programParameter | 否 | String | 运行程序参数 允许多个key:value,多个参数要用竖线隔开。 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| clusterName | 是 | String | MRS集群名称 通过MRS管理控制台获取集群名称:
在现有列表中可以获取到集群名称。 |
| jobName | 是 | String | MRS作业名称 用户自定义。 |
| resourcePath | 是 | String | 资源路径 |
| parameters | 是 | String | MapReduce作业参数 |
| input | 是 | String | 输入路径 MapReduce作业输入数据路径,可以为HDFS或者是OBS路径。 |
| output | 是 | String | 输出路径 MapReduce作业输出数据路径,可以为HDFS或者是OBS路径。 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| clusterName | 是 | String | DLI队列名称 通过DLI管理控制台获取队列名称:
在队列管理列表中可以获取到队列名称。 |
| jobName | 是 | String | DLI作业名称 通过DLI管理控制台获取作业名称:
在作业管理列表中可以获取到作业名称。 |
| resourceType | 否 | String | DLI作业运行资源类型,可选 1. OBS路径: OBS 2. DLI程序包: DLIResources |
| jobClass | 否 | String | 主类名称。当应用程序类型为“.jar”时,主类名称不能为空。 |
| resourcePath | 是 | String | JAR包资源路径 |
| jarArgs | 否 | String | 主类入口参数 |
| sparkConfig | 否 | String | Spark作业运行参数 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| owner | 否 | String | 作业责任人,长度不能超过128个字符。 |
| isIgnoreWaiting | 否 | integer | 实例超时是否忽略等待时间, 取值范围为0和1, 0:表示实例超时不忽略等待时间1:表示实例超时忽略等待时间 |
| taskPriority | 否 | int | 作业优先级,取值范围[0, 2],默认值是0。0代表高优先级,1代表中优先级,2代表低优先级。 |
| executeUser | 否 | String | 作业执行用户,必须是已存在的用户名。 |
| instanceTimeout | 否 | int | 实例超时时间,单位是分钟,取值范围 [5, 1440],默认值是60 |
| customFields | 否 | Map<String,String> | 用户自定义字段,长度不能超过2048个字符。 |
| agency | 否 | String | 代理名称 |
| tags | 否 | List<String> | 作业标签列表 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| clusterName | 是 | String | MRS集群名称 通过MRS管理控制台获取集群名称:
在现有列表中可以获取到集群名称。 |
| jobName | 是 | String | MRS作业名称 用户自定义。 |
| flinkJobType | 是 | String | 客户选择是Flink SQL作业或Flink JAR作业。 |
| flinkJobProcessType | 是 | String | 客户选择批处理模式或流处理模式。 |
| scriptName | 否 | String | 客户选择Flink SQL关联的SQL脚本。 |
| resourcePath | 否 | String | 自定义Flink Jar包OBS资源路径 |
| input | 否 | String | 输入路径 MRS Flink作业输入数据路径,可以为HDFS或者是OBS路径。 |
| output | 否 | String | 输出路径 MRS Flink作业输出数据路径,可以为HDFS或者是OBS路径。 |
| programParameter | 否 | String | 运行程序参数 允许多个key:value,多个参数要用竖线隔开。 |
| 参数名 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| clusterName | 是 | String | MRS集群名称 通过MRS管理控制台获取集群名称:
在现有列表中可以获取到集群名称。 |
| jobName | 是 | String | MRS作业名称 用户自定义。 |
| statementOrScript | 是 | String | 选择使用SQL语句和关联SQL脚本。 |
| scriptName | 否 | String | 选择关联的SQL脚本。 |
| statement | 否 | String | 自定义的SQL内容。 |
| Data Warehouse | 是 | String | 指定HetuEngine服务所需数据连接。 |
| Schema | 是 | String | 使用HetuEngine服务所要访问的数据源schema名称。 |
| Database | 是 | String | 使用HetuEngine服务所要访问的数据源database名称。 |
| Queue | 否 | String | 使用HetuEngine服务所需资源队列名称。 |
请求示例
GET /v1/b384b9e9ab9b4ee8994c8633aabc9505/jobs/myJob
响应示例
调用查询作业详情接口时,如果在参数中带上dependencies=true,则会返回下游依赖当前作业的作业,只返回第一层。
GET /v1/b384b9e9ab9b4ee8994c8633aabc9505/jobs/xxx_1?dependencies=true xxx_1表示作业名。 响应消息会返回下游依赖当前作业的作业,如下示例中的响应结果消息字段downstreamJobs。
- 成功响应
{ "basicConfig": { "agency": "", "customFields": {}, "executeUser": "", "instanceTimeout": 0, "owner": "test_user", "priority": 0, "tags": {} }, "cleanoverdueDays": "60", "cleanWaitingJob": "cleanup", "createTime": "1695642745000", "downstreamJobs": [ { "jobId": "163240", "jobName": "xxx_2", "workSpace": "workspace_name" } ], "description": "", "emptyRunningJob": "0", "id": 608627, "lastUpdateUser": "test_user", "logPath": "obs://dlf-test-log", "name": "myJob", "nodes": [ { "failPolicy": "FAIL_CHILD", "location": { "x": "-45.5", "y": "-134.5" }, "maxExecutionTime": 360, "name": "MRS_Hive_SQL", "pollingInterval": 20, "preNodeName": [], "properties": [ { "name": "scriptName", "value": "test_hive_sql" }, { "name": "connectionName", "value": "mrs_hive_test" }, { "name": "database", "value": "default" }, { "name": "scriptArgs", "value": "test_var=111" } ], "retryInterval": 120, "retryTimes": 0, "type": "HiveSQL" } ], "processType": "BATCH", "schedule": { "type": "CRON" } } - 失败响应
{ "error_code":"DLF.30100", "error_msg":"The job does not exists." }