X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=runtime%2Forg.argeo.slc.support.simple%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Flog4j%2FSlcExecutionAppender.java;fp=runtime%2Forg.argeo.slc.support.simple%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Flog4j%2FSlcExecutionAppender.java;h=f8930fff8f9ae344d9c1f4014c9e18611c8eab33;hb=9b2422e7198df6f34282a805058dd5f497417318;hp=880aefef1f51b27e3a4a7100e6407629495bc018;hpb=94f8c90b4eb50398388b6ee2ebb4e19c8abdee01;p=gpl%2Fargeo-slc.git diff --git a/runtime/org.argeo.slc.support.simple/src/main/java/org/argeo/slc/log4j/SlcExecutionAppender.java b/runtime/org.argeo.slc.support.simple/src/main/java/org/argeo/slc/log4j/SlcExecutionAppender.java index 880aefef1..f8930fff8 100644 --- a/runtime/org.argeo.slc.support.simple/src/main/java/org/argeo/slc/log4j/SlcExecutionAppender.java +++ b/runtime/org.argeo.slc.support.simple/src/main/java/org/argeo/slc/log4j/SlcExecutionAppender.java @@ -19,20 +19,15 @@ package org.argeo.slc.log4j; import java.util.Date; import org.apache.log4j.AppenderSkeleton; -import org.apache.log4j.Layout; import org.apache.log4j.Level; import org.apache.log4j.Logger; -import org.apache.log4j.PatternLayout; import org.apache.log4j.spi.LoggingEvent; import org.argeo.slc.core.execution.ExecutionThread; import org.argeo.slc.core.execution.ProcessThreadGroup; import org.argeo.slc.execution.ExecutionStep; -import org.springframework.beans.factory.DisposableBean; -import org.springframework.beans.factory.InitializingBean; /** Not meant to be used directly in standard log4j config */ -public class SlcExecutionAppender extends AppenderSkeleton implements - InitializingBean, DisposableBean { +public class SlcExecutionAppender extends AppenderSkeleton { private Boolean disabled = false; @@ -49,15 +44,15 @@ public class SlcExecutionAppender extends AppenderSkeleton implements } }; - private Layout layout = null; - private String pattern = "%m - %c%n"; + // private Layout layout = null; + // private String pattern = "%m - %c%n"; private Boolean onlyExecutionThread = false; - public void afterPropertiesSet() { - if (layout != null) - setLayout(layout); - else - setLayout(new PatternLayout(pattern)); + public void init() { + // if (layout != null) + // setLayout(layout); + // else + // setLayout(new PatternLayout(pattern)); Logger.getRootLogger().addAppender(this); } @@ -87,6 +82,7 @@ public class SlcExecutionAppender extends AppenderSkeleton implements } } + // Check whether we are within an executing process Thread currentThread = Thread.currentThread(); if (currentThread.getThreadGroup() instanceof ProcessThreadGroup) { if (onlyExecutionThread @@ -108,13 +104,14 @@ public class SlcExecutionAppender extends AppenderSkeleton implements else type = ExecutionStep.INFO; - ExecutionStep step = new ExecutionStep(new Date( - event.getTimeStamp()), type, layout.format(event)); + ExecutionStep step = new ExecutionStep(event.getLoggerName(), + new Date(event.getTimeStamp()), type, event.getMessage() + .toString()); try { dispatching.set(true); ((ProcessThreadGroup) currentThread.getThreadGroup()) - .dispatchAddStep(step); + .getSteps().add(step); } finally { dispatching.set(false); } @@ -132,14 +129,19 @@ public class SlcExecutionAppender extends AppenderSkeleton implements return false; } - public void setLayout(Layout layout) { - this.layout = layout; - } + // public void setLayout(Layout layout) { + // this.layout = layout; + // } - public void setPattern(String pattern) { - this.pattern = pattern; + /** For development purpose, since using regular logging is not easy here */ + private static void stdOut(Object obj) { + System.out.println(obj); } + // public void setPattern(String pattern) { + // this.pattern = pattern; + // } + public void setOnlyExecutionThread(Boolean onlyExecutionThread) { this.onlyExecutionThread = onlyExecutionThread; }