OK - Thanks for doing that.

Ralph

> On Sep 22, 2016, at 2:26 PM, Gary Gregory <garydgreg...@gmail.com> wrote:
> 
> On Thu, Sep 22, 2016 at 2:07 PM, Ralph Goers <ralph.go...@dslextreme.com 
> <mailto:ralph.go...@dslextreme.com>> wrote:
> Is the default to keep the existing behavior?
> 
> Yes, it is. 
> 
> Gary
>  
> 
> Ralph
> 
>> On Sep 22, 2016, at 1:54 PM, Gary Gregory <garydgreg...@gmail.com 
>> <mailto:garydgreg...@gmail.com>> wrote:
>> 
>> On Thu, Sep 22, 2016 at 1:07 PM, Gary Gregory <garydgreg...@gmail.com 
>> <mailto:garydgreg...@gmail.com>> wrote:
>> On Thu, Sep 22, 2016 at 12:52 PM, Ralph Goers <ralph.go...@dslextreme.com 
>> <mailto:ralph.go...@dslextreme.com>> wrote:
>> Because Log4j users are far more inclined to want to use the formatting we 
>> provide?  What your change does is effectively disallow users from using our 
>> exception formatting when logging to the servletContext. 
>> 
>> No it does not. Now, if the user does nothing, for example uses "%m%n", the 
>> exception is still added to the messages as you pointed out. What you do get 
>> is double logging and I'll add an option to only use the servlet context API 
>> with the Throwable if a new attribute is set.
>> 
>> I added a Builder to the ServletAppender, deprecated the factory method, and 
>> added a new option:
>> 
>>         /**
>>          * Logs with {@link ServletContext#log(String, Throwable)} if true 
>> and with {@link ServletContext#log(String)} if false.
>>          * 
>>          * @return whether to log a Throwable with the servlet context.
>>          */
>>         public boolean isLogThrowables() {
>>             return logThrowables;
>>         }
>> 
>> Gary 
>> 
>> Gary
>>  
>> 
>> Also, this breaks the current behavior.
>> 
>> You really need to rethink this and provide an option or something on the 
>> Appender to allow the user to control this.
>> 
>> Please revert what you have committed so it doesn’t go out if I can get to 
>> doing the release tonight. 
>> 
>> Ralph
>> 
>>> On Sep 22, 2016, at 11:42 AM, Gary Gregory <garydgreg...@gmail.com 
>>> <mailto:garydgreg...@gmail.com>> wrote:
>>> 
>>> 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 
>>> <mailto: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 
>>>> <mailto:garydgreg...@gmail.com>> wrote:
>>>> 
>>>> I created https://issues.apache.org/jira/browse/LOG4J2-1608 
>>>> <https://issues.apache.org/jira/browse/LOG4J2-1608>
>>>> 
>>>> Gary
>>>> 
>>>> On Thu, Sep 22, 2016 at 8:22 AM, Matt Sicker <boa...@gmail.com 
>>>> <mailto: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 
>>>> <mailto: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 
>>>>> <mailto: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 
>>>>> <mailto: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 <mailto:garydgreg...@gmail.com> | 
>>>>> ggreg...@apache.org  <mailto: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 
>>>>> <http://garygregory.wordpress.com/> 
>>>>> Home: http://garygregory.com/ <http://garygregory.com/>
>>>>> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory>
>>>>> 
>>>>> 
>>>>> -- 
>>>>> Matt Sicker <boa...@gmail.com <mailto:boa...@gmail.com>>
>>>> 
>>>> 
>>>> 
>>>> 
>>>> -- 
>>>> Matt Sicker <boa...@gmail.com <mailto:boa...@gmail.com>>
>>>> 
>>>> 
>>>> 
>>>> -- 
>>>> E-Mail: garydgreg...@gmail.com <mailto:garydgreg...@gmail.com> | 
>>>> ggreg...@apache.org  <mailto: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 <http://garygregory.wordpress.com/> 
>>>> Home: http://garygregory.com/ <http://garygregory.com/>
>>>> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory>
>>> 
>>> 
>>> 
>>> -- 
>>> E-Mail: garydgreg...@gmail.com <mailto:garydgreg...@gmail.com> | 
>>> ggreg...@apache.org  <mailto: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 <http://garygregory.wordpress.com/> 
>>> Home: http://garygregory.com/ <http://garygregory.com/>
>>> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory>
>> 
>> 
>> 
>> -- 
>> E-Mail: garydgreg...@gmail.com <mailto:garydgreg...@gmail.com> | 
>> ggreg...@apache.org  <mailto: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 <http://garygregory.wordpress.com/> 
>> Home: http://garygregory.com/ <http://garygregory.com/>
>> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory>
>> 
>> 
>> -- 
>> E-Mail: garydgreg...@gmail.com <mailto:garydgreg...@gmail.com> | 
>> ggreg...@apache.org  <mailto: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 <http://garygregory.wordpress.com/> 
>> Home: http://garygregory.com/ <http://garygregory.com/>
>> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory>
> 
> 
> 
> -- 
> E-Mail: garydgreg...@gmail.com <mailto:garydgreg...@gmail.com> | 
> ggreg...@apache.org  <mailto: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 <http://garygregory.wordpress.com/> 
> Home: http://garygregory.com/ <http://garygregory.com/>
> Tweet! http://twitter.com/GaryGregory <http://twitter.com/GaryGregory>

Reply via email to