fix: 定时任务新增指定调度IP
This commit is contained in:
@@ -35,17 +35,20 @@ public class JobRunner implements ApplicationRunner {
|
||||
//本机IP
|
||||
String localIp = NetUtil.getLocalhostStr();
|
||||
System.out.println("本机ip:"+localIp);
|
||||
//选择需要开启定时任务的服务器ip
|
||||
String quartzIp = SpringContextHolder.getBean(SysParamServiceImpl.class).findByCode("QUARTZ_IP").getValue();
|
||||
if (!localIp.equals(quartzIp)) {
|
||||
log.info("--------------------定时任务未开启,请检查配置!---------------------");
|
||||
System.out.println("--------------------定时任务未开启,请检查配置!---------------------");
|
||||
return;
|
||||
}
|
||||
|
||||
log.info("--------------------注入定时任务---------------------");
|
||||
List<SysQuartzJob> quartzJobs = quartzJobService.findByIsPauseIsFalse();
|
||||
quartzJobs.forEach(quartzManage::addJob);
|
||||
quartzJobs.forEach(job -> {
|
||||
if (localIp.equals(job.getJob_ip())) {
|
||||
log.info("定时任务:{}, 执行ip: {}, 定时任务开启", job.getJob_name(), localIp);
|
||||
System.out.println("定时任务: " + job.getJob_name() + ", 执行ip: " + localIp + ", 定时任务开启");
|
||||
quartzManage.addJob(job);
|
||||
} else {
|
||||
log.info("定时任务 {} 未开启, 本机ip{} 与 调度ip{} 不同", job.getJob_name(), localIp, job.getJob_ip());
|
||||
System.out.println("定时任务 " + job.getJob_name() + " 未开启, 本机ip: " + localIp + " 与 调度ip: " + job.getJob_ip() + " 不同");
|
||||
}
|
||||
});
|
||||
|
||||
log.info("--------------------定时任务注入完成---------------------");
|
||||
}
|
||||
|
||||
|
||||
@@ -124,4 +124,9 @@ public class SysQuartzJob implements Serializable {
|
||||
|
||||
@TableField(exist = false)
|
||||
private String uuid;
|
||||
|
||||
/**
|
||||
* 调度IP
|
||||
*/
|
||||
private String job_ip;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user