Class FileAppender

    • Field Detail

      • fileAppend

        protected boolean fileAppend
        Controls file truncatation. The default value for this variable is true, meaning that by default a FileAppender will append to an existing file and not truncate it.

        This option is meaningful only if the FileAppender opens the file.

      • fileName

        protected java.lang.String fileName
        The name of the log file.
      • bufferedIO

        protected boolean bufferedIO
        Do we do bufferedIO?
      • bufferSize

        protected int bufferSize
        Determines the size of IO buffer be. Default is 8K.
    • Constructor Detail

      • FileAppender

        public FileAppender()
        The default constructor does not do anything.
      • FileAppender

        public FileAppender​(Layout layout,
                            java.lang.String filename)
                     throws java.io.IOException
        Constructs a FileAppender and open the file designated by filename. The opened filename will become the output destination for this appender.

        The file will be appended to.

        Throws:
        java.io.IOException
      • FileAppender

        public FileAppender​(Layout layout,
                            java.lang.String filename,
                            boolean append)
                     throws java.io.IOException
        Constructs a FileAppender and open the file designated by filename. The opened filename will become the output destination for this appender.

        If the append parameter is true, the file will be appended to. Otherwise, the file designated by filename will be truncated before being opened.

        Throws:
        java.io.IOException
      • FileAppender

        public FileAppender​(Layout layout,
                            java.lang.String filename,
                            boolean append,
                            boolean bufferedIO,
                            int bufferSize)
                     throws java.io.IOException
        Constructs a FileAppender and open the file designated by filename. The opened filename will become the output destination for this appender.

        If the append parameter is true, the file will be appended to. Otherwise, the file designated by filename will be truncated before being opened.

        If the bufferedIO parameter is true, then buffered IO will be used to write to the output file.

        Throws:
        java.io.IOException
    • Method Detail

      • closeFile

        protected void closeFile()
        Closes the previously opened file.
      • getAppend

        public boolean getAppend()
        Returns the value of the Append option.
      • getBufferedIO

        public boolean getBufferedIO()
        Get the value of the BufferedIO option.

        BufferedIO will significatnly increase performance on heavily loaded systems.

      • getBufferSize

        public int getBufferSize()
        Get the size of the IO buffer.
      • getFile

        public java.lang.String getFile()
        Returns the value of the File option.
      • reset

        protected void reset()
        Close any previously opened file and call the parent's reset.
        Overrides:
        reset in class WriterAppender
      • setAppend

        public void setAppend​(boolean flag)
        The Append option takes a boolean value. It is set to true by default. If true, then File will be opened in append mode by setFile (see above). Otherwise, setFile will open File in truncate mode.

        Note: Actual opening of the file is made when activateOptions() is called, not when the options are set.

      • setBufferedIO

        public void setBufferedIO​(boolean bufferedIO)
        The BufferedIO option takes a boolean value. It is set to false by default. If true, then File will be opened and the resulting Writer wrapped around a BufferedWriter. BufferedIO will significatnly increase performance on heavily loaded systems.
      • setBufferSize

        public void setBufferSize​(int bufferSize)
        Set the size of the IO buffer.
      • setFile

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

        Note that the special values "System.out" or "System.err" are no longer honored.

        Note: Actual opening of the file is made when activateOptions() is called, not when the options are set.

      • setFile

        public void setFile​(java.lang.String fileName,
                            boolean append,
                            boolean bufferedIO,
                            int bufferSize)
                     throws java.io.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 activateOptions.

        Parameters:
        fileName - The path to the log file.
        append - If true will append to fileName. Otherwise will truncate fileName.
        Throws:
        java.io.IOException
      • setQWForFiles

        protected void setQWForFiles​(java.io.Writer writer)
        Sets the quiet writer being used. This method is overriden by RollingFileAppender.