任务日志取出slf4j依赖
This commit is contained in:
parent
7102a9f86d
commit
466b4e868a
|
@ -173,9 +173,7 @@
|
|||
<textarea class="glueSource_java" style="display:none;" >
|
||||
package com.xxl.job.service.handler;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import com.xxl.job.core.log.XxlJobLogger;
|
||||
import com.xxl.job.core.biz.model.ReturnT;
|
||||
import com.xxl.job.core.handler.IJobHandler;
|
||||
|
||||
|
@ -184,7 +182,7 @@ public class DemoGlueJobHandler extends IJobHandler {
|
|||
|
||||
@Override
|
||||
public ReturnT<String> execute(String... params) throws Exception {
|
||||
logger.info("XXL-JOB, Hello World.");
|
||||
XxlJobLogger.log("XXL-JOB, Hello World.");
|
||||
return ReturnT.SUCCESS;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,27 +1,12 @@
|
|||
package com.xxl.job.core.handler;
|
||||
|
||||
import com.xxl.job.core.biz.model.ReturnT;
|
||||
import com.xxl.job.core.log.XxlJobFileAppender;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
/**
|
||||
* remote job handler
|
||||
* @author xuxueli 2015-12-19 19:06:38
|
||||
*/
|
||||
public abstract class IJobHandler {
|
||||
private static Logger logger = LoggerFactory.getLogger(IJobHandler.class);
|
||||
|
||||
/**
|
||||
* append log
|
||||
*
|
||||
* @param appendLog
|
||||
*/
|
||||
public void log(String appendLog) {
|
||||
String logFileName = XxlJobFileAppender.contextHolder.get();
|
||||
XxlJobFileAppender.appendLog(logFileName, appendLog);
|
||||
logger.info("xxl-job log [{}]: {}", logFileName, appendLog);
|
||||
}
|
||||
|
||||
/**
|
||||
* job handler
|
||||
|
|
|
@ -2,15 +2,13 @@ package com.xxl.job.core.handler.impl;
|
|||
|
||||
import com.xxl.job.core.biz.model.ReturnT;
|
||||
import com.xxl.job.core.handler.IJobHandler;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import com.xxl.job.core.log.XxlJobLogger;
|
||||
|
||||
/**
|
||||
* glue job handler
|
||||
* @author xuxueli 2016-5-19 21:05:45
|
||||
*/
|
||||
public class GlueJobHandler extends IJobHandler {
|
||||
private static Logger logger = LoggerFactory.getLogger(GlueJobHandler.class);
|
||||
|
||||
private long glueUpdatetime;
|
||||
private IJobHandler jobHandler;
|
||||
|
@ -24,7 +22,7 @@ public class GlueJobHandler extends IJobHandler {
|
|||
|
||||
@Override
|
||||
public ReturnT<String> execute(String... params) throws Exception {
|
||||
logger.info("----------- glue.version:{} -----------", glueUpdatetime);
|
||||
XxlJobLogger.log("----------- glue.version:{} -----------" + glueUpdatetime);
|
||||
return jobHandler.execute(params);
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,43 @@
|
|||
package com.xxl.job.core.log;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* Created by xuxueli on 17/4/28.
|
||||
*/
|
||||
public class XxlJobLogger {
|
||||
private static Logger logger = LoggerFactory.getLogger("xxl-job logger");
|
||||
private static SimpleDateFormat xxlJobLoggerFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
|
||||
/**
|
||||
* append log
|
||||
*
|
||||
* @param appendLog
|
||||
*/
|
||||
public static void log(String appendLog) {
|
||||
|
||||
// "yyyy-MM-dd HH:mm:ss [ClassName]-[MethodName]-[LineNumber]-[ThreadName] log";
|
||||
StackTraceElement[] stackTraceElements = new Throwable().getStackTrace();
|
||||
StackTraceElement callInfo = stackTraceElements[1];
|
||||
|
||||
StringBuffer stringBuffer = new StringBuffer();
|
||||
stringBuffer.append(xxlJobLoggerFormat.format(new Date())).append(" ")
|
||||
.append("["+ callInfo.getClassName() +"]").append("-")
|
||||
.append("["+ callInfo.getMethodName() +"]").append("-")
|
||||
.append("["+ callInfo.getLineNumber() +"]").append("-")
|
||||
.append("["+ Thread.currentThread().getName() +"]").append(" ")
|
||||
.append(appendLog!=null?appendLog:"");
|
||||
String formatAppendLog = stringBuffer.toString();
|
||||
|
||||
// appendlog
|
||||
String logFileName = XxlJobFileAppender.contextHolder.get();
|
||||
XxlJobFileAppender.appendLog(logFileName, formatAppendLog);
|
||||
|
||||
logger.warn("[{}]: {}", logFileName, formatAppendLog);
|
||||
}
|
||||
|
||||
}
|
|
@ -5,6 +5,7 @@ import com.xxl.job.core.biz.model.ReturnT;
|
|||
import com.xxl.job.core.biz.model.TriggerParam;
|
||||
import com.xxl.job.core.handler.IJobHandler;
|
||||
import com.xxl.job.core.log.XxlJobFileAppender;
|
||||
import com.xxl.job.core.log.XxlJobLogger;
|
||||
import org.eclipse.jetty.util.ConcurrentHashSet;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
@ -80,7 +81,7 @@ public class JobThread extends Thread{
|
|||
String logFileName = XxlJobFileAppender.makeLogFileName(new Date(triggerParam.getLogDateTim()), triggerParam.getLogId());
|
||||
|
||||
XxlJobFileAppender.contextHolder.set(logFileName);
|
||||
logger.info("----------- xxl-job job execute start -----------");
|
||||
XxlJobLogger.log("----------- xxl-job job execute start -----------");
|
||||
|
||||
executeResult = handler.execute(handlerParams);
|
||||
if (executeResult == null) {
|
||||
|
@ -88,7 +89,7 @@ public class JobThread extends Thread{
|
|||
}
|
||||
} catch (Exception e) {
|
||||
if (toStop) {
|
||||
logger.error("<br>----------- xxl-job toStop, stopReason:{}", stopReason);
|
||||
XxlJobLogger.log("<br>----------- xxl-job toStop, stopReason:" + stopReason);
|
||||
}
|
||||
logger.error("JobThread Exception:", e);
|
||||
StringWriter out = new StringWriter();
|
||||
|
@ -96,8 +97,9 @@ public class JobThread extends Thread{
|
|||
|
||||
executeResult = new ReturnT<String>(ReturnT.FAIL_CODE, out.toString());
|
||||
}
|
||||
logger.info("----------- xxl-job job execute end ----------- <br> Look : ExecutorParams:{}, Code:{}, Msg:{}",
|
||||
new Object[]{handlerParams, executeResult.getCode(), executeResult.getMsg()});
|
||||
|
||||
XxlJobLogger.log("----------- xxl-job job execute end ----------- <br> " +
|
||||
"Look : ExecutorParams:"+ handlerParams +", Code:"+ executeResult.getCode() +", Msg:" + executeResult.getMsg());
|
||||
|
||||
// callback handler info
|
||||
if (!toStop) {
|
||||
|
@ -111,9 +113,16 @@ public class JobThread extends Thread{
|
|||
}
|
||||
} catch (Exception e) {
|
||||
if (toStop) {
|
||||
logger.error("<br>----------- xxl-job toStop, stopReason:{}", stopReason);
|
||||
XxlJobLogger.log("<br>----------- xxl-job toStop, stopReason:" + stopReason);
|
||||
}
|
||||
logger.error("----------- xxl-job JobThread Exception:", e);
|
||||
|
||||
StringWriter stringWriter = new StringWriter();
|
||||
PrintWriter printWriter = new PrintWriter(stringWriter, true);
|
||||
e.printStackTrace(printWriter);
|
||||
printWriter.flush();
|
||||
stringWriter.flush();
|
||||
String errorMsg = stringWriter.toString();
|
||||
XxlJobLogger.log("----------- xxl-job JobThread Exception:" + errorMsg);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -3,8 +3,7 @@ package com.xxl.job.executor.service.jobhandler;
|
|||
import com.xxl.job.core.biz.model.ReturnT;
|
||||
import com.xxl.job.core.handler.IJobHandler;
|
||||
import com.xxl.job.core.handler.annotation.JobHander;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import com.xxl.job.core.log.XxlJobLogger;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
@ -17,20 +16,20 @@ import java.util.concurrent.TimeUnit;
|
|||
* 1、继承 “IJobHandler” ;
|
||||
* 2、装配到Spring,例如加 “@Service” 注解;
|
||||
* 3、加 “@JobHander” 注解,注解value值为新增任务生成的JobKey的值;多个JobKey用逗号分割;
|
||||
* 4、执行日志:需要通过 "XxlJobLogger.log" 打印执行日志;
|
||||
*
|
||||
* @author xuxueli 2015-12-19 19:43:36
|
||||
*/
|
||||
@JobHander(value="demoJobHandler")
|
||||
@Service
|
||||
public class DemoJobHandler extends IJobHandler {
|
||||
private static transient Logger logger = LoggerFactory.getLogger(DemoJobHandler.class);
|
||||
|
||||
@Override
|
||||
public ReturnT<String> execute(String... params) throws Exception {
|
||||
super.log("XXL-JOB, Hello World.");
|
||||
XxlJobLogger.log("XXL-JOB, Hello World.");
|
||||
|
||||
for (int i = 0; i < 5; i++) {
|
||||
super.log("beat at:" + i);
|
||||
XxlJobLogger.log("beat at:" + i);
|
||||
TimeUnit.SECONDS.sleep(2);
|
||||
}
|
||||
return ReturnT.SUCCESS;
|
||||
|
|
Loading…
Reference in New Issue