Class EnsureExceptionHandling

    • Constructor Detail

      • EnsureExceptionHandling

        public EnsureExceptionHandling()
    • Method Detail

      • process

        public void process​(Context context,
                            Converter<ILoggingEvent> head)
        This implementation checks if any of the converters in the chain handles exceptions. If not, then this method adds a ExtendedThrowableProxyConverter instance to the end of the chain.

        This allows appenders using this layout to output exception information event if the user forgets to add %ex to the pattern. Note that the appenders defined in the Core package are not aware of exceptions nor LoggingEvents.

        If for some reason the user wishes to NOT print exceptions, then she can add %nopex to the pattern.

        Specified by:
        process in interface PostCompileProcessor<ILoggingEvent>
        head - The first converter in the chain
      • chainHandlesThrowable

        public boolean chainHandlesThrowable​(Converter<ILoggingEvent> head)
        This method computes whether a chain of converters handles exceptions or not.
        Parameters:
        head - The first element of the chain
        Returns:
        true if can handle throwables contained in logging events