跳到主要内容

Cron 定时任务

请求参数与响应内容与内部接口基本一致

分页查询

GET/cron/v1/page

请求

名称类型必填描述
typestring任务类型过滤,当前固定分为 usersystem
activestring<'0' | '1'>启用/禁用状态过滤 1 启用 | 0 禁用,默认不过滤
tagsstring任务标签过滤(仅限系统任务,具体通过下方 获取标签列表 获取,支持多个用英文逗号分隔)
orderBystring<'sort' | 'last_runtime' | 'last_run_use'>指定排序字段,默认 sort
orderstring<'0' | '1'>指定排序方式 0 升序 | 1 降序,默认降序
pagestring指定页数,默认1
sizestring指定分页大小数量,默认20

响应

名称类型描述
dataobject[]数据项
pagenumber当前页码
sizenumber每页数据量
totalnumber数据总量
点此展开查看具体响应数据示例
名称类型描述
idnumber唯一标识
namestring任务名称
typestring任务类型,当前固定分为 usersystem
cronstring定时规则(5位或6位的定时表达式)
shellstring执行的命令
activenumber<0 | 1>状态 1 启用 | 0 禁用
configstring<object>高级配置,具体详见下方创建接口请求参数
tagsstring任务标签
last_runtimestring最后一次运行的时间
last_run_usenumber最后一次运行的时长(单位秒,精确到小数点后3位)
sortnumber在分页中的位置序号(正整数),默认按照先后顺序递增
create_timestring任务创建时间
remarkstring备注
bindstring后端用于关联底层内容的参数(仅系统任务使用)
is_runningboolean当前运行状态(任务是否正在运行)
示例
{
"data": [
{
"id": 2,
"name": "系统测试任务",
"type": "system",
"cron": "30 */2 * * *",
"shell": "arcadia run example.js",
"active": 1,
"config": "",
"tags": "",
"last_runtime": null,
"last_run_use": null,
"sort": 1,
"create_time": "2024-01-01 00:00:00",
"remark": "",
"bind": "",
"is_running": false
},
{
"id": 1,
"name": "用户测试任务",
"type": "user",
"cron": "0 0 * * *",
"shell": "arcadia rmlog",
"active": 0,
"config": "",
"tags": "",
"last_runtime": "2024-01-01 00:00:00",
"last_run_use": 1,
"sort": 1,
"create_time": "2024-01-01 00:00:00",
"remark": "",
"bind": "",
"is_running": true
},
...
],
"total": 5,
"page": 1,
"size": 20
}

默认倒序返回

查询

请求

GET/cron/v1/query

名称类型必填描述
idstring唯一标识

响应

参考上方分页查询接口响应

创建

POST/cron/v1/create

请求

名称类型必填描述
namestring任务名称
cronstring定时表达式
shellstring执行的命令
activenumber<0 | 1>状态 1启用 | 0禁用,默认启用
remarkstring任务备注
configstring<object>高级配置
  • config 高级配置字段说明
名称类型必填描述
before_task_shellstring任务运行前的执行命令
after_task_shellstring任务运行后的执行命令
log_directorystring日志目录路径(纯前端功能关联数据)
source_filestring源码文件路径(纯前端功能关联数据)
allow_concurrencyboolean是否允许并发
根据项目功能设计,开放接口目前只允许创建用户任务。

响应

参考上方分页查询接口响应

更新

POST/cron/v1/update

请求

名称类型必填描述
idnumber唯一标识
namestring任务名称
cronstring定时表达式
shellstring执行的命令
activenumber<0 | 1>状态 1启用 | 0禁用
remarkstring任务备注
configstring<object>高级配置,具体详见上方创建接口请求参数

响应

参考上方分页查询接口响应

删除

POST/cron/v1/delete

名称类型必填描述
idnumber | number[]唯一标识

调整排序

POST/cron/v1/order

名称类型必填描述
idnumber唯一标识
ordernumber目的修改位置
moveToEndboolean是否移动到最后

至少需要提供 ordermoveToEnd 其中一个,设置 moveToEndorder 参数的值会被覆盖为所有记录 sort 字段中的最大值,与其相反的操作是将 order 参数的值设置为 1。关于置顶或置底操作应建立在可视角度上,后端分页数据默认均为倒序返回所以应注意区分使用场景。

获取标签列表

GET/cron/v1/tagsList

请求

无参数

响应

名称类型描述
bindstring标签名称
countstring<number>累计使用该标签的任务数量
目前用于系统定时任务类型过滤,使用分页接口的 tags 参数,具体取自 bind 记录值的中间字段。

查询运行中的任务

GET/cron/v1/runningTasks

请求

无参数

响应

参考上方分页查询接口响应

运行任务

POST/cron/v1/run

名称类型必填描述
idnumber | number[]唯一标识
主动运行和按照定时计划自动触发运行的过程大致相同,不过要注意区分后台管理面板设计的调试功能,该调试仅执行定时任务记录项所存储的 shell 字段命令,在运行完毕后不会更新定时任务的运行状态、最后运行时间等关键信息。

终止任务

POST/cron/v1/terminate

名称类型必填描述
idnumber | number[]唯一标识
无法有效判断操作结果,因为存在少数任务进程没有被终止的异常情况,is_running 字段的值在任务被终止后或正常运行完毕后才会更新。