Since ServletContext is an interface, who knows what interesting work an
implementation will do with the Throwables.

Another way to look at it is: Why should we hide the actual Throwable from
the ServletContext?

Gary

On Thu, Sep 22, 2016 at 10:23 AM, Ralph Goers <ralph.go...@dslextreme.com>
wrote:

> Yes, and them immediately committed it.  I am -1 on this commit until I
> get an explanation as to why what we currently do isn’t better.
>
> Ralph
>
> On Sep 22, 2016, at 9:29 AM, Gary Gregory <garydgreg...@gmail.com> wrote:
>
> I created https://issues.apache.org/jira/browse/LOG4J2-1608
>
> Gary
>
> On Thu, Sep 22, 2016 at 8:22 AM, Matt Sicker <boa...@gmail.com> wrote:
>
>> Oh that explains it, thanks for the info!
>>
>> On 22 September 2016 at 10:21, Ralph Goers <ralph.go...@dslextreme.com>
>> wrote:
>>
>>> PatternLayout defaults to implicitly add %ex or one of its variations to
>>> your pattern if you don’t specify it. To disable exception logging you have
>>> to use %noex.
>>>
>>> Ralph
>>>
>>> On Sep 22, 2016, at 6:55 AM, Matt Sicker <boa...@gmail.com> wrote:
>>>
>>> I usually don't even include %exception in my pattern layouts for some
>>> reason, probably because of the double logging. So I'd go with (1) as well.
>>>
>>> On 22 September 2016 at 02:59, Gary Gregory <garydgreg...@gmail.com>
>>> wrote:
>>>
>>>> Hi All,
>>>>
>>>> The method 
>>>> org.apache.logging.log4j.web.appender.ServletAppender.append(LogEvent)
>>>> is defined as:
>>>>
>>>>     @Override
>>>>     public void append(final LogEvent event) {
>>>>         servletContext.log(((AbstractStringLayout)
>>>> getLayout()).toSerializable(event));
>>>>     }
>>>>
>>>> Instead of:
>>>>
>>>>     @Override
>>>>     public void append(final LogEvent event) {
>>>>         servletContext.log(((AbstractStringLayout)
>>>> getLayout()).toSerializable(event)*, event.getThrown()*);
>>>>     }
>>>>
>>>> Which does not give the best information we have to the servlet context
>>>> logging.
>>>>
>>>> The tricky part is that to avoid logging the exception twice like in
>>>> our test org.apache.logging.log4j.web.ServletAppenderTest. To avoid
>>>> the double logging, we could (1) document not using a %exception in the
>>>> pattern layout.
>>>>
>>>> That or (yikes) (2) provide a variation of the toSerializable(event)
>>>> like toSerializable(event, false), where the boolean is an ignoreException
>>>> parameter. It seems there are plenty of places where exceptions are treated
>>>> specially already, this would be another.
>>>>
>>>> I like (1) better because it is simpler.
>>>>
>>>> Thoughts?
>>>>
>>>> Thank you,
>>>> Gary
>>>>
>>>>
>>>> --
>>>> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org
>>>> Java Persistence with Hibernate, Second Edition
>>>> <http://www.manning.com/bauer3/>
>>>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
>>>> Spring Batch in Action <http://www.manning.com/templier/>
>>>> Blog: http://garygregory.wordpress.com
>>>> Home: http://garygregory.com/
>>>> Tweet! http://twitter.com/GaryGregory
>>>>
>>>
>>>
>>>
>>> --
>>> Matt Sicker <boa...@gmail.com>
>>>
>>>
>>>
>>
>>
>> --
>> Matt Sicker <boa...@gmail.com>
>>
>
>
>
> --
> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org
> Java Persistence with Hibernate, Second Edition
> <http://www.manning.com/bauer3/>
> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
> Spring Batch in Action <http://www.manning.com/templier/>
> Blog: http://garygregory.wordpress.com
> Home: http://garygregory.com/
> Tweet! http://twitter.com/GaryGregory
>
>
>


-- 
E-Mail: garydgreg...@gmail.com | ggreg...@apache.org
Java Persistence with Hibernate, Second Edition
<http://www.manning.com/bauer3/>
JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
Spring Batch in Action <http://www.manning.com/templier/>
Blog: http://garygregory.wordpress.com
Home: http://garygregory.com/
Tweet! http://twitter.com/GaryGregory

Reply via email to