| | |
| | | package com.xxl.job.admin.controller; |
| | | |
| | | import com.xxl.job.admin.core.complete.XxlJobCompleter; |
| | | import com.xxl.job.admin.core.exception.XxlJobException; |
| | | import com.xxl.job.admin.core.complete.XxlJobCompleter; |
| | | import com.xxl.job.admin.core.model.XxlJobGroup; |
| | | import com.xxl.job.admin.core.model.XxlJobInfo; |
| | | import com.xxl.job.admin.core.model.XxlJobLog; |
| | |
| | | throw new XxlJobException(I18nUtil.getString("jobgroup_empty")); |
| | | } |
| | | |
| | | model.addAttribute("JobGroupList" , jobGroupList); |
| | | model.addAttribute("JobGroupList", jobGroupList); |
| | | |
| | | // 任务 |
| | | if (jobId > 0) { |
| | |
| | | throw new RuntimeException(I18nUtil.getString("jobinfo_field_id") + I18nUtil.getString("system_unvalid")); |
| | | } |
| | | |
| | | model.addAttribute("jobInfo" , jobInfo); |
| | | model.addAttribute("jobInfo", jobInfo); |
| | | |
| | | // valid permission |
| | | JobInfoController.validPermission(request, jobInfo.getJobGroup()); |
| | |
| | | |
| | | // package result |
| | | Map<String, Object> maps = new HashMap<String, Object>(); |
| | | maps.put("recordsTotal" , list_count); // 总记录数 |
| | | maps.put("recordsFiltered" , list_count); // 过滤后的总记录数 |
| | | maps.put("data" , list); // 分页列表 |
| | | maps.put("recordsTotal", list_count); // 总记录数 |
| | | maps.put("recordsFiltered", list_count); // 过滤后的总记录数 |
| | | maps.put("data", list); // 分页列表 |
| | | return maps; |
| | | } |
| | | |
| | |
| | | throw new RuntimeException(I18nUtil.getString("joblog_logid_unvalid")); |
| | | } |
| | | |
| | | model.addAttribute("triggerCode" , jobLog.getTriggerCode()); |
| | | model.addAttribute("handleCode" , jobLog.getHandleCode()); |
| | | model.addAttribute("executorAddress" , jobLog.getExecutorAddress()); |
| | | model.addAttribute("triggerTime" , jobLog.getTriggerTime().getTime()); |
| | | model.addAttribute("logId" , jobLog.getId()); |
| | | model.addAttribute("triggerCode", jobLog.getTriggerCode()); |
| | | model.addAttribute("handleCode", jobLog.getHandleCode()); |
| | | model.addAttribute("logId", jobLog.getId()); |
| | | return "joblog/joblog.detail"; |
| | | } |
| | | |
| | | @RequestMapping("/logDetailCat") |
| | | @ResponseBody |
| | | public ReturnT<LogResult> logDetailCat(String executorAddress, long triggerTime, long logId, int fromLineNum) { |
| | | public ReturnT<LogResult> logDetailCat(long logId, int fromLineNum) { |
| | | try { |
| | | ExecutorBiz executorBiz = XxlJobScheduler.getExecutorBiz(executorAddress); |
| | | ReturnT<LogResult> logResult = executorBiz.log(new LogParam(triggerTime, logId, fromLineNum)); |
| | | // valid |
| | | XxlJobLog jobLog = xxlJobLogDao.load(logId); // todo, need to improve performance |
| | | if (jobLog == null) { |
| | | return new ReturnT<LogResult>(ReturnT.FAIL_CODE, I18nUtil.getString("joblog_logid_unvalid")); |
| | | } |
| | | |
| | | // log cat |
| | | ExecutorBiz executorBiz = XxlJobScheduler.getExecutorBiz(jobLog.getExecutorAddress()); |
| | | ReturnT<LogResult> logResult = executorBiz.log(new LogParam(jobLog.getTriggerTime().getTime(), logId, fromLineNum)); |
| | | |
| | | // is end |
| | | if (logResult.getContent() != null && logResult.getContent().getFromLineNum() > logResult.getContent().getToLineNum()) { |
| | | XxlJobLog jobLog = xxlJobLogDao.load(logId); |
| | | if (jobLog.getHandleCode() > 0) { |
| | | logResult.getContent().setEnd(true); |
| | | } |