1. 任务管理中心

1.1. 任务管理中心说明

1.1.1. 任务管理中心定义

任务管理中心负责管理各种任务的执行计划,执行过程,执行结果。支持的任务类型包括数据科学笔记,数据集成项目,数据集刷新,截图等。

执行计划结构说明

字段 类型 描述
id INTEGER 执行计划的 id
entityGroup STRING 执行计划的任务类型,见执行计划任务类型和对应参数设置说明
entityKey STRING 执行计划的唯一标识,见执行计划任务类型和对应参数设置说明
execDetail OBJECT 执行计划要执行的任务的具体信息,见任务详细信息说明,这个来源于具体的对象,比如数据科学笔记,数据集等
createdAt DATETIME 执行计划创建的时间
createdBy INTEGER 执行计划创建用户的 id
updatedAt DATETIME 执行计划最后修改的时间
updatedBy INTEGER 执行计划最后修改用户的 id
enabled BOOL 是否启用,包括 true 和 false
entityCreatedBy INTEGER 执行计划需要执行的任务对象的创建用户 id
execFrequency STRING 执行频率,见计划表达式的生成类型
startAt DATETIME 最后一次任务执行开始执行的时间
stopAt DATETIME 最后一次任务执行结束执行的时间
jobStatus STRING 最后一次任务执行的状态,见任务执行的状态说明
contextId INTEGER 立即执行的时候,会返回对应的任务执行进度信息id,其他情况为null
title STRING 执行计划需要执行的任务对象的标题
entityCreatedByName STRING 执行计划需要执行的任务对象的创建用户名称
nextStartAt DATETIME 下次执行时间
costTime INTEGER 最后一次任务执行耗时,单位是秒
planItems OBJECT 数组 执行计划中每条具体的cron计划或者是依赖触发,见任务触发结构说明
path STRING 应用的路径
importType INTEGER 数据集引擎开关,0为未开启,1为开启
diskUsage INTEGER 数据集大小,单位是字节
datasetCount INTEGER 数据集个数
datasetType STRING 数据集类型,包括sql(sql查询),connection(数据连接),fusion(多表联合),union(数据合并),aggregate(数据聚合)
isVirtual BOOL 数据集的执行计划是否是虚拟的,虚拟的用于在app scope的数据集列表里面选择包含或者排除数据集。
updateMethod STRING 数据更新方法,更新方法,ALL表示全量,INCREMENTAL表示增量
updateMethodSwitchable BOOL 本数据集是否支持设置增量更新

任务触发结构说明

字段 类型 描述
id INTEGER 任务触发条目的 id
planId INTEGER 任务触发条目所属的执行计划的 id
triggerType STRING 任务触发类型,见任务触发类型说明
cronDesc STRING cron表达式,仅triggerType是CRON_JOB的时候需要,格式需要符合Quartz的要求
cronType STRING cron表达式的生成类型,仅triggerType是CRON_JOB的时候需要,见计划表达式的生成类型
timeZone STRING cron表达式对应的时区,仅triggerType是CRON_JOB的时候需要
triggerByJobs OBJECT 数组 其他任务列表,任意一个执行完后触发本job,仅triggerType是DEPENDENCY的时候需要
triggerByJobs[].entityKey STRING 依赖的其他任务的唯一标识
triggerByJobs[].entityGroup STRING 依赖的其他任务的类型
createdAt DATETIME 任务触发创建的时间
createdBy INTEGER 任务触发创建用户的 id
updatedAt DATETIME 任务触发最后修改的时间
updatedBy INTEGER 任务触发最后修改用户的 id

任务详细信息说明

字段 类型 描述
jobClass STRING 任务执行时调用的java类名,具体见执行计划任务类型和对应参数设置说明
jobParams OBJECT key/value Object,任务执行时参数信息,具体见执行计划任务类型和对应参数设置说明
retryTimes INTEGER 任务执行失败重试次数

执行计划任务类型和对应参数设置说明

意义 entityKey javaClass jobParams
NOTEBOOK 数据科学笔记 数据科学id com.hengshi.nangaparbat.schedulejob.NotebookJob {"notebook": notebookId},其中notebookId是数据科学的id
PIPELINE 数据集成项目 数据集成id com.hengshi.nangaparbat.schedulejob.PipelineJob {"pipeline": pipelineId},其中pipelineId是数据集成的id
DATASET 数据集刷新 appId-datasetId,其中appId是应用id,datasetId是数据集id com.hengshi.nangaparbat.schedulejob.DatasetJob {"app":appId,"dataset":datasetId},其中appId是应用id,datasetId是数据集id
SCREENSHOT 截图
APP_EMAIL 应用邮件自动推送 应用id com.hengshi.nangaparbat.schedulejob.AppEmailJob {"app":appId},其中appId是应用id
APP_REFRESH 应用数据集刷新 应用id com.hengshi.nangaparbat.schedulejob.AppDatasetRefreshJob {"app":appId},其中appId是应用id
DB_BATCH_SYNC 数据批量同步 数据批量同步项目id com.hengshi.nangaparbat.schedulejob.DBBatchSyncJob {"syncProj":syncProjId},其中syncProjId是数据批量同步项目id

任务触发类型说明

意义
CRON_JOB cron表达式
DEPENDENCY 被其他任务触发
ONCE 人工触发

计划表达式的生成类型

意义
MINUTELY 每分钟,
HOURLY 每小时,前端页面提供生成表达式的便捷方式
DAILY 每天,前端页面提供生成表达式的便捷方式
WEEKLY 每周,前端页面提供生成表达式的便捷方式
MONTHLY 每月,前端页面提供生成表达式的便捷方式
CRON 用户自定义

任务执行进度信息结构说明

字段 类型 描述
id INTEGER 任务执行的 id
planId INTEGER 执行计划的 id
jobStatus STRING 任务执行的状态,见任务执行的状态说明
createdAt DATETIME 任务执行创建的时间
createdBy INTEGER 任务执行创建用户的 id
scheduledAt DATETIME 任务执行被scheduler开始安排的时间
startAt DATETIME 任务执行开始执行的时间
stopAt DATETIME 任务执行结束执行的时间
planItemId INTEGER 触发本次运行的触发条目 id
jobLogId INTEGER 执行日志的 id
jobResultId INTEGER 执行结果的 id
heartbeatTime DATETIME 任务最新心跳时间
execDetail OBJECT 执行计划要执行的任务的具体信息,见任务详细信息说明,这个来源于具体的对象,比如数据科学笔记,数据集等
entityGroup STRING 执行计划的任务类型,见执行计划任务类型和对应参数设置说明
entityKey STRING 执行计划的唯一标识,见执行计划任务类型和对应参数设置说明
title STRING 执行计划需要执行的任务对象的标题
entityCreatedByName STRING 执行计划需要执行的任务对象的创建用户名称
planItem OBJECT 任务执行是被哪个触发条目触发,见任务触发结构说明
costTime INTEGER 最后一次任务执行耗时,单位是秒
path STRING 应用的路径
importType INTEGER 数据集引擎开关,0为未开启,1为开启
diskUsage INTEGER 数据集大小,单位是字节
datasetCount INTEGER 数据集个数

任务执行的状态说明

意义
NONE 全新任务,无状态
PENDING 已调度,等待执行
RUNNING 正在执行
SUCCESSFUL 执行成功
FAILED 执行失败
CANCELLED 执行取消

任务执行结果说明

字段 类型 描述
schema OBJECT数组 每一个元素表示一个字段的属性,与数据集的字段结构相同
data OBJECT数组 每一个元素是表示一行数据的数组

1.2. 接口说明

主要用于创建调度对象的执行计划,或者立即执行,重新执行等。

1.2.1. 创建执行计划

请求URL

POST /api/schedules

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
Request Body 参数
字段 类型 是否必须 描述
entityGroup STRING 执行计划的任务类型,见执行计划任务类型和对应参数设置说明
entityKey STRING 执行计划的唯一标识,见执行计划任务类型和对应参数设置说明
planItems OBJECT 数组 执行计划中每条具体的cron计划或者是依赖触发,见任务触发结构说明
enabled BOOL 默认是true
execDetail OBJECT 执行计划要执行的任务的具体信息,见任务详细信息说明,这个来源于具体的对象,比如数据科学笔记,数据集等
sync BOOL 是否同步等待任务执行完成

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值
data OBJECT 执行计划结构说明

接口示例: 创建cron类型的执行计划

POST /api/schedules

{
    "entityGroup": "NOTEBOOK",
    "entityKey": "1",
    "planItems": [
        {
            "triggerType": "CRON_JOB",
            "cronDesc": "0 15 0 ? * 1",
            "cronType": "WEEKLY",
            "timeZone": "GMT+08:00"
        },
        {
            "triggerType": "CRON_JOB",
            "cronDesc": "*/30 * * * * ?",
            "cronType": "CRON",
            "timeZone": "GMT+08:00"
        }
    ],
    "execDetail": {
        "jobClass": "com.hengshi.nangaparbat.schedulejob.NotebookJob",
        "jobParams": {"notebook": 1},
        "retryTimes": 1
    }
}

返回

{
    "code": 0,
    "data": {
        "id": 1,
        "entityGroup": "NOTEBOOK",
        "entityKey": "1",
        "enabled": true,
        "planItems": [
            {
                "id": 1,
                "triggerType": "CRON_JOB",
                "cronDesc": "0 15 0 ? * 1",
                "cronType": "WEEKLY",
                "timeZone": "GMT+08:00"
            },
            {
                "id": 2,
                "triggerType": "CRON_JOB",
                "cronDesc": "*/30 * * * * ?",
                "cronType": "CRON",
                "timeZone": "GMT+08:00"
            }
        ],
        "execDetail": {
            "jobClass": "com.hengshi.nangaparbat.schedulejob.NotebookJob",
            "jobParams": {"notebook": 1},
            "retryTimes": 1
        },
        "title": "notebook1",
        "createdAt": "2020-03-05 15:01:02",
        "createdBy": 1,
        "updatedAt": "2020-03-05 15:01:02",
        "updatedBy": 1
    },
    "msg": "success",
    "version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#1234567"
}

接口示例: 立即执行或者是重新运行某类任务,这里是notebook

POST /api/schedules

{
    "entityGroup": "NOTEBOOK",
    "entityKey": "1",
    "planItems": [
        {
            "triggerType": "ONCE"
        }
    ],
    "execDetail": {
        "jobClass": "com.hengshi.nangaparbat.schedulejob.NotebookJob",
        "jobParams": {"notebook": 1},
        "retryTimes": 1
    }
}

返回

{
    "code": 0,
    "data": {
        "id": 1,
        "entityGroup": "NOTEBOOK",
        "entityKey": "1",
        "enabled": true,
        "planItems": [
            {
                "id": 3,
                "triggerType": "ONCE",
                "planId": 1
            }
        ],
        "execDetail": {
            "jobClass": "com.hengshi.nangaparbat.schedulejob.NotebookJob",
            "jobParams": {"notebook": 1},
            "retryTimes": 1
        },
        "title": "notebook1",
        "createdAt": "2020-03-05 15:01:02",
        "createdBy": 1,
        "updatedAt": "2020-03-05 15:01:02",
        "updatedBy": 1
    },
    "msg": "success",
    "version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#1234567"
}

1.2.2. 根据执行计划id取消执行计划的执行任务

请求URL

PUT /api/schedules/{scheduleId}/cancel

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
Request Body 参数
字段 类型 是否必须 描述

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值
code 错误码 请求成功返回0
msg STRING 请求成功返回success

接口示例:

PUT /api/schedules/{scheduleId}/cancel

{}

返回

{
    "code": 0,
    "msg": "success",
    "version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#1234567"
}

1.2.3. 根据body信息取消执行计划的执行任务

请求URL

POST /api/schedules/cancel

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
Request Body 参数
字段 类型 是否必须 描述
entityGroup STRING
entityKey STRING

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值
code 错误码 请求成功返回0
msg STRING 请求成功返回success

接口示例:

POST /api/schedules/cancel

{"entityGroup":"PIPELINE","entityKey":"1"}

返回

{
    "code": 0,
    "msg": "success",
    "version": "4.0-SNAPSHOT@@git.commit.id.abbrev@#1234567"
}

1.2.4. 删除执行计划

请求URL

DELETE /api/schedules/{scheduleId}

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
Request Body 参数
字段 类型 是否必须 描述

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值
code 错误码 请求成功返回0
msg STRING 请求成功返回success

接口示例:

DELETE /api/schedules/{scheduleId}

返回

{
    "code": 0,
    "msg": "success",
    "version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#1234567"
}

1.2.5. 修改执行计划

主要用于启用/停用,和修改具体触发条目

请求URL

PUT /api/schedules/{scheduleId}

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
Request Body 参数

只能修改planItems和enabled,修改enabled表示启用或者停用,修改planItems表示修改具体的计划,必须整体修改,整体提交。

字段 类型 是否必须 描述
planItems OBJECT 数组 可选 执行计划中每条具体的cron计划或者是依赖触发条目,见任务触发结构说明,为空或者null,表示删掉所有条目
enabled BOOL

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值
data OBJECT 执行计划结构说明

接口示例:

PUT /api/schedules/{scheduleId}

{
    "enabled": false,
    "planItems": [
        {
            "id": 1,
            "triggerType": "CRON_JOB",
            "cronDesc": "0 15 0 ? * 1",
            "cronType": "WEEKLY",
            "timeZone": "GMT+08:00"
        },
        {
            "id": 2,
            "triggerType": "CRON_JOB",
            "cronDesc": "*/30 * * * * ?",
            "cronType": "CRON",
            "timeZone": "GMT+08:00"
        }
    ]
}

返回

{
    "code": 0,
    "data": {
        "id": 1,
        "entityGroup": "NOTEBOOK",
        "entityKey": "1",
        "enabled": false,
        "planItems": [
            {
                "id": 1,
                "triggerType": "CRON_JOB",
                "cronDesc": "0 15 0 ? * 1",
                "cronType": "WEEKLY",
                "timeZone": "GMT+08:00"
            },
            {
                "id": 2,
                "triggerType": "CRON_JOB",
                "cronDesc": "*/30 * * * * ?",
                "cronType": "CRON",
                "timeZone": "GMT+08:00"
            }
        ],
        "execDetail": {
            "jobClass": "com.hengshi.nangaparbat.schedulejob.NotebookJob",
            "jobParams": {"notebook": 1},
            "retryTimes": 1
        },
        "title": "notebook1",
        "createdAt": "2020-03-05 15:01:02",
        "createdBy": 1,
        "updatedAt": "2020-03-05 15:01:02",
        "updatedBy": 1
    },
    "msg": "success",
    "version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#1234567"
}

1.2.6. 启用执行计划

请求URL

POST /api/schedules/{scheduleId}/enable

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
Request Body 参数
字段 类型 是否必须 描述

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值

接口示例:

POST /api/schedules/{scheduleId}/enable

{}

返回

{
    "code": 0,
    "msg": "success",
    "version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#1234567"
}

1.2.7. 停用执行计划

请求URL

POST /api/schedules/{scheduleId}/disable

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
Request Body 参数
字段 类型 是否必须 描述

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值

接口示例:

POST /api/schedules/{scheduleId}/disable

{}

返回

{
    "code": 0,
    "msg": "success",
    "version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#1234567"
}

1.2.8. 查询执行计划

请求URL

GET /api/schedules/{scheduleId}

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
Request Body 参数
字段 类型 是否必须 描述

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值
data OBJECT 执行计划结构说明

接口示例:

GET /api/schedules/{scheduleId}

返回

{
    "code": 0,
    "data": {
        "id": 1,
        "entityGroup": "NOTEBOOK",
        "entityKey": "1",
        "enabled": false,
        "planItems": [
            {
                "id": 1,
                "triggerType": "CRON_JOB",
                "cronDesc": "0 15 0 ? * 1",
                "cronType": "WEEKLY",
                "timeZone": "GMT+08:00"
            },
            {
                "id": 2,
                "triggerType": "CRON_JOB",
                "cronDesc": "*/30 * * * * ?",
                "cronType": "CRON",
                "timeZone": "GMT+08:00"
            }
        ],
        "execDetail": {
            "jobClass": "com.hengshi.nangaparbat.schedulejob.NotebookJob",
            "jobParams": {"notebook": 1},
            "retryTimes": 1
        },
        "title": "notebook1",
        "createdAt": "2020-03-05 15:01:02",
        "createdBy": 1,
        "updatedAt": "2020-03-05 15:01:02",
        "updatedBy": 1
    },
    "msg": "success",
    "version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#1234567"
}

1.2.9. 查询执行计划列表

请求URL

GET /api/schedules

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
offset INTEGER 可选 分页偏移量,默认是0
limit INTEGER 可选 分页获取个数,默认是10
entityKey STRING 可选 意义同执行计划结构说明 中的entityKey
entityGroup STRING 意义同执行计划结构说明 中的entityGroup
q STRING 可选 搜索关键字
entityCreatedByList STRING 可选 创建者用户id列表,英文逗号(,)分割
jobStatusList STRING 可选 任务状态列表,英文逗号(,)分割
Request Body 参数
字段 类型 是否必须 描述

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值
totalHits INTEGER 总个数
totalDiskUsage INTEGER 数据集空间总大小,单位的byte
totalDatasets INTEGER 数据集个数
offset INTEGER 当前分页偏移量
data OBJECT 数组 数组的元素是一个执行计划,见执行计划结构说明

接口示例:

GET /api/schedules?entityKey=1&entityGroup=NOTEBOOK

返回

{
    "code": 0,
    "data": [
        {
            "id": 1,
            "entityGroup": "NOTEBOOK",
            "entityKey": "1",
            "enabled": false,
            "planItems": [
                {
                    "id": 1,
                    "triggerType": "CRON_JOB",
                    "cronDesc": "0 15 0 ? * 1",
                    "cronType": "WEEKLY",
                    "timeZone": "GMT+08:00"
                },
                {
                    "id": 2,
                    "triggerType": "CRON_JOB",
                    "cronDesc": "*/30 * * * * ?",
                    "cronType": "CRON",
                    "timeZone": "GMT+08:00"
                }
            ],
            "execDetail": {
                "jobClass": "com.hengshi.nangaparbat.schedulejob.NotebookJob",
                "jobParams": {"notebook": 1},
                "retryTimes": 1
            },
            "title": "notebook1",
            "createdAt": "2020-03-05 15:01:02",
            "createdBy": 1,
            "updatedAt": "2020-03-05 15:01:02",
            "updatedBy": 1
        }
    ],
    "msg": "success",
    "version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#1234567",
    "totalHits": 1,
    "offset": 0
}

1.2.10. 查询任务执行进度信息的用户列表

请求URL

GET /api/schedules/users

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
entityKey STRING 可选 意义同执行计划结构说明 中的entityKey
entityGroup STRING 意义同执行计划结构说明 中的entityGroup
q STRING 可选 搜索关键字
jobStatusList STRING 可选 任务状态列表,英文逗号(,)分割
Request Body 参数
字段 类型 是否必须 描述

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值
data OBJECT 数组 数组的元素是一个用户信息

接口示例:

GET /api/schedules/users?entityGroup=DATASET

返回

{
  "version":"3.3-SNAPSHOT@9a5e106#6730f0d",
  "code":0,
  "msg":"success",
  "data":[
    {
      "id":7,
      "name":"admin",
      "email":"admin@1.com",
      "description":"",
      "avatar":"",
      "enable":true,
      "userType":"internal",
      "loginName":"admin",
      "config":{
        "sys.email":{
          "source":"SYSTEM_DEFINED",
          "value":"admin@1.com",
          "type":"string"
        },
        "sys.login_name":{
          "source":"SYSTEM_DEFINED",
          "value":"admin",
          "type":"string"
        },
        "sys.mobile":{
          "source":"SYSTEM_DEFINED",
          "type":"string"
        },
        "sys.id":{
          "source":"SYSTEM_DEFINED",
          "value":7,
          "type":"number"
        },
        "sys.loginName":{
          "source":"SYSTEM_DEFINED",
          "value":"admin",
          "type":"string"
        },
        "sys.name":{
          "source":"SYSTEM_DEFINED",
          "value":"admin",
          "type":"string"
        }
      },
      "options":{},
      "roles":[{"id":4,"name":"data viewer","description":"data viewer"}],
      "salt":"5a5dd366-4142-4c6b-b749-74d6c9564d94",
      "organizations":[]
    }
  ]
 }

1.2.11. 查询任务执行进度信息

请求URL

GET /api/contexts/{contextId}

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
Request Body 参数
字段 类型 是否必须 描述

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值
data OBJECT 任务执行进度信息,见任务执行进度信息结构说明

接口示例:

GET /api/contexts/1

返回

{
    "code": 0,
    "data": {
        "id": 1,
        "planId": 1,
        "entityGroup": "NOTEBOOK",
        "entityKey": "1",
        "jobStatus": "SUCCESSFUL",
        "createdAt": "2020-03-05 15:01:02",
        "createdBy": 1,
        "scheduleAt": "2020-03-05 15:01:03",
        "startAt": "2020-03-05 15:01:04",
        "stopAt": "2020-03-05 15:01:06",
        "planItem": {
            "id": 1,
            "triggerType": "CRON_JOB",
            "cronDesc": "0 15 0 * * 0",
            "cronType": "WEEKLY",
            "timeZone": "GMT+08:00"
        },
        "jobLogId": 1,
        "jobResultId": 1,
        "execDetail": {
            "jobClass": "com.hengshi.nangaparbat.schedulejob.NotebookJob",
            "jobParams": {"notebook": 1},
            "retryTimes": 1
        }
    },
    "msg": "success",
    "version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#1234567"
}

1.2.12. 查询任务执行进度信息列表

请求URL

GET /api/contexts

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
offset INTEGER 可选 分页偏移量,默认是0
limit INTEGER 可选 分页获取个数,默认是10
entityKey STRING 可选 意义同执行计划结构说明 中的entityKey
entityGroup STRING 意义同执行计划结构说明 中的entityGroup
jobStatus STRING 可选 任务执行的状态,见任务执行的状态说明
q STRING 可选 搜索关键字
entityCreatedByList STRING 可选 创建者用户id列表,英文逗号(,)分割
jobStatusList STRING 可选 任务状态列表,英文逗号(,)分割
Request Body 参数
字段 类型 是否必须 描述

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值
totalHits INTEGER 总个数
offset INTEGER 当前分页偏移量
data OBJECT 数组 数组的元素是一个任务执行进度信息,见任务执行进度信息结构说明

接口示例:

GET /api/contexts?entityKey=1&entityGroup=NOTEBOOK

返回

{
    "code": 0,
    "data": [
        {
            "id": 1,
            "planId": 1,
            "entityGroup": "NOTEBOOK",
            "entityKey": "1",
            "jobStatus": "SUCCESSFUL",
            "createdAt": "2020-03-05 15:01:02",
            "createdBy": 1,
            "scheduleAt": "2020-03-05 15:01:03",
            "startAt": "2020-03-05 15:01:04",
            "stopAt": "2020-03-05 15:01:06",
            "planItem": {
                "id": 1,
                "triggerType": "CRON_JOB",
                "cronDesc": "0 15 0 * * 0",
                "cronType": "WEEKLY",
                "timeZone": "GMT+08:00"
            },
            "jobLogId": 1,
            "jobResultId": 1,
            "execDetail": {
                "jobClass": "com.hengshi.nangaparbat.schedulejob.NotebookJob",
                "jobParams": {"notebook": 1},
                "retryTimes": 1
            }
        }
    ],
    "msg": "success",
    "version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#1234567",
    "totalHits": 1,
    "offset": 0
}

1.2.13. 查询任务执行进度信息的用户列表

请求URL

GET /api/contexts/users

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
entityKey STRING 可选 意义同执行计划结构说明 中的entityKey
entityGroup STRING 意义同执行计划结构说明 中的entityGroup
jobStatus STRING 可选 任务执行的状态,见任务执行的状态说明
q STRING 可选 搜索关键字
jobStatusList STRING 可选 任务状态列表,英文逗号(,)分割
Request Body 参数
字段 类型 是否必须 描述

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值
data OBJECT 数组 数组的元素是一个用户信息

接口示例:

GET /api/contexts/users?entityGroup=DATASET

返回

{
  "version":"3.3-SNAPSHOT@9a5e106#6730f0d",
  "code":0,
  "msg":"success",
  "data":[
    {
      "id":7,
      "name":"admin",
      "email":"admin@1.com",
      "description":"",
      "avatar":"",
      "enable":true,
      "userType":"internal",
      "loginName":"admin",
      "config":{
        "sys.email":{
          "source":"SYSTEM_DEFINED",
          "value":"admin@1.com",
          "type":"string"
        },
        "sys.login_name":{
          "source":"SYSTEM_DEFINED",
          "value":"admin",
          "type":"string"
        },
        "sys.mobile":{
          "source":"SYSTEM_DEFINED",
          "type":"string"
        },
        "sys.id":{
          "source":"SYSTEM_DEFINED",
          "value":7,
          "type":"number"
        },
        "sys.loginName":{
          "source":"SYSTEM_DEFINED",
          "value":"admin",
          "type":"string"
        },
        "sys.name":{
          "source":"SYSTEM_DEFINED",
          "value":"admin",
          "type":"string"
        }
      },
      "options":{},
      "roles":[{"id":4,"name":"data viewer","description":"data viewer"}],
      "salt":"5a5dd366-4142-4c6b-b749-74d6c9564d94",
      "organizations":[]
    }
  ]
 }

1.2.14. 查询任务执行进度信息的日志

请求URL

GET /api/contexts/{contextId}/logs

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
block BOOL 可选 是否阻塞,为true表示等到执行完再返回,否则返回空data,默认是true
Request Body 参数
字段 类型 是否必须 描述

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值
data OBJECT 数组 数组的元素是一个包含subKey和logs的对象
data[].subKey STRING 和具体的任务相关,notebook的话,是一个paragraph的id
data[].logs STRING 数组 每个数组元素是一条日志
done BOOL 当查询是非阻塞的时候,未完成的任务返回false

接口示例:

GET /api/contexts/{contextId}/logs

返回

{
    "code": 0,
    "data": [
        {
            "subKey": "1",
            "logs": [
                "2020-03-03 17:10:08.13 [77] [pipelineId: 1 jobId: 1 nodeId: 2 taskId: 1] task start",
                "2020-03-03 17:10:08.409 [77] [pipelineId: 1 jobId: 1 nodeId: 2 taskId: 1] task done"
            ]
        },
        {
            "subKey": "2",
            "logs": [
                "2020-03-03 17:10:08.13 [77] [pipelineId: 1 jobId: 1 nodeId: 2 taskId: 1] task start",
                "2020-03-03 17:10:08.409 [77] [pipelineId: 1 jobId: 1 nodeId: 2 taskId: 1] task done"
            ]
        }
    ],
    "done": true,
    "msg": "success",
    "version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#1234567"
}

1.2.15. 查询任务执行进度信息的执行结果

请求URL

GET /api/contexts/{contextId}/results

需要认证:是

请求参数

URL 参数
字段 类型 是否必须 说明
block BOOL 可选 是否阻塞,为true表示等到执行完再返回,否则返回空data,默认是true
Request Body 参数
字段 类型 是否必须 描述

返回对象的格式说明

字段 类型 说明
version STRING 当前系统版本哈希值
data OBJECT 数组 数组的元素是一个包含subKey和result的对象
data[].subKey STRING 和具体的任务相关,notebook的话,是一个paragraph的id
data[].result OBJECT 和数据集的data查询结果类似,见任务执行结果说明
done BOOL 当查询是非阻塞的时候,未完成的任务返回false

接口示例:

GET /api/contexts/{contextId}/results

返回

{
    "code": 0,
    "data": [
        {
            "subKey": "1",
            "result": {"data": [...],"schema": [...]}

        },
        {
            "subKey": "2",
            "result": {"data": [...],"schema": [...]}
        }
    ],
    "done": true,
    "msg": "success",
    "version": "3.1-SNAPSHOT@@git.commit.id.abbrev@#1234567"
}

results matching ""

    No results matching ""

    资源管理 分享链接