refactor(scheduler):重命名配置类并更新包路径

- 将 XxlJobAdminConfig 重命名为 XxlJobAdminBootstrap
- 更新包路径从 conf 到 config
- 替换所有引用点以使用新的类名和包结构
- 确保调度器及相关组件正确初始化配置实例- 验证邮件报警、任务完成处理等模块的兼容性
pull/72/head
xuxueli 2 months ago
parent f07fff7b17
commit ffb93e2a61

@ -1,6 +1,6 @@
package com.xxl.job.admin.controller.openapi; package com.xxl.job.admin.controller.openapi;
import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap;
import com.xxl.job.core.biz.AdminBiz; import com.xxl.job.core.biz.AdminBiz;
import com.xxl.job.core.biz.model.HandleCallbackParam; import com.xxl.job.core.biz.model.HandleCallbackParam;
import com.xxl.job.core.biz.model.RegistryParam; import com.xxl.job.core.biz.model.RegistryParam;
@ -48,8 +48,8 @@ public class JobApiController {
if (StringTool.isBlank(uri)) { if (StringTool.isBlank(uri)) {
return ReturnT.ofFail("invalid request, uri-mapping empty."); return ReturnT.ofFail("invalid request, uri-mapping empty.");
} }
if (StringTool.isNotBlank(XxlJobAdminConfig.getAdminConfig().getAccessToken()) if (StringTool.isNotBlank(XxlJobAdminBootstrap.getAdminConfig().getAccessToken())
&& !XxlJobAdminConfig.getAdminConfig().getAccessToken().equals(request.getHeader(XxlJobRemotingUtil.XXL_JOB_ACCESS_TOKEN))) { && !XxlJobAdminBootstrap.getAdminConfig().getAccessToken().equals(request.getHeader(XxlJobRemotingUtil.XXL_JOB_ACCESS_TOKEN))) {
return ReturnT.ofFail("The access token is wrong."); return ReturnT.ofFail("The access token is wrong.");
} }

@ -1,7 +1,7 @@
package com.xxl.job.admin.scheduler.alarm.impl; package com.xxl.job.admin.scheduler.alarm.impl;
import com.xxl.job.admin.scheduler.alarm.JobAlarm; import com.xxl.job.admin.scheduler.alarm.JobAlarm;
import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap;
import com.xxl.job.admin.model.XxlJobGroup; import com.xxl.job.admin.model.XxlJobGroup;
import com.xxl.job.admin.model.XxlJobInfo; import com.xxl.job.admin.model.XxlJobInfo;
import com.xxl.job.admin.model.XxlJobLog; import com.xxl.job.admin.model.XxlJobLog;
@ -49,7 +49,7 @@ public class EmailJobAlarm implements JobAlarm {
} }
// email info // email info
XxlJobGroup group = XxlJobAdminConfig.getAdminConfig().getXxlJobGroupMapper().load(Integer.valueOf(info.getJobGroup())); XxlJobGroup group = XxlJobAdminBootstrap.getAdminConfig().getXxlJobGroupMapper().load(Integer.valueOf(info.getJobGroup()));
String personal = I18nUtil.getString("admin_name_full"); String personal = I18nUtil.getString("admin_name_full");
String title = I18nUtil.getString("jobconf_monitor"); String title = I18nUtil.getString("jobconf_monitor");
String content = MessageFormat.format(loadEmailJobAlarmTemplate(), String content = MessageFormat.format(loadEmailJobAlarmTemplate(),
@ -63,15 +63,15 @@ public class EmailJobAlarm implements JobAlarm {
// make mail // make mail
try { try {
MimeMessage mimeMessage = XxlJobAdminConfig.getAdminConfig().getMailSender().createMimeMessage(); MimeMessage mimeMessage = XxlJobAdminBootstrap.getAdminConfig().getMailSender().createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true); MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true);
helper.setFrom(XxlJobAdminConfig.getAdminConfig().getEmailFrom(), personal); helper.setFrom(XxlJobAdminBootstrap.getAdminConfig().getEmailFrom(), personal);
helper.setTo(email); helper.setTo(email);
helper.setSubject(title); helper.setSubject(title);
helper.setText(content, true); helper.setText(content, true);
XxlJobAdminConfig.getAdminConfig().getMailSender().send(mimeMessage); XxlJobAdminBootstrap.getAdminConfig().getMailSender().send(mimeMessage);
} catch (Exception e) { } catch (Exception e) {
logger.error(">>>>>>>>>>> xxl-job, job fail alarm email send error, JobLogId:{}", jobLog.getId(), e); logger.error(">>>>>>>>>>> xxl-job, job fail alarm email send error, JobLogId:{}", jobLog.getId(), e);

@ -1,6 +1,6 @@
package com.xxl.job.admin.scheduler.complete; package com.xxl.job.admin.scheduler.complete;
import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap;
import com.xxl.job.admin.model.XxlJobInfo; import com.xxl.job.admin.model.XxlJobInfo;
import com.xxl.job.admin.model.XxlJobLog; import com.xxl.job.admin.model.XxlJobLog;
import com.xxl.job.admin.scheduler.thread.JobTriggerPoolHelper; import com.xxl.job.admin.scheduler.thread.JobTriggerPoolHelper;
@ -36,7 +36,7 @@ public class XxlJobCompleter {
} }
// fresh handle // fresh handle
return XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().updateHandleInfo(xxlJobLog); return XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().updateHandleInfo(xxlJobLog);
} }
@ -48,7 +48,7 @@ public class XxlJobCompleter {
// 1、handle success, to trigger child job // 1、handle success, to trigger child job
String triggerChildMsg = null; String triggerChildMsg = null;
if (XxlJobContext.HANDLE_CODE_SUCCESS == xxlJobLog.getHandleCode()) { if (XxlJobContext.HANDLE_CODE_SUCCESS == xxlJobLog.getHandleCode()) {
XxlJobInfo xxlJobInfo = XxlJobAdminConfig.getAdminConfig().getXxlJobInfoMapper().loadById(xxlJobLog.getJobId()); XxlJobInfo xxlJobInfo = XxlJobAdminBootstrap.getAdminConfig().getXxlJobInfoMapper().loadById(xxlJobLog.getJobId());
if (xxlJobInfo!=null && xxlJobInfo.getChildJobId()!=null && xxlJobInfo.getChildJobId().trim().length()>0) { if (xxlJobInfo!=null && xxlJobInfo.getChildJobId()!=null && xxlJobInfo.getChildJobId().trim().length()>0) {
triggerChildMsg = "<br><br><span style=\"color:#00c0ef;\" > >>>>>>>>>>>"+ I18nUtil.getString("jobconf_trigger_child_run") +"<<<<<<<<<<< </span><br>"; triggerChildMsg = "<br><br><span style=\"color:#00c0ef;\" > >>>>>>>>>>>"+ I18nUtil.getString("jobconf_trigger_child_run") +"<<<<<<<<<<< </span><br>";

@ -1,4 +1,4 @@
package com.xxl.job.admin.scheduler.conf; package com.xxl.job.admin.scheduler.config;
import com.xxl.job.admin.scheduler.alarm.JobAlarmer; import com.xxl.job.admin.scheduler.alarm.JobAlarmer;
import com.xxl.job.admin.scheduler.scheduler.XxlJobScheduler; import com.xxl.job.admin.scheduler.scheduler.XxlJobScheduler;
@ -20,10 +20,10 @@ import java.util.Arrays;
*/ */
@Component @Component
public class XxlJobAdminConfig implements InitializingBean, DisposableBean { public class XxlJobAdminBootstrap implements InitializingBean, DisposableBean {
private static XxlJobAdminConfig adminConfig = null; private static XxlJobAdminBootstrap adminConfig = null;
public static XxlJobAdminConfig getAdminConfig() { public static XxlJobAdminBootstrap getAdminConfig() {
return adminConfig; return adminConfig;
} }

@ -1,6 +1,6 @@
package com.xxl.job.admin.scheduler.scheduler; package com.xxl.job.admin.scheduler.scheduler;
import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap;
import com.xxl.job.admin.scheduler.thread.*; import com.xxl.job.admin.scheduler.thread.*;
import com.xxl.job.admin.util.I18nUtil; import com.xxl.job.admin.util.I18nUtil;
import com.xxl.job.core.biz.ExecutorBiz; import com.xxl.job.core.biz.ExecutorBiz;
@ -93,8 +93,8 @@ public class XxlJobScheduler {
// set-cache // set-cache
executorBiz = new ExecutorBizClient(address, executorBiz = new ExecutorBizClient(address,
XxlJobAdminConfig.getAdminConfig().getAccessToken(), XxlJobAdminBootstrap.getAdminConfig().getAccessToken(),
XxlJobAdminConfig.getAdminConfig().getTimeout()); XxlJobAdminBootstrap.getAdminConfig().getTimeout());
executorBizRepository.put(address, executorBiz); executorBizRepository.put(address, executorBiz);
return executorBiz; return executorBiz;

@ -1,7 +1,7 @@
package com.xxl.job.admin.scheduler.thread; package com.xxl.job.admin.scheduler.thread;
import com.xxl.job.admin.scheduler.complete.XxlJobCompleter; import com.xxl.job.admin.scheduler.complete.XxlJobCompleter;
import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap;
import com.xxl.job.admin.model.XxlJobLog; import com.xxl.job.admin.model.XxlJobLog;
import com.xxl.job.admin.util.I18nUtil; import com.xxl.job.admin.util.I18nUtil;
import com.xxl.job.core.biz.model.HandleCallbackParam; import com.xxl.job.core.biz.model.HandleCallbackParam;
@ -76,7 +76,7 @@ public class JobCompleteHelper {
try { try {
// 任务结果丢失处理:调度记录停留在 "运行中" 状态超过10min且对应执行器心跳注册失败不在线则将本地调度主动标记失败 // 任务结果丢失处理:调度记录停留在 "运行中" 状态超过10min且对应执行器心跳注册失败不在线则将本地调度主动标记失败
Date losedTime = DateUtil.addMinutes(new Date(), -10); Date losedTime = DateUtil.addMinutes(new Date(), -10);
List<Long> losedJobIds = XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().findLostJobIds(losedTime); List<Long> losedJobIds = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().findLostJobIds(losedTime);
if (losedJobIds!=null && losedJobIds.size()>0) { if (losedJobIds!=null && losedJobIds.size()>0) {
for (Long logId: losedJobIds) { for (Long logId: losedJobIds) {
@ -153,7 +153,7 @@ public class JobCompleteHelper {
private ReturnT<String> callback(HandleCallbackParam handleCallbackParam) { private ReturnT<String> callback(HandleCallbackParam handleCallbackParam) {
// valid log item // valid log item
XxlJobLog log = XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().load(handleCallbackParam.getLogId()); XxlJobLog log = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().load(handleCallbackParam.getLogId());
if (log == null) { if (log == null) {
return ReturnT.ofFail( "log item not found."); return ReturnT.ofFail( "log item not found.");
} }

@ -1,6 +1,6 @@
package com.xxl.job.admin.scheduler.thread; package com.xxl.job.admin.scheduler.thread;
import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap;
import com.xxl.job.admin.model.XxlJobInfo; import com.xxl.job.admin.model.XxlJobInfo;
import com.xxl.job.admin.model.XxlJobLog; import com.xxl.job.admin.model.XxlJobLog;
import com.xxl.job.admin.scheduler.trigger.TriggerTypeEnum; import com.xxl.job.admin.scheduler.trigger.TriggerTypeEnum;
@ -38,36 +38,36 @@ public class JobFailMonitorHelper {
while (!toStop) { while (!toStop) {
try { try {
List<Long> failLogIds = XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().findFailJobLogIds(1000); List<Long> failLogIds = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().findFailJobLogIds(1000);
if (failLogIds!=null && !failLogIds.isEmpty()) { if (failLogIds!=null && !failLogIds.isEmpty()) {
for (long failLogId: failLogIds) { for (long failLogId: failLogIds) {
// lock log // lock log
int lockRet = XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().updateAlarmStatus(failLogId, 0, -1); int lockRet = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().updateAlarmStatus(failLogId, 0, -1);
if (lockRet < 1) { if (lockRet < 1) {
continue; continue;
} }
XxlJobLog log = XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().load(failLogId); XxlJobLog log = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().load(failLogId);
XxlJobInfo info = XxlJobAdminConfig.getAdminConfig().getXxlJobInfoMapper().loadById(log.getJobId()); XxlJobInfo info = XxlJobAdminBootstrap.getAdminConfig().getXxlJobInfoMapper().loadById(log.getJobId());
// 1、fail retry monitor // 1、fail retry monitor
if (log.getExecutorFailRetryCount() > 0) { if (log.getExecutorFailRetryCount() > 0) {
JobTriggerPoolHelper.trigger(log.getJobId(), TriggerTypeEnum.RETRY, (log.getExecutorFailRetryCount()-1), log.getExecutorShardingParam(), log.getExecutorParam(), null); JobTriggerPoolHelper.trigger(log.getJobId(), TriggerTypeEnum.RETRY, (log.getExecutorFailRetryCount()-1), log.getExecutorShardingParam(), log.getExecutorParam(), null);
String retryMsg = "<br><br><span style=\"color:#F39C12;\" > >>>>>>>>>>>"+ I18nUtil.getString("jobconf_trigger_type_retry") +"<<<<<<<<<<< </span><br>"; String retryMsg = "<br><br><span style=\"color:#F39C12;\" > >>>>>>>>>>>"+ I18nUtil.getString("jobconf_trigger_type_retry") +"<<<<<<<<<<< </span><br>";
log.setTriggerMsg(log.getTriggerMsg() + retryMsg); log.setTriggerMsg(log.getTriggerMsg() + retryMsg);
XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().updateTriggerInfo(log); XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().updateTriggerInfo(log);
} }
// 2、fail alarm monitor // 2、fail alarm monitor
int newAlarmStatus = 0; // 告警状态0-默认、-1=锁定状态、1-无需告警、2-告警成功、3-告警失败 int newAlarmStatus = 0; // 告警状态0-默认、-1=锁定状态、1-无需告警、2-告警成功、3-告警失败
if (info != null) { if (info != null) {
boolean alarmResult = XxlJobAdminConfig.getAdminConfig().getJobAlarmer().alarm(info, log); boolean alarmResult = XxlJobAdminBootstrap.getAdminConfig().getJobAlarmer().alarm(info, log);
newAlarmStatus = alarmResult?2:3; newAlarmStatus = alarmResult?2:3;
} else { } else {
newAlarmStatus = 1; newAlarmStatus = 1;
} }
XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().updateAlarmStatus(failLogId, -1, newAlarmStatus); XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().updateAlarmStatus(failLogId, -1, newAlarmStatus);
} }
} }

@ -1,6 +1,6 @@
package com.xxl.job.admin.scheduler.thread; package com.xxl.job.admin.scheduler.thread;
import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap;
import com.xxl.job.admin.model.XxlJobLogReport; import com.xxl.job.admin.model.XxlJobLogReport;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
@ -68,7 +68,7 @@ public class JobLogReportHelper {
xxlJobLogReport.setSucCount(0); xxlJobLogReport.setSucCount(0);
xxlJobLogReport.setFailCount(0); xxlJobLogReport.setFailCount(0);
Map<String, Object> triggerCountMap = XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().findLogReport(todayFrom, todayTo); Map<String, Object> triggerCountMap = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().findLogReport(todayFrom, todayTo);
if (triggerCountMap!=null && triggerCountMap.size()>0) { if (triggerCountMap!=null && triggerCountMap.size()>0) {
int triggerDayCount = triggerCountMap.containsKey("triggerDayCount")?Integer.valueOf(String.valueOf(triggerCountMap.get("triggerDayCount"))):0; int triggerDayCount = triggerCountMap.containsKey("triggerDayCount")?Integer.valueOf(String.valueOf(triggerCountMap.get("triggerDayCount"))):0;
int triggerDayCountRunning = triggerCountMap.containsKey("triggerDayCountRunning")?Integer.valueOf(String.valueOf(triggerCountMap.get("triggerDayCountRunning"))):0; int triggerDayCountRunning = triggerCountMap.containsKey("triggerDayCountRunning")?Integer.valueOf(String.valueOf(triggerCountMap.get("triggerDayCountRunning"))):0;
@ -81,9 +81,9 @@ public class JobLogReportHelper {
} }
// do refresh // do refresh
int ret = XxlJobAdminConfig.getAdminConfig().getXxlJobLogReportMapper().update(xxlJobLogReport); int ret = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogReportMapper().update(xxlJobLogReport);
if (ret < 1) { if (ret < 1) {
XxlJobAdminConfig.getAdminConfig().getXxlJobLogReportMapper().save(xxlJobLogReport); XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogReportMapper().save(xxlJobLogReport);
} }
} }
@ -94,12 +94,12 @@ public class JobLogReportHelper {
} }
// 2、log-clean: switch open & once each day // 2、log-clean: switch open & once each day
if (XxlJobAdminConfig.getAdminConfig().getLogretentiondays()>0 if (XxlJobAdminBootstrap.getAdminConfig().getLogretentiondays()>0
&& System.currentTimeMillis() - lastCleanLogTime > 24*60*60*1000) { && System.currentTimeMillis() - lastCleanLogTime > 24*60*60*1000) {
// expire-time // expire-time
Calendar expiredDay = Calendar.getInstance(); Calendar expiredDay = Calendar.getInstance();
expiredDay.add(Calendar.DAY_OF_MONTH, -1 * XxlJobAdminConfig.getAdminConfig().getLogretentiondays()); expiredDay.add(Calendar.DAY_OF_MONTH, -1 * XxlJobAdminBootstrap.getAdminConfig().getLogretentiondays());
expiredDay.set(Calendar.HOUR_OF_DAY, 0); expiredDay.set(Calendar.HOUR_OF_DAY, 0);
expiredDay.set(Calendar.MINUTE, 0); expiredDay.set(Calendar.MINUTE, 0);
expiredDay.set(Calendar.SECOND, 0); expiredDay.set(Calendar.SECOND, 0);
@ -109,9 +109,9 @@ public class JobLogReportHelper {
// clean expired log // clean expired log
List<Long> logIds = null; List<Long> logIds = null;
do { do {
logIds = XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().findClearLogIds(0, 0, clearBeforeTime, 0, 1000); logIds = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().findClearLogIds(0, 0, clearBeforeTime, 0, 1000);
if (logIds!=null && logIds.size()>0) { if (logIds!=null && logIds.size()>0) {
XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().clearLog(logIds); XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().clearLog(logIds);
} }
} while (logIds!=null && logIds.size()>0); } while (logIds!=null && logIds.size()>0);

@ -2,7 +2,7 @@ package com.xxl.job.admin.scheduler.thread;
import com.xxl.job.admin.model.XxlJobGroup; import com.xxl.job.admin.model.XxlJobGroup;
import com.xxl.job.admin.model.XxlJobRegistry; import com.xxl.job.admin.model.XxlJobRegistry;
import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap;
import com.xxl.job.core.biz.model.RegistryParam; import com.xxl.job.core.biz.model.RegistryParam;
import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.enums.RegistryConfig; import com.xxl.job.core.enums.RegistryConfig;
@ -59,18 +59,18 @@ public class JobRegistryHelper {
while (!toStop) { while (!toStop) {
try { try {
// auto registry group // auto registry group
List<XxlJobGroup> groupList = XxlJobAdminConfig.getAdminConfig().getXxlJobGroupMapper().findByAddressType(0); List<XxlJobGroup> groupList = XxlJobAdminBootstrap.getAdminConfig().getXxlJobGroupMapper().findByAddressType(0);
if (groupList!=null && !groupList.isEmpty()) { if (groupList!=null && !groupList.isEmpty()) {
// remove dead address (admin/executor) // remove dead address (admin/executor)
List<Integer> ids = XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryMapper().findDead(RegistryConfig.DEAD_TIMEOUT, new Date()); List<Integer> ids = XxlJobAdminBootstrap.getAdminConfig().getXxlJobRegistryMapper().findDead(RegistryConfig.DEAD_TIMEOUT, new Date());
if (ids!=null && ids.size()>0) { if (ids!=null && ids.size()>0) {
XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryMapper().removeDead(ids); XxlJobAdminBootstrap.getAdminConfig().getXxlJobRegistryMapper().removeDead(ids);
} }
// fresh online address (admin/executor) // fresh online address (admin/executor)
HashMap<String, List<String>> appAddressMap = new HashMap<String, List<String>>(); HashMap<String, List<String>> appAddressMap = new HashMap<String, List<String>>();
List<XxlJobRegistry> list = XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryMapper().findAll(RegistryConfig.DEAD_TIMEOUT, new Date()); List<XxlJobRegistry> list = XxlJobAdminBootstrap.getAdminConfig().getXxlJobRegistryMapper().findAll(RegistryConfig.DEAD_TIMEOUT, new Date());
if (list != null) { if (list != null) {
for (XxlJobRegistry item: list) { for (XxlJobRegistry item: list) {
if (RegistryConfig.RegistType.EXECUTOR.name().equals(item.getRegistryGroup())) { if (RegistryConfig.RegistType.EXECUTOR.name().equals(item.getRegistryGroup())) {
@ -104,7 +104,7 @@ public class JobRegistryHelper {
group.setAddressList(addressListStr); group.setAddressList(addressListStr);
group.setUpdateTime(new Date()); group.setUpdateTime(new Date());
XxlJobAdminConfig.getAdminConfig().getXxlJobGroupMapper().update(group); XxlJobAdminBootstrap.getAdminConfig().getXxlJobGroupMapper().update(group);
} }
} }
} catch (Throwable e) { } catch (Throwable e) {
@ -160,7 +160,7 @@ public class JobRegistryHelper {
@Override @Override
public void run() { public void run() {
// 0-fail; 1-save suc; 2-update suc; // 0-fail; 1-save suc; 2-update suc;
int ret = XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryMapper().registrySaveOrUpdate(registryParam.getRegistryGroup(), registryParam.getRegistryKey(), registryParam.getRegistryValue(), new Date()); int ret = XxlJobAdminBootstrap.getAdminConfig().getXxlJobRegistryMapper().registrySaveOrUpdate(registryParam.getRegistryGroup(), registryParam.getRegistryKey(), registryParam.getRegistryValue(), new Date());
if (ret == 1) { if (ret == 1) {
// fresh (add) // fresh (add)
freshGroupRegistryInfo(registryParam); freshGroupRegistryInfo(registryParam);
@ -191,7 +191,7 @@ public class JobRegistryHelper {
registryOrRemoveThreadPool.execute(new Runnable() { registryOrRemoveThreadPool.execute(new Runnable() {
@Override @Override
public void run() { public void run() {
int ret = XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryMapper().registryDelete(registryParam.getRegistryGroup(), registryParam.getRegistryKey(), registryParam.getRegistryValue()); int ret = XxlJobAdminBootstrap.getAdminConfig().getXxlJobRegistryMapper().registryDelete(registryParam.getRegistryGroup(), registryParam.getRegistryKey(), registryParam.getRegistryValue());
if (ret > 0) { if (ret > 0) {
// fresh (delete) // fresh (delete)
freshGroupRegistryInfo(registryParam); freshGroupRegistryInfo(registryParam);

@ -1,6 +1,6 @@
package com.xxl.job.admin.scheduler.thread; package com.xxl.job.admin.scheduler.thread;
import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap;
import com.xxl.job.admin.scheduler.cron.CronExpression; import com.xxl.job.admin.scheduler.cron.CronExpression;
import com.xxl.job.admin.model.XxlJobInfo; import com.xxl.job.admin.model.XxlJobInfo;
import com.xxl.job.admin.scheduler.scheduler.MisfireStrategyEnum; import com.xxl.job.admin.scheduler.scheduler.MisfireStrategyEnum;
@ -51,7 +51,7 @@ public class JobScheduleHelper {
logger.info(">>>>>>>>> init xxl-job admin scheduler success."); logger.info(">>>>>>>>> init xxl-job admin scheduler success.");
// pre-read count: treadpool-size * trigger-qps (each trigger cost 50ms, qps = 1000/50 = 20) // pre-read count: treadpool-size * trigger-qps (each trigger cost 50ms, qps = 1000/50 = 20)
int preReadCount = (XxlJobAdminConfig.getAdminConfig().getTriggerPoolFastMax() + XxlJobAdminConfig.getAdminConfig().getTriggerPoolSlowMax()) * 20; int preReadCount = (XxlJobAdminBootstrap.getAdminConfig().getTriggerPoolFastMax() + XxlJobAdminBootstrap.getAdminConfig().getTriggerPoolSlowMax()) * 20;
while (!scheduleThreadToStop) { while (!scheduleThreadToStop) {
@ -65,7 +65,7 @@ public class JobScheduleHelper {
boolean preReadSuc = true; boolean preReadSuc = true;
try { try {
conn = XxlJobAdminConfig.getAdminConfig().getDataSource().getConnection(); conn = XxlJobAdminBootstrap.getAdminConfig().getDataSource().getConnection();
connAutoCommit = conn.getAutoCommit(); connAutoCommit = conn.getAutoCommit();
conn.setAutoCommit(false); conn.setAutoCommit(false);
@ -76,7 +76,7 @@ public class JobScheduleHelper {
// 1、pre read // 1、pre read
long nowTime = System.currentTimeMillis(); long nowTime = System.currentTimeMillis();
List<XxlJobInfo> scheduleList = XxlJobAdminConfig.getAdminConfig().getXxlJobInfoMapper().scheduleJobQuery(nowTime + PRE_READ_MS, preReadCount); List<XxlJobInfo> scheduleList = XxlJobAdminBootstrap.getAdminConfig().getXxlJobInfoMapper().scheduleJobQuery(nowTime + PRE_READ_MS, preReadCount);
if (scheduleList!=null && scheduleList.size()>0) { if (scheduleList!=null && scheduleList.size()>0) {
// 2、push time-ring // 2、push time-ring
for (XxlJobInfo jobInfo: scheduleList) { for (XxlJobInfo jobInfo: scheduleList) {
@ -139,7 +139,7 @@ public class JobScheduleHelper {
// 3、update trigger info // 3、update trigger info
for (XxlJobInfo jobInfo: scheduleList) { for (XxlJobInfo jobInfo: scheduleList) {
XxlJobAdminConfig.getAdminConfig().getXxlJobInfoMapper().scheduleUpdate(jobInfo); XxlJobAdminBootstrap.getAdminConfig().getXxlJobInfoMapper().scheduleUpdate(jobInfo);
} }
} else { } else {

@ -1,6 +1,6 @@
package com.xxl.job.admin.scheduler.thread; package com.xxl.job.admin.scheduler.thread;
import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap;
import com.xxl.job.admin.scheduler.trigger.TriggerTypeEnum; import com.xxl.job.admin.scheduler.trigger.TriggerTypeEnum;
import com.xxl.job.admin.scheduler.trigger.XxlJobTrigger; import com.xxl.job.admin.scheduler.trigger.XxlJobTrigger;
import org.slf4j.Logger; import org.slf4j.Logger;
@ -27,7 +27,7 @@ public class JobTriggerPoolHelper {
public void start(){ public void start(){
fastTriggerPool = new ThreadPoolExecutor( fastTriggerPool = new ThreadPoolExecutor(
10, 10,
XxlJobAdminConfig.getAdminConfig().getTriggerPoolFastMax(), XxlJobAdminBootstrap.getAdminConfig().getTriggerPoolFastMax(),
60L, 60L,
TimeUnit.SECONDS, TimeUnit.SECONDS,
new LinkedBlockingQueue<Runnable>(2000), new LinkedBlockingQueue<Runnable>(2000),
@ -46,7 +46,7 @@ public class JobTriggerPoolHelper {
slowTriggerPool = new ThreadPoolExecutor( slowTriggerPool = new ThreadPoolExecutor(
10, 10,
XxlJobAdminConfig.getAdminConfig().getTriggerPoolSlowMax(), XxlJobAdminBootstrap.getAdminConfig().getTriggerPoolSlowMax(),
60L, 60L,
TimeUnit.SECONDS, TimeUnit.SECONDS,
new LinkedBlockingQueue<Runnable>(5000), new LinkedBlockingQueue<Runnable>(5000),

@ -1,6 +1,6 @@
package com.xxl.job.admin.scheduler.trigger; package com.xxl.job.admin.scheduler.trigger;
import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap;
import com.xxl.job.admin.model.XxlJobGroup; import com.xxl.job.admin.model.XxlJobGroup;
import com.xxl.job.admin.model.XxlJobInfo; import com.xxl.job.admin.model.XxlJobInfo;
import com.xxl.job.admin.model.XxlJobLog; import com.xxl.job.admin.model.XxlJobLog;
@ -49,7 +49,7 @@ public class XxlJobTrigger {
String addressList) { String addressList) {
// load data // load data
XxlJobInfo jobInfo = XxlJobAdminConfig.getAdminConfig().getXxlJobInfoMapper().loadById(jobId); XxlJobInfo jobInfo = XxlJobAdminBootstrap.getAdminConfig().getXxlJobInfoMapper().loadById(jobId);
if (jobInfo == null) { if (jobInfo == null) {
logger.warn(">>>>>>>>>>>> trigger fail, jobId invalidjobId={}", jobId); logger.warn(">>>>>>>>>>>> trigger fail, jobId invalidjobId={}", jobId);
return; return;
@ -58,7 +58,7 @@ public class XxlJobTrigger {
jobInfo.setExecutorParam(executorParam); jobInfo.setExecutorParam(executorParam);
} }
int finalFailRetryCount = failRetryCount>=0?failRetryCount:jobInfo.getExecutorFailRetryCount(); int finalFailRetryCount = failRetryCount>=0?failRetryCount:jobInfo.getExecutorFailRetryCount();
XxlJobGroup group = XxlJobAdminConfig.getAdminConfig().getXxlJobGroupMapper().load(jobInfo.getJobGroup()); XxlJobGroup group = XxlJobAdminBootstrap.getAdminConfig().getXxlJobGroupMapper().load(jobInfo.getJobGroup());
// cover addressList // cover addressList
if (addressList!=null && addressList.trim().length()>0) { if (addressList!=null && addressList.trim().length()>0) {
@ -120,7 +120,7 @@ public class XxlJobTrigger {
jobLog.setJobGroup(jobInfo.getJobGroup()); jobLog.setJobGroup(jobInfo.getJobGroup());
jobLog.setJobId(jobInfo.getId()); jobLog.setJobId(jobInfo.getId());
jobLog.setTriggerTime(new Date()); jobLog.setTriggerTime(new Date());
XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().save(jobLog); XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().save(jobLog);
logger.debug(">>>>>>>>>>> xxl-job trigger start, jobId:{}", jobLog.getId()); logger.debug(">>>>>>>>>>> xxl-job trigger start, jobId:{}", jobLog.getId());
// 2、init trigger-param // 2、init trigger-param
@ -193,7 +193,7 @@ public class XxlJobTrigger {
//jobLog.setTriggerTime(); //jobLog.setTriggerTime();
jobLog.setTriggerCode(triggerResult.getCode()); jobLog.setTriggerCode(triggerResult.getCode());
jobLog.setTriggerMsg(triggerMsgSb.toString()); jobLog.setTriggerMsg(triggerMsgSb.toString());
XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().updateTriggerInfo(jobLog); XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().updateTriggerInfo(jobLog);
logger.debug(">>>>>>>>>>> xxl-job trigger end, jobId:{}", jobLog.getId()); logger.debug(">>>>>>>>>>> xxl-job trigger end, jobId:{}", jobLog.getId());
} }

@ -1,6 +1,6 @@
package com.xxl.job.admin.util; package com.xxl.job.admin.util;
import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap;
import com.xxl.tool.gson.GsonTool; import com.xxl.tool.gson.GsonTool;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
@ -30,7 +30,7 @@ public class I18nUtil {
} }
try { try {
// build i18n prop // build i18n prop
String i18n = XxlJobAdminConfig.getAdminConfig().getI18n(); String i18n = XxlJobAdminBootstrap.getAdminConfig().getI18n();
String i18nFile = MessageFormat.format("i18n/message_{0}.properties", i18n); String i18nFile = MessageFormat.format("i18n/message_{0}.properties", i18n);
// load prop // load prop

Loading…
Cancel
Save