org.apache.logging.log4j.web

Class WebLoggerContextUtils



  • public final class WebLoggerContextUtils
    extends Object
    Convenience methods for retrieving the LoggerContext associated with a particular ServletContext. These methods are most particularly useful for asynchronous servlets where the Thread Context ClassLoader (TCCL) is potentially different from the TCCL used by the Servlet container that bootstrapped Log4j.
    Since:
    2.0.1
    • Method Detail

      • getWebLoggerContext

        public static LoggerContext getWebLoggerContext(javax.servlet.ServletContext servletContext)
        Finds the main LoggerContext configured for the given ServletContext.
        Parameters:
        servletContext - the ServletContext to locate a LoggerContext for
        Returns:
        the LoggerContext for the given ServletContext
        Since:
        2.0.1
      • getRequiredWebLoggerContext

        public static LoggerContext getRequiredWebLoggerContext(javax.servlet.ServletContext servletContext)
        Finds the main LoggerContext configured for the given ServletContext.
        Parameters:
        servletContext - the ServletContext to locate a LoggerContext for
        Returns:
        the LoggerContext for the given ServletContext or null if none was set
        Throws:
        IllegalStateException - if no LoggerContext could be found on the given ServletContext
        Since:
        2.0.1
      • getWebLifeCycle

        public static org.apache.logging.log4j.web.Log4jWebLifeCycle getWebLifeCycle(javax.servlet.ServletContext servletContext)
        Finds or initializes the Log4jWebLifeCycle singleton for the given ServletContext.
        Parameters:
        servletContext - the ServletContext to get the Log4jWebLifeCycle for
        Returns:
        the Log4jWebLifeCycle for the given ServletContext
        Since:
        2.0.1
      • wrapExecutionContext

        public static Runnable wrapExecutionContext(javax.servlet.ServletContext servletContext,
                                    Runnable runnable)
        Wraps a Runnable instance by setting its thread context LoggerContext before execution and clearing it after execution.
        Parameters:
        servletContext - the ServletContext to locate a LoggerContext for
        runnable - the Runnable to wrap execution for
        Returns:
        a wrapped Runnable
        Since:
        2.0.1
      • getServletContext

        public static javax.servlet.ServletContext getServletContext()
        Gets the current ServletContext if it has already been assigned to a LoggerContext's external context.
        Returns:
        the current ServletContext attached to a LoggerContext or null if none could be found
        Since:
        2.1

Copyright © 1999-2015 Apache Software Foundation. All Rights Reserved.
Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, the Apache Logging project logo, and the Apache Log4j logo are trademarks of The Apache Software Foundation.