Class AbstractNCSARequestLog

All Implemented Interfaces:
RequestLog, Container, Destroyable, Dumpable, Dumpable.DumpableContainer, LifeCycle
Direct Known Subclasses:
NCSARequestLog, Slf4jRequestLog

@Deprecated public class AbstractNCSARequestLog extends ContainerLifeCycle implements RequestLog
Base implementation of the RequestLog outputs logs in the pseudo-standard NCSA common log format. Configuration options allow a choice between the standard Common Log Format (as used in the 3 log format) and the Combined Log Format (single log format). This log format can be output by most web servers, and almost all web log analysis software can understand these formats.
  • Field Details

    • LOG

      protected static final Logger LOG
      Deprecated.
    • _buffers

      private static ThreadLocal<StringBuilder> _buffers
      Deprecated.
    • _requestLogWriter

      protected final RequestLog.Writer _requestLogWriter
      Deprecated.
    • _ignorePaths

      private String[] _ignorePaths
      Deprecated.
    • _extended

      private boolean _extended
      Deprecated.
    • _ignorePathMap

      private transient PathMappings<String> _ignorePathMap
      Deprecated.
    • _logLatency

      private boolean _logLatency
      Deprecated.
    • _logCookies

      private boolean _logCookies
      Deprecated.
    • _logServer

      private boolean _logServer
      Deprecated.
    • _preferProxiedForAddress

      private boolean _preferProxiedForAddress
      Deprecated.
    • _logDateCache

      private transient DateCache _logDateCache
      Deprecated.
    • _logDateFormat

      private String _logDateFormat
      Deprecated.
    • _logLocale

      private Locale _logLocale
      Deprecated.
    • _logTimeZone

      private String _logTimeZone
      Deprecated.
  • Constructor Details

    • AbstractNCSARequestLog

      public AbstractNCSARequestLog(RequestLog.Writer requestLogWriter)
      Deprecated.
  • Method Details

    • isEnabled

      protected boolean isEnabled()
      Deprecated.
      Is logging enabled
      Returns:
      true if logging is enabled
    • write

      public void write(String requestEntry) throws IOException
      Deprecated.
      Write requestEntry out. (to disk or slf4j log)
      Parameters:
      requestEntry - the request entry
      Throws:
      IOException - if unable to write the entry
    • append

      private void append(StringBuilder buf, String s)
      Deprecated.
    • log

      public void log(Request request, Response response)
      Deprecated.
      Writes the request and response information to the output stream.
      Specified by:
      log in interface RequestLog
      Parameters:
      request - The request to log.
      response - The response to log. Note that for some requests the response instance may not have been fully populated (Eg 400 bad request responses are sent without a servlet response object). Thus for basic log information it is best to consult Response.getCommittedMetaData() and Response.getHttpChannel() directly.
      See Also:
    • getAuthentication

      protected String getAuthentication(Request request)
      Deprecated.
      Extract the user authentication
      Parameters:
      request - The request to extract from
      Returns:
      The string to log for authenticated user.
    • logExtended

      protected void logExtended(StringBuilder b, Request request, Response response) throws IOException
      Deprecated.
      Writes extended request and response information to the output stream.
      Parameters:
      b - StringBuilder to write to
      request - request object
      response - response object
      Throws:
      IOException - if unable to log the extended information
    • setIgnorePaths

      public void setIgnorePaths(String[] ignorePaths)
      Deprecated.
      Set request paths that will not be logged.
      Parameters:
      ignorePaths - array of request paths
    • getIgnorePaths

      public String[] getIgnorePaths()
      Deprecated.
      Retrieve the request paths that will not be logged.
      Returns:
      array of request paths
    • setLogCookies

      public void setLogCookies(boolean logCookies)
      Deprecated.
      Controls logging of the request cookies.
      Parameters:
      logCookies - true - values of request cookies will be logged, false - values of request cookies will not be logged
    • getLogCookies

      public boolean getLogCookies()
      Deprecated.
      Retrieve log cookies flag
      Returns:
      value of the flag
    • setLogServer

      public void setLogServer(boolean logServer)
      Deprecated.
      Controls logging of the request hostname.
      Parameters:
      logServer - true - request hostname will be logged, false - request hostname will not be logged
    • getLogServer

      public boolean getLogServer()
      Deprecated.
      Retrieve log hostname flag.
      Returns:
      value of the flag
    • setLogLatency

      public void setLogLatency(boolean logLatency)
      Deprecated.
      Controls logging of request processing time.
      Parameters:
      logLatency - true - request processing time will be logged false - request processing time will not be logged
    • getLogLatency

      public boolean getLogLatency()
      Deprecated.
      Retrieve log request processing time flag.
      Returns:
      value of the flag
    • setLogDispatch

      @Deprecated public void setLogDispatch(boolean value)
      Deprecated.
      Parameters:
      value - true to log dispatch
    • isLogDispatch

      @Deprecated public boolean isLogDispatch()
      Deprecated.
      Returns:
      true if logging dispatches
    • setPreferProxiedForAddress

      public void setPreferProxiedForAddress(boolean preferProxiedForAddress)
      Deprecated.
      Controls whether the actual IP address of the connection or the IP address from the X-Forwarded-For header will be logged.
      Parameters:
      preferProxiedForAddress - true - IP address from header will be logged, false - IP address from the connection will be logged
    • getPreferProxiedForAddress

      public boolean getPreferProxiedForAddress()
      Deprecated.
      Retrieved log X-Forwarded-For IP address flag.
      Returns:
      value of the flag
    • setExtended

      public void setExtended(boolean extended)
      Deprecated.
      Set the extended request log format flag.
      Parameters:
      extended - true - log the extended request information, false - do not log the extended request information
    • isExtended

      @ManagedAttribute("use extended NCSA format") public boolean isExtended()
      Deprecated.
      Retrieve the extended request log format flag.
      Returns:
      value of the flag
    • doStart

      protected void doStart() throws Exception
      Deprecated.
      Set up request logging and open log file.
      Overrides:
      doStart in class ContainerLifeCycle
      Throws:
      Exception
      See Also:
    • doStop

      protected void doStop() throws Exception
      Deprecated.
      Description copied from class: ContainerLifeCycle
      Stops the managed lifecycle beans in the reverse order they were added.
      Overrides:
      doStop in class ContainerLifeCycle
      Throws:
      Exception
    • setLogDateFormat

      public void setLogDateFormat(String format)
      Deprecated.
      Set the timestamp format for request log entries in the file. If this is not set, the pre-formated request timestamp is used.
      Parameters:
      format - timestamp format string
    • getLogDateFormat

      public String getLogDateFormat()
      Deprecated.
      Retrieve the timestamp format string for request log entries.
      Returns:
      timestamp format string.
    • setLogLocale

      public void setLogLocale(Locale logLocale)
      Deprecated.
      Set the locale of the request log.
      Parameters:
      logLocale - locale object
    • getLogLocale

      public Locale getLogLocale()
      Deprecated.
      Retrieve the locale of the request log.
      Returns:
      locale object
    • setLogTimeZone

      public void setLogTimeZone(String tz)
      Deprecated.
      Set the timezone of the request log.
      Parameters:
      tz - timezone string
    • getLogTimeZone

      @ManagedAttribute("the timezone") public String getLogTimeZone()
      Deprecated.
      Retrieve the timezone of the request log.
      Returns:
      timezone string