ch.qos.logback.core
Class FileAppender<E>

java.lang.Object
  extended by ch.qos.logback.core.spi.ContextAwareBase
      extended by ch.qos.logback.core.AppenderBase<E>
          extended by ch.qos.logback.core.WriterAppender<E>
              extended by ch.qos.logback.core.FileAppender<E>
All Implemented Interfaces:
Appender<E>, ContextAware, FilterAttachable<E>, LifeCycle
Direct Known Subclasses:
RollingFileAppender

public class FileAppender<E>
extends WriterAppender<E>

FileAppender appends log events to a file. For more informatio about this appender, please refer to the online manual at http://logback.qos.ch/manual/appenders.html#FileAppender

Author:
Ceki Gülcü

Field Summary
protected  boolean append
          Append to or truncate the file? The default value for this variable is true, meaning that by default a FileAppender will append to an existing file and not truncate it.
protected  boolean bufferedIO
          Do we do bufferedIO?
protected  int bufferSize
          The size of the IO buffer.
protected  String fileName
          The name of the active log file.
 
Fields inherited from class ch.qos.logback.core.AppenderBase
name, started
 
Fields inherited from class ch.qos.logback.core.spi.ContextAwareBase
context
 
Constructor Summary
FileAppender()
          As in most cases, the default constructor does nothing.
 
Method Summary
 boolean getAppend()
          Deprecated. Use isAppend instead
 int getBufferSize()
           
 String getFile()
          Returns the value of the File property.
 boolean isAppend()
          Returns the value of the Append property.
 boolean isBufferedIO()
           
 boolean isPrudent()
           
 void openFile(String file_name)
           Sets and opens the file where the log output will go.
 String rawFileProperty()
          This method is used by derived classes to obtain the raw file property.
 void setAppend(boolean append)
           
 void setBufferedIO(boolean bufferedIO)
           
 void setBufferSize(int bufferSize)
           
 void setFile(String file)
          The File property takes a string value which should be the name of the file to append to.
 void setPrudent(boolean prudent)
          When prudent is set to true, file appenders from multiple JVMs can safely write to the same file.
 void start()
          If the value of File is not null, then openFile(java.lang.String) is called with the values of File and Append properties.
protected  void writerWrite(String s, boolean flush)
           
 
Methods inherited from class ch.qos.logback.core.WriterAppender
append, closeWriter, createWriter, getEncoding, getImmediateFlush, getLayout, setEncoding, setImmediateFlush, setLayout, setWriter, stop, subAppend
 
Methods inherited from class ch.qos.logback.core.AppenderBase
addFilter, clearAllFilters, doAppend, getFilterChainDecision, getFirstFilter, getName, isStarted, setName, toString
 
Methods inherited from class ch.qos.logback.core.spi.ContextAwareBase
addError, addError, addInfo, addInfo, addStatus, addWarn, addWarn, getContext, getStatusManager, setContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface ch.qos.logback.core.spi.ContextAware
addError, addError, addInfo, addInfo, addStatus, addWarn, addWarn, getContext, setContext
 

Field Detail

append

protected boolean append
Append to or truncate the file? The default value for this variable is true, meaning that by default a FileAppender will append to an existing file and not truncate it.


fileName

protected String fileName
The name of the active log file.


bufferedIO

protected boolean bufferedIO
Do we do bufferedIO?


bufferSize

protected int bufferSize
The size of the IO buffer. Default is 8K.

Constructor Detail

FileAppender

public FileAppender()
As in most cases, the default constructor does nothing.

Method Detail

setFile

public void setFile(String file)
The File property takes a string value which should be the name of the file to append to.


getAppend

public boolean getAppend()
Deprecated. Use isAppend instead


isAppend

public boolean isAppend()
Returns the value of the Append property.


rawFileProperty

public final String rawFileProperty()
This method is used by derived classes to obtain the raw file property. Regular users should not be using calling method.

Returns:
the value of the file property

getFile

public String getFile()
Returns the value of the File property.

This method may be overridden by derived classes.


start

public void start()
If the value of File is not null, then openFile(java.lang.String) is called with the values of File and Append properties.

Specified by:
start in interface LifeCycle
Overrides:
start in class WriterAppender<E>

openFile

public void openFile(String file_name)
              throws IOException

Sets and opens the file where the log output will go. The specified file must be writable.

If there was already an opened file, then the previous file is closed first.

Do not use this method directly. To configure a FileAppender or one of its subclasses, set its properties one by one and then call start().

Parameters:
filename - The path to the log file.
append - If true will append to fileName. Otherwise will truncate fileName.
bufferedIO -
bufferSize -
Throws:
IOException

isBufferedIO

public boolean isBufferedIO()

setBufferedIO

public void setBufferedIO(boolean bufferedIO)

getBufferSize

public int getBufferSize()

setBufferSize

public void setBufferSize(int bufferSize)

isPrudent

public boolean isPrudent()
Returns:
true if in prudent mode
See Also:
setPrudent(boolean)

setPrudent

public void setPrudent(boolean prudent)
When prudent is set to true, file appenders from multiple JVMs can safely write to the same file.

Parameters:
prudent -

setAppend

public void setAppend(boolean append)

writerWrite

protected void writerWrite(String s,
                           boolean flush)
                    throws IOException
Overrides:
writerWrite in class WriterAppender<E>
Throws:
IOException


Copyright © 2005-2011 QOS.ch. All Rights Reserved.