public class ConsoleAppender
extends org.apache.log4j.WriterAppender
System.out or
System.err using a layout specified by the user. The
default target is System.out.
Modification was done in JBoss fork to use the real stdout/stderr
via FileDescriptor.out/FileDescriptor.err instead of
System.out/System.err, because in some cases, the standard
stream may be reassigned.
| Modifier and Type | Class and Description |
|---|---|
private static class |
ConsoleAppender.SystemErrStream
An implementation of OutputStream that redirects to the
current System.err.
|
private static class |
ConsoleAppender.SystemOutStream
An implementation of OutputStream that redirects to the
current System.out.
|
| Modifier and Type | Field and Description |
|---|---|
private boolean |
follow
Determines if the appender honors reassignments of System.out
or System.err made after configuration.
|
static java.lang.String |
SYSTEM_ERR |
static java.lang.String |
SYSTEM_OUT |
protected java.lang.String |
target |
| Constructor and Description |
|---|
ConsoleAppender()
Constructs an unconfigured appender.
|
ConsoleAppender(org.apache.log4j.Layout layout)
Creates a configured appender.
|
ConsoleAppender(org.apache.log4j.Layout layout,
java.lang.String target)
Creates a configured appender.
|
| Modifier and Type | Method and Description |
|---|---|
void |
activateOptions()
Prepares the appender for use.
|
protected void |
closeWriter() |
private static java.io.PrintStream |
createPrintStream(java.io.FileDescriptor fd) |
boolean |
getFollow()
Gets whether the appender honors reassignments of System.out
or System.err made after configuration.
|
java.lang.String |
getTarget()
Returns the current value of the Target property.
|
void |
setFollow(boolean newValue)
Sets whether the appender honors reassignments of System.out
or System.err made after configuration.
|
void |
setTarget(java.lang.String value)
Sets the value of the Target option.
|
(package private) void |
targetWarn(java.lang.String val) |
append, checkEntryConditions, close, createWriter, getEncoding, getImmediateFlush, requiresLayout, reset, setEncoding, setErrorHandler, setImmediateFlush, setWriter, shouldFlush, subAppend, writeFooter, writeHeaderpublic static final java.lang.String SYSTEM_OUT
public static final java.lang.String SYSTEM_ERR
protected java.lang.String target
private boolean follow
public ConsoleAppender()
public ConsoleAppender(org.apache.log4j.Layout layout)
layout - layout, may not be null.public ConsoleAppender(org.apache.log4j.Layout layout,
java.lang.String target)
layout - layout, may not be null.target - target, either "System.err" or "System.out".public void setTarget(java.lang.String value)
public java.lang.String getTarget()
setTarget(java.lang.String).public final void setFollow(boolean newValue)
Note: The follow value is not used and streams will always be closed and recreated if necessary.
newValue - if true, appender will use value of System.out or
System.err in force at the time when logging events are appended.public final boolean getFollow()
Note: The follow value is not used and streams will always be closed and recreated if necessary.
void targetWarn(java.lang.String val)
public void activateOptions()
activateOptions in interface org.apache.log4j.spi.OptionHandleractivateOptions in class org.apache.log4j.WriterAppenderprotected final void closeWriter()
closeWriter in class org.apache.log4j.WriterAppenderprivate static java.io.PrintStream createPrintStream(java.io.FileDescriptor fd)