调度任务 Task

调度任务Task是调度作业 Job 的实例,是调度作业的每一次运行。

调度任务的生命周期

调度任务用 状态 Status 来描述生命周期过程中的每一个“点”,每个状态用不同的颜色表示,任务状态对日常管理非常重要。这些状态有:

以上状态中,新建、检查中、准备执行、正在执行、执行完成属于中间状态,等待超时、执行成功、执行失败、执行超时、执行结果不正确属于完成状态,中断和忽略属于手工状态。

在任务详情页点击状态文字可以手工修改任务的状态。

待检查的异常任务状态

如果是异常完成状态,会在调度作业列表页显示相应的提醒,表示任务发生异常但是未检查。同时在任务详情页“任务执行进度”瀑布图上面位置会出现一个待检查选项,只有检查过的异常任务才不会出现在列表页的提醒中。

任务时间与记录时间

每个调度任务都两个时间:一个是 任务时间,即创建时间,自动创建时秒位为0,手工创建时为确切的时间。任务一经创建,任务时间不会改变。另一个是 记录时间,即任务每次运行的时间。如果任务只运行一次,任务时间与记录时间相同或相近。但是任务可能被多次执行,如任务失败后自动重启或手工重新运行,系统会保留每一次的任务运行记录及所有相关信息,所以每次的记录时间也会不同。即使多次运行任务,任务时间也不会改变。

在任务树形列表中显示的是任务的记录时间,如果任务运行过多次,则点击这个任务时会展开所有的任务记录。在任务详情页加大显示的是任务时间。

调度任务的描述信息

和调度作业一样,每一个调度任务包含很多信息,以方便日常管理和监控。

任务执行进度瀑布图

在任务详情页,有一个瀑布流图,用来显示整个任务生命周期的的各个时间点及持续时长。点击任务图可展开或折叠显示每个命令的执行情况,鼠标划过某一个时间段会显示明细。

任务的各个时间点和时间段说明如下:

同样工作流中的每个命令也有类似的时间点和时间段:

在任务未结束时这个图是动态的,会每秒钟更新一次,直到任务运行结束。

调度任务的运行日志

任务日志是调度任务最重要的部分,了解任务运行情况的关键。我们在程序中打印到控制台的信息都会被记录下来,无论是正常信息还是异常信息。

在任务运行过程中,日志会每秒钟自动更新。可以单独显示调试日志和错误日志,调试日志是Keeper自动生成的日志,而错误日志是程序本身出错或异常打印的日志。

中断和重启调度任务

中断和重启是仅有的两个可以控制任务的操作,在任务详情页右上方可以找到相应的操作按钮。

执行中的任务可以被中断。如果任务的工作流还没有被执行,仅是更新任务的状态;如果工作流已经开始执行,则会杀掉正在执行的所有相关进程。注意,只有.sh扩展名的 Shell 命令产生的子进程,Keeper才会杀掉。其他类型的命令产生的子进程 Keeper 非常难以识别。

已执行完成的任务可以被重新启动而再次运行一次,再次运行会产生新的任务记录。


参考链接


微信公众号
码农老吴  |  星源工作室  |  开发月志  |  问题反馈
联系我们:wu@qross.io     手机/微信:18618171102
京 ICP 备 20027445 号
$(h1)!