本文介绍了在【系统服务云】中创建、执行和管理调度计划、调度作业和调度任务的步骤和要点。调度任务由开发者编写Java类定义,调度作业执行这些任务并设定参数,调度计划则安排作业的执行时间和频率。文章还强调了苍穹4.0版本中界面的一些变化及如何通过插件代码创建调度任务和计划,并提供了具体的实现示例和配置说明。
创作不易,如果文章对您有帮助,请为我点击一个朴实无华的赞^_^
在【系统服务云】使用 调度计划、调度作业、调度任务
关于调度计划、调度作业、调度任务的一些个人理解:
调度任务可以看做是一个java类(由开发者编写代码来制定这个调度任务,制定它进行什么样的操作);
调度作业去执行这段java类的代码,设置执行过程中的一些参数;
调度计划是多个调度作业的集合,设置这些作业在什么时候执行。
关于调度任务,有一点不要混淆:苍穹4.0版本,【系统服务云】->【系统管理】->【调度任务】中,查看到的,其实是调度作业,跟调度任务类没有关系。
如何通过插件代码,创建调度作业和调度计划,请参考我的其他文章:
https://vip.kingdee.com/article/183694459220099840
使用步骤
1.写代码,继承AbstractTask,编写一个调度任务。
2.开发平台,查找【调度任务类】页面,标识是sch_taskdefine,新增把上一步写好的类注册进去。
3.【系统服务云】,【系统管理】新增【调度作业】,调度作业可以选择一个 调度任务。
4.新增【调度计划】,配置【调度规则】,选择选择第3步创建的调度作业,指定执行的 开始时间、失效时间等等。
调度计划会在 开始时间的时间节点到达时 开始执行。还能指定是否重复执行,每次重复执行的时间,重复执行的次数等等。
5.【系统服务云】,【系统管理】,【调度任务】可以查看调度作业的执行情况。
6.查看调度作业异常日志:开发平台,查找【异常作业记录】页面,标识是sch_errorjob
使用步骤详情
1.编写调度任务
如下,我编写了一个简单打印日志的调度任务
继承AbstractTask,重写execute方法
package kd.bos.api.task; import kd.bos.context.RequestContext; import kd.bos.exception.KDException; import kd.bos.schedule.executor.AbstractTask; import kd.bos.logging.Log; import kd.bos.logging.LogFactory; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Map; public class KDFLogTask extends AbstractTask { @Override public void execute(RequestContext requestContext, Map<String, Object> map) throws KDException { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式 System.out.println("打印日志测试:" + df.format(new Date()));// new Date()为获取当前系统时间 Log log = LogFactory.getLog(KDFLogTask.class); log.info("打印日志测试:" + df.format(new Date())); } }
1.1 配置MQ参数
如果zookeeper有多台cosmic构成集群,并且当前执行是用DebugServer的开发模式
本地增加MQ的接收信息,需要指定当前cosmic执行调度任务
如果没有加这个参数配置,由于插件的代码还在本地,没有打进平台的jar包,MQ信息可能被其他cosmic机器消费,其他的cosmic机器会执行这条调度作业,这样就会引发ClassNotFound的异常。
System.setProperty("mq.debug.queue.tag", "wrxtest");
2. 调度任务类
【开发服务云】进入【开发平台】,搜索【调度任务类】页面,列表新增,把写好的类注册进去。
3. 【系统服务云】进入【系统管理】,新增【调度作业】
调度作业选择之前创建好的调度任务
4.创建调度计划
注意:
1.配置完成之后点击保存,然后,在到达开始时间节点时,自动开始执行调度作业
2.如果点击手工执行,会立即执行一次调度计划
5.查看调度任务
6.查看异常作业信息
如果作业状态是失败,可以在开发平台查看【异常作业记录】页面,标识是sch_errorjob
总结:调度使用流程图
苍穹升级版本之后的调度
苍穹版本4.0.007.0之后,调度的界面也有一些改变:
调度计划和调度作业不变。
运行日志就是前面文章说到的【调度任务】。
异常日志就是前面文章说到的【异常作业信息】。
点击【调度任务类名】,现在直接就可以在这里注册 调度任务类,不再需要进入【开发平台】里面注册。
而且还能查询调度任务类名的列表。
推荐阅读