Class Logger

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private AppenderAttachableImpl<ILoggingEvent> aai
      It is assumed that once the 'aai' variable is set to a non-null value, it will never be reset to null.
      private boolean additive
      Additivity is set to true by default, that is children inherit the appenders of their ancestors by default.
      private java.util.List<Logger> childrenList
      The children of this logger.
      private int effectiveLevelInt  
      static java.lang.String FQCN
      The fully qualified name of this class.
      private Level level  
      (package private) LoggerContext loggerContext  
      private java.lang.String name
      The name of this logger
      private Logger parent
      The parent of this category.
      private static long serialVersionUID  
      • Fields inherited from interface org.slf4j.spi.LocationAwareLogger

        DEBUG_INT, ERROR_INT, INFO_INT, TRACE_INT, WARN_INT
      • Fields inherited from interface org.slf4j.Logger

        ROOT_LOGGER_NAME
    • Constructor Summary

      Constructors 
      Constructor Description
      Logger​(java.lang.String name, Logger parent, LoggerContext loggerContext)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addAppender​(Appender<ILoggingEvent> newAppender)
      Add an appender.
      private int appendLoopOnAppenders​(ILoggingEvent event)  
      private void buildLoggingEventAndAppend​(java.lang.String localFQCN, org.slf4j.Marker marker, Level level, java.lang.String msg, java.lang.Object[] params, java.lang.Throwable t)  
      void callAppenders​(ILoggingEvent event)
      Invoke all the appenders of this logger.
      private FilterReply callTurboFilters​(org.slf4j.Marker marker, Level level)
      Method that calls the attached TurboFilter objects based on the logger and the level.
      (package private) Logger createChildByLastNamePart​(java.lang.String lastPart)
      Create a child of this logger by suffix, that is, the part of the name extending this logger.
      (package private) Logger createChildByName​(java.lang.String childName)
      The default size of child list arrays.
      void debug​(java.lang.String msg)  
      void debug​(java.lang.String format, java.lang.Object arg)  
      void debug​(java.lang.String format, java.lang.Object... argArray)  
      void debug​(java.lang.String format, java.lang.Object arg1, java.lang.Object arg2)  
      void debug​(java.lang.String msg, java.lang.Throwable t)  
      void debug​(org.slf4j.Marker marker, java.lang.String msg)  
      void debug​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object arg)  
      void debug​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object... argArray)  
      void debug​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object arg1, java.lang.Object arg2)  
      void debug​(org.slf4j.Marker marker, java.lang.String msg, java.lang.Throwable t)  
      void detachAndStopAllAppenders()
      Remove all previously added appenders from this logger instance.
      boolean detachAppender​(Appender<ILoggingEvent> appender)
      Remove the appender passed as parameter form the list of appenders.
      boolean detachAppender​(java.lang.String name)
      Detach the appender with the name passed as parameter from the list of appenders.
      void error​(java.lang.String msg)  
      void error​(java.lang.String format, java.lang.Object arg)  
      void error​(java.lang.String format, java.lang.Object... argArray)  
      void error​(java.lang.String format, java.lang.Object arg1, java.lang.Object arg2)  
      void error​(java.lang.String msg, java.lang.Throwable t)  
      void error​(org.slf4j.Marker marker, java.lang.String msg)  
      void error​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object arg)  
      void error​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object... argArray)  
      void error​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object arg1, java.lang.Object arg2)  
      void error​(org.slf4j.Marker marker, java.lang.String msg, java.lang.Throwable t)  
      private void filterAndLog_0_Or3Plus​(java.lang.String localFQCN, org.slf4j.Marker marker, Level level, java.lang.String msg, java.lang.Object[] params, java.lang.Throwable t)
      The next methods are not merged into one because of the time we gain by not creating a new Object[] with the params.
      private void filterAndLog_1​(java.lang.String localFQCN, org.slf4j.Marker marker, Level level, java.lang.String msg, java.lang.Object param, java.lang.Throwable t)  
      private void filterAndLog_2​(java.lang.String localFQCN, org.slf4j.Marker marker, Level level, java.lang.String msg, java.lang.Object param1, java.lang.Object param2, java.lang.Throwable t)  
      Appender<ILoggingEvent> getAppender​(java.lang.String name)
      Get an appender by name.
      (package private) Logger getChildByName​(java.lang.String childName)  
      Level getEffectiveLevel()  
      (package private) int getEffectiveLevelInt()  
      Level getLevel()  
      LoggerContext getLoggerContext()
      Return the context for this logger.
      java.lang.String getName()  
      private void handleParentLevelChange​(int newParentLevelInt)
      This method is invoked by parent logger to let this logger know that the prent's levelInt changed.
      void info​(java.lang.String msg)  
      void info​(java.lang.String format, java.lang.Object arg)  
      void info​(java.lang.String format, java.lang.Object... argArray)  
      void info​(java.lang.String format, java.lang.Object arg1, java.lang.Object arg2)  
      void info​(java.lang.String msg, java.lang.Throwable t)  
      void info​(org.slf4j.Marker marker, java.lang.String msg)  
      void info​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object arg)  
      void info​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object... argArray)  
      void info​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object arg1, java.lang.Object arg2)  
      void info​(org.slf4j.Marker marker, java.lang.String msg, java.lang.Throwable t)  
      boolean isAdditive()  
      boolean isAttached​(Appender<ILoggingEvent> appender)
      Returns true if the specified appender is in list of attached attached, false otherwise.
      boolean isDebugEnabled()  
      boolean isDebugEnabled​(org.slf4j.Marker marker)  
      boolean isEnabledFor​(Level level)  
      boolean isEnabledFor​(org.slf4j.Marker marker, Level level)  
      boolean isErrorEnabled()  
      boolean isErrorEnabled​(org.slf4j.Marker marker)  
      boolean isInfoEnabled()  
      boolean isInfoEnabled​(org.slf4j.Marker marker)  
      private boolean isRootLogger()  
      boolean isTraceEnabled()  
      boolean isTraceEnabled​(org.slf4j.Marker marker)  
      boolean isWarnEnabled()  
      boolean isWarnEnabled​(org.slf4j.Marker marker)  
      java.util.Iterator<Appender<ILoggingEvent>> iteratorForAppenders()
      Get an iterator for appenders contained in the parent object.
      private void localLevelReset()  
      void log​(org.slf4j.event.LoggingEvent slf4jEvent)
      Support SLF4J interception during initialization as introduced in SLF4J version 1.7.15
      void log​(org.slf4j.Marker marker, java.lang.String fqcn, int levelInt, java.lang.String message, java.lang.Object[] argArray, java.lang.Throwable t)  
      protected java.lang.Object readResolve()
      After serialization, the logger instance does not know its LoggerContext.
      (package private) void recursiveReset()  
      void setAdditive​(boolean additive)  
      void setLevel​(Level newLevel)  
      java.lang.String toString()  
      void trace​(java.lang.String msg)  
      void trace​(java.lang.String format, java.lang.Object arg)  
      void trace​(java.lang.String format, java.lang.Object... argArray)  
      void trace​(java.lang.String format, java.lang.Object arg1, java.lang.Object arg2)  
      void trace​(java.lang.String msg, java.lang.Throwable t)  
      void trace​(org.slf4j.Marker marker, java.lang.String msg)  
      void trace​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object arg)  
      void trace​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object... argArray)  
      void trace​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object arg1, java.lang.Object arg2)  
      void trace​(org.slf4j.Marker marker, java.lang.String msg, java.lang.Throwable t)  
      void warn​(java.lang.String msg)  
      void warn​(java.lang.String format, java.lang.Object arg)  
      void warn​(java.lang.String format, java.lang.Object... argArray)  
      void warn​(java.lang.String format, java.lang.Object arg1, java.lang.Object arg2)  
      void warn​(java.lang.String msg, java.lang.Throwable t)  
      void warn​(org.slf4j.Marker marker, java.lang.String msg)  
      void warn​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object arg)  
      void warn​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object... argArray)  
      void warn​(org.slf4j.Marker marker, java.lang.String format, java.lang.Object arg1, java.lang.Object arg2)  
      void warn​(org.slf4j.Marker marker, java.lang.String msg, java.lang.Throwable t)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • FQCN

        public static final java.lang.String FQCN
        The fully qualified name of this class. Used in gathering caller information.
      • name

        private java.lang.String name
        The name of this logger
      • level

        private transient Level level
      • effectiveLevelInt

        private transient int effectiveLevelInt
      • parent

        private transient Logger parent
        The parent of this category. All categories have at least one ancestor which is the root category.
      • childrenList

        private transient java.util.List<Logger> childrenList
        The children of this logger. A logger may have zero or more children.
      • aai

        private transient AppenderAttachableImpl<ILoggingEvent> aai
        It is assumed that once the 'aai' variable is set to a non-null value, it will never be reset to null. it is further assumed that only place where the 'aai'ariable is set is within the addAppender method. This method is synchronized on 'this' (Logger) protecting against simultaneous re-configuration of this logger (a very unlikely scenario).

        It is further assumed that the AppenderAttachableImpl is responsible for its internal synchronization and thread safety. Thus, we can get away with *not* synchronizing on the 'aai' (check null/ read) because

        1) the 'aai' variable is immutable once set to non-null

        2) 'aai' is getAndSet only within addAppender which is synchronized

        3) all the other methods check whether 'aai' is null

        4) AppenderAttachableImpl is thread safe

      • additive

        private transient boolean additive
        Additivity is set to true by default, that is children inherit the appenders of their ancestors by default. If this variable is set to false then the appenders located in the ancestors of this logger will not be used. However, the children of this logger will inherit its appenders, unless the children have their additivity flag set to false too. See the user manual for more details.
    • Constructor Detail

    • Method Detail

      • getEffectiveLevel

        public Level getEffectiveLevel()
      • getEffectiveLevelInt

        int getEffectiveLevelInt()
      • getLevel

        public Level getLevel()
      • getName

        public java.lang.String getName()
        Specified by:
        getName in interface org.slf4j.Logger
      • isRootLogger

        private boolean isRootLogger()
      • getChildByName

        Logger getChildByName​(java.lang.String childName)
      • setLevel

        public void setLevel​(Level newLevel)
      • handleParentLevelChange

        private void handleParentLevelChange​(int newParentLevelInt)
        This method is invoked by parent logger to let this logger know that the prent's levelInt changed.
        Parameters:
        newParentLevelInt -
      • detachAndStopAllAppenders

        public void detachAndStopAllAppenders()
        Remove all previously added appenders from this logger instance.

        This is useful when re-reading configuration information.

        Specified by:
        detachAndStopAllAppenders in interface AppenderAttachable<ILoggingEvent>
      • callAppenders

        public void callAppenders​(ILoggingEvent event)
        Invoke all the appenders of this logger.
        Parameters:
        event - The event to log
      • appendLoopOnAppenders

        private int appendLoopOnAppenders​(ILoggingEvent event)
      • createChildByLastNamePart

        Logger createChildByLastNamePart​(java.lang.String lastPart)
        Create a child of this logger by suffix, that is, the part of the name extending this logger. For example, if this logger is named "x.y" and the lastPart is "z", then the created child logger will be named "x.y.z".

        IMPORTANT: Calls to this method must be within a synchronized block on this logger.

        Parameters:
        lastPart - the suffix (i.e. last part) of the child logger name. This parameter may not include dots, i.e. the logger separator character.
        Returns:
      • localLevelReset

        private void localLevelReset()
      • recursiveReset

        void recursiveReset()
      • createChildByName

        Logger createChildByName​(java.lang.String childName)
        The default size of child list arrays. The JDK 1.5 default is 10. We use a smaller value to save a little space.
      • filterAndLog_0_Or3Plus

        private void filterAndLog_0_Or3Plus​(java.lang.String localFQCN,
                                            org.slf4j.Marker marker,
                                            Level level,
                                            java.lang.String msg,
                                            java.lang.Object[] params,
                                            java.lang.Throwable t)
        The next methods are not merged into one because of the time we gain by not creating a new Object[] with the params. This reduces the cost of not logging by about 20 nanoseconds.
      • filterAndLog_1

        private void filterAndLog_1​(java.lang.String localFQCN,
                                    org.slf4j.Marker marker,
                                    Level level,
                                    java.lang.String msg,
                                    java.lang.Object param,
                                    java.lang.Throwable t)
      • filterAndLog_2

        private void filterAndLog_2​(java.lang.String localFQCN,
                                    org.slf4j.Marker marker,
                                    Level level,
                                    java.lang.String msg,
                                    java.lang.Object param1,
                                    java.lang.Object param2,
                                    java.lang.Throwable t)
      • buildLoggingEventAndAppend

        private void buildLoggingEventAndAppend​(java.lang.String localFQCN,
                                                org.slf4j.Marker marker,
                                                Level level,
                                                java.lang.String msg,
                                                java.lang.Object[] params,
                                                java.lang.Throwable t)
      • trace

        public void trace​(java.lang.String msg)
        Specified by:
        trace in interface org.slf4j.Logger
      • trace

        public void trace​(java.lang.String format,
                          java.lang.Object arg)
        Specified by:
        trace in interface org.slf4j.Logger
      • trace

        public void trace​(java.lang.String format,
                          java.lang.Object arg1,
                          java.lang.Object arg2)
        Specified by:
        trace in interface org.slf4j.Logger
      • trace

        public void trace​(java.lang.String format,
                          java.lang.Object... argArray)
        Specified by:
        trace in interface org.slf4j.Logger
      • trace

        public void trace​(java.lang.String msg,
                          java.lang.Throwable t)
        Specified by:
        trace in interface org.slf4j.Logger
      • trace

        public void trace​(org.slf4j.Marker marker,
                          java.lang.String msg)
        Specified by:
        trace in interface org.slf4j.Logger
      • trace

        public void trace​(org.slf4j.Marker marker,
                          java.lang.String format,
                          java.lang.Object arg)
        Specified by:
        trace in interface org.slf4j.Logger
      • trace

        public void trace​(org.slf4j.Marker marker,
                          java.lang.String format,
                          java.lang.Object arg1,
                          java.lang.Object arg2)
        Specified by:
        trace in interface org.slf4j.Logger
      • trace

        public void trace​(org.slf4j.Marker marker,
                          java.lang.String format,
                          java.lang.Object... argArray)
        Specified by:
        trace in interface org.slf4j.Logger
      • trace

        public void trace​(org.slf4j.Marker marker,
                          java.lang.String msg,
                          java.lang.Throwable t)
        Specified by:
        trace in interface org.slf4j.Logger
      • isDebugEnabled

        public boolean isDebugEnabled()
        Specified by:
        isDebugEnabled in interface org.slf4j.Logger
      • isDebugEnabled

        public boolean isDebugEnabled​(org.slf4j.Marker marker)
        Specified by:
        isDebugEnabled in interface org.slf4j.Logger
      • debug

        public void debug​(java.lang.String msg)
        Specified by:
        debug in interface org.slf4j.Logger
      • debug

        public void debug​(java.lang.String format,
                          java.lang.Object arg)
        Specified by:
        debug in interface org.slf4j.Logger
      • debug

        public void debug​(java.lang.String format,
                          java.lang.Object arg1,
                          java.lang.Object arg2)
        Specified by:
        debug in interface org.slf4j.Logger
      • debug

        public void debug​(java.lang.String format,
                          java.lang.Object... argArray)
        Specified by:
        debug in interface org.slf4j.Logger
      • debug

        public void debug​(java.lang.String msg,
                          java.lang.Throwable t)
        Specified by:
        debug in interface org.slf4j.Logger
      • debug

        public void debug​(org.slf4j.Marker marker,
                          java.lang.String msg)
        Specified by:
        debug in interface org.slf4j.Logger
      • debug

        public void debug​(org.slf4j.Marker marker,
                          java.lang.String format,
                          java.lang.Object arg)
        Specified by:
        debug in interface org.slf4j.Logger
      • debug

        public void debug​(org.slf4j.Marker marker,
                          java.lang.String format,
                          java.lang.Object arg1,
                          java.lang.Object arg2)
        Specified by:
        debug in interface org.slf4j.Logger
      • debug

        public void debug​(org.slf4j.Marker marker,
                          java.lang.String format,
                          java.lang.Object... argArray)
        Specified by:
        debug in interface org.slf4j.Logger
      • debug

        public void debug​(org.slf4j.Marker marker,
                          java.lang.String msg,
                          java.lang.Throwable t)
        Specified by:
        debug in interface org.slf4j.Logger
      • error

        public void error​(java.lang.String msg)
        Specified by:
        error in interface org.slf4j.Logger
      • error

        public void error​(java.lang.String format,
                          java.lang.Object arg)
        Specified by:
        error in interface org.slf4j.Logger
      • error

        public void error​(java.lang.String format,
                          java.lang.Object arg1,
                          java.lang.Object arg2)
        Specified by:
        error in interface org.slf4j.Logger
      • error

        public void error​(java.lang.String format,
                          java.lang.Object... argArray)
        Specified by:
        error in interface org.slf4j.Logger
      • error

        public void error​(java.lang.String msg,
                          java.lang.Throwable t)
        Specified by:
        error in interface org.slf4j.Logger
      • error

        public void error​(org.slf4j.Marker marker,
                          java.lang.String msg)
        Specified by:
        error in interface org.slf4j.Logger
      • error

        public void error​(org.slf4j.Marker marker,
                          java.lang.String format,
                          java.lang.Object arg)
        Specified by:
        error in interface org.slf4j.Logger
      • error

        public void error​(org.slf4j.Marker marker,
                          java.lang.String format,
                          java.lang.Object arg1,
                          java.lang.Object arg2)
        Specified by:
        error in interface org.slf4j.Logger
      • error

        public void error​(org.slf4j.Marker marker,
                          java.lang.String format,
                          java.lang.Object... argArray)
        Specified by:
        error in interface org.slf4j.Logger
      • error

        public void error​(org.slf4j.Marker marker,
                          java.lang.String msg,
                          java.lang.Throwable t)
        Specified by:
        error in interface org.slf4j.Logger
      • isInfoEnabled

        public boolean isInfoEnabled()
        Specified by:
        isInfoEnabled in interface org.slf4j.Logger
      • isInfoEnabled

        public boolean isInfoEnabled​(org.slf4j.Marker marker)
        Specified by:
        isInfoEnabled in interface org.slf4j.Logger
      • info

        public void info​(java.lang.String msg)
        Specified by:
        info in interface org.slf4j.Logger
      • info

        public void info​(java.lang.String format,
                         java.lang.Object arg)
        Specified by:
        info in interface org.slf4j.Logger
      • info

        public void info​(java.lang.String format,
                         java.lang.Object arg1,
                         java.lang.Object arg2)
        Specified by:
        info in interface org.slf4j.Logger
      • info

        public void info​(java.lang.String format,
                         java.lang.Object... argArray)
        Specified by:
        info in interface org.slf4j.Logger
      • info

        public void info​(java.lang.String msg,
                         java.lang.Throwable t)
        Specified by:
        info in interface org.slf4j.Logger
      • info

        public void info​(org.slf4j.Marker marker,
                         java.lang.String msg)
        Specified by:
        info in interface org.slf4j.Logger
      • info

        public void info​(org.slf4j.Marker marker,
                         java.lang.String format,
                         java.lang.Object arg)
        Specified by:
        info in interface org.slf4j.Logger
      • info

        public void info​(org.slf4j.Marker marker,
                         java.lang.String format,
                         java.lang.Object arg1,
                         java.lang.Object arg2)
        Specified by:
        info in interface org.slf4j.Logger
      • info

        public void info​(org.slf4j.Marker marker,
                         java.lang.String format,
                         java.lang.Object... argArray)
        Specified by:
        info in interface org.slf4j.Logger
      • info

        public void info​(org.slf4j.Marker marker,
                         java.lang.String msg,
                         java.lang.Throwable t)
        Specified by:
        info in interface org.slf4j.Logger
      • isTraceEnabled

        public boolean isTraceEnabled()
        Specified by:
        isTraceEnabled in interface org.slf4j.Logger
      • isTraceEnabled

        public boolean isTraceEnabled​(org.slf4j.Marker marker)
        Specified by:
        isTraceEnabled in interface org.slf4j.Logger
      • isErrorEnabled

        public boolean isErrorEnabled()
        Specified by:
        isErrorEnabled in interface org.slf4j.Logger
      • isErrorEnabled

        public boolean isErrorEnabled​(org.slf4j.Marker marker)
        Specified by:
        isErrorEnabled in interface org.slf4j.Logger
      • isWarnEnabled

        public boolean isWarnEnabled()
        Specified by:
        isWarnEnabled in interface org.slf4j.Logger
      • isWarnEnabled

        public boolean isWarnEnabled​(org.slf4j.Marker marker)
        Specified by:
        isWarnEnabled in interface org.slf4j.Logger
      • isEnabledFor

        public boolean isEnabledFor​(org.slf4j.Marker marker,
                                    Level level)
      • isEnabledFor

        public boolean isEnabledFor​(Level level)
      • warn

        public void warn​(java.lang.String msg)
        Specified by:
        warn in interface org.slf4j.Logger
      • warn

        public void warn​(java.lang.String msg,
                         java.lang.Throwable t)
        Specified by:
        warn in interface org.slf4j.Logger
      • warn

        public void warn​(java.lang.String format,
                         java.lang.Object arg)
        Specified by:
        warn in interface org.slf4j.Logger
      • warn

        public void warn​(java.lang.String format,
                         java.lang.Object arg1,
                         java.lang.Object arg2)
        Specified by:
        warn in interface org.slf4j.Logger
      • warn

        public void warn​(java.lang.String format,
                         java.lang.Object... argArray)
        Specified by:
        warn in interface org.slf4j.Logger
      • warn

        public void warn​(org.slf4j.Marker marker,
                         java.lang.String msg)
        Specified by:
        warn in interface org.slf4j.Logger
      • warn

        public void warn​(org.slf4j.Marker marker,
                         java.lang.String format,
                         java.lang.Object arg)
        Specified by:
        warn in interface org.slf4j.Logger
      • warn

        public void warn​(org.slf4j.Marker marker,
                         java.lang.String format,
                         java.lang.Object... argArray)
        Specified by:
        warn in interface org.slf4j.Logger
      • warn

        public void warn​(org.slf4j.Marker marker,
                         java.lang.String format,
                         java.lang.Object arg1,
                         java.lang.Object arg2)
        Specified by:
        warn in interface org.slf4j.Logger
      • warn

        public void warn​(org.slf4j.Marker marker,
                         java.lang.String msg,
                         java.lang.Throwable t)
        Specified by:
        warn in interface org.slf4j.Logger
      • isAdditive

        public boolean isAdditive()
      • setAdditive

        public void setAdditive​(boolean additive)
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • callTurboFilters

        private FilterReply callTurboFilters​(org.slf4j.Marker marker,
                                             Level level)
        Method that calls the attached TurboFilter objects based on the logger and the level. It is used by isYYYEnabled() methods. It returns the typical FilterReply values: ACCEPT, NEUTRAL or DENY.
        Parameters:
        level -
        Returns:
        the reply given by the TurboFilters
      • getLoggerContext

        public LoggerContext getLoggerContext()
        Return the context for this logger.
        Returns:
        the context
      • log

        public void log​(org.slf4j.Marker marker,
                        java.lang.String fqcn,
                        int levelInt,
                        java.lang.String message,
                        java.lang.Object[] argArray,
                        java.lang.Throwable t)
        Specified by:
        log in interface org.slf4j.spi.LocationAwareLogger
      • log

        public void log​(org.slf4j.event.LoggingEvent slf4jEvent)
        Support SLF4J interception during initialization as introduced in SLF4J version 1.7.15
        Parameters:
        slf4jEvent -
        Since:
        1.1.4
      • readResolve

        protected java.lang.Object readResolve()
                                        throws java.io.ObjectStreamException
        After serialization, the logger instance does not know its LoggerContext. The best we can do here, is to return a logger with the same name returned by org.slf4j.LoggerFactory.
        Returns:
        Logger instance with the same name
        Throws:
        java.io.ObjectStreamException