logging-log4j-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ralph Goers <ralph.go...@dslextreme.com>
Subject Re: Appender's append() method
Date Fri, 15 Jan 2016 04:53:59 GMT
Catch the exception, log it or whatever, then throw an AppenderLoggingException chaining the
original exception to it.

Ralph

> On Jan 14, 2016, at 7:08 PM, Nicholas Duane <nickdu@msn.com> wrote:
> 
> I'm getting a little confused here.  I also left out some information.  We do need to
catch because for some of our appenders we log the errors to loggers which will capture the
errors in a central location.
> 
> If we didn't include any exception handling that would mean any type of exception could
be thrown back to the AppenderControl.  So if I do catch exceptions so that I can log them
and then I want to rethrow them, is there a reason why I have to wrap them in some specific
type of exception?
> 
> Also, as I mentioned earlier, and unfortunately I didn't get a chance to test this yet
but I believe I've seen this happen before, if I'm attempting to override a method which doesn't
indicate it throws exceptions, won't the compiler complain if I attempt to throw an exception
from that method?
> 
> Thanks,
> Nick
> 
>> Subject: Re: Appender's append() method
>> From: ralph.goers@dslextreme.com
>> Date: Wed, 13 Jan 2016 22:50:41 -0700
>> To: log4j-user@logging.apache.org
>> 
>> Why are you catching it at all? AppenderControl also takes care of handling logging
the exception so you don’t even have to catch the exception to do that.
>> 
>> Ralph
>> 
>>> On Jan 13, 2016, at 7:49 PM, Nicholas Duane <nickdu@msn.com> wrote:
>>> 
>>> Also, why would we not just rethrow whatever exception we caught?
>>> 
>>> Thanks,
>>> Nick
>>> 
>>>> Subject: Re: Appender's append() method
>>>> From: ralph.goers@dslextreme.com
>>>> Date: Wed, 13 Jan 2016 17:28:11 -0700
>>>> To: log4j-user@logging.apache.org
>>>> 
>>>> Sorry, that was what I meant.
>>>> 
>>>> Ralph
>>>> 
>>>>> On Jan 13, 2016, at 3:17 PM, Gary Gregory <garydgregory@gmail.com>
wrote:
>>>>> 
>>>>> IMO a RuntimeException subclass is appropriate while RuntimeException
>>>>> should not be used.
>>>>> 
>>>>> Gary
>>>>> 
>>>>> On Wed, Jan 13, 2016 at 1:53 PM, Ralph Goers <ralph.goers@dslextreme.com>
>>>>> wrote:
>>>>> 
>>>>>> Your appender is automatically wrapped by an AppenderControl object.
The
>>>>>> AppenderControl will inspect the ignoreExceptions flag so your Appender
>>>>>> does not have to.  Your Appender should just throw a RuntimeException
if it
>>>>>> encounters a problem.
>>>>>> 
>>>>>> Ralph
>>>>>> 
>>>>>>> On Jan 13, 2016, at 2:38 PM, Nicholas Duane <nickdu@msn.com>
wrote:
>>>>>>> 
>>>>>>> I'm new to java so maybe this should be an obvious question to
most java
>>>>>> developers.  If I'm trying to override the append() method but also
throw
>>>>>> exceptions, how is that done?
>>>>>>> 
>>>>>>> I'm asking because I assume my append method's outermost catch
block is
>>>>>> to inspect the ignoreExceptions flag and either bubble up the exception
if
>>>>>> ignoreExceptions is false or eat the exception otherwise, most likely
just
>>>>>> logging an event.  Is that true?  If so, then how do I accomplish
that?  I
>>>>>> tried coding it as I mentioned above (actually someone else did it
for me),
>>>>>> but the compiler I guess was complaining about the throw needing
to be in a
>>>>>> catch block, I assume because the append() method is not defined
to throw
>>>>>> exceptions.
>>>>>>> 
>>>>>>> In addition, looking at what I think was source for one of your
>>>>>> appenders at:
>>>>>>> 
>>>>>>> 
>>>>>> https://git-wip-us.apache.org/repos/asf?p=logging-log4j2.git;a=blob;f=log4j-core/src/main/java/org/apache/logging/log4j/core/appender/AbstractOutputStreamAppender.java;h=9a4cfde83194c866c30c4687e9f4ebb19cb20a17;hb=75d33d96ac00356014cf11f8ad9e8c6ead4db37a
>>>>>>> 
>>>>>>> Why does it always throw an exception in the catch block instead
of
>>>>>> checking the state of the ignoreExceptions flag?
>>>>>>> 
>>>>>>> Thanks,
>>>>>>> Nick
>>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
>>>>>> For additional commands, e-mail: log4j-user-help@logging.apache.org
>>>>>> 
>>>>>> 
>>>>> 
>>>>> 
>>>>> -- 
>>>>> E-Mail: garydgregory@gmail.com | ggregory@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
>>>> 
>>>> 
>>>> 
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
>>>> For additional commands, e-mail: log4j-user-help@logging.apache.org
>>>> 
>>> 		 	   		  
>> 
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
>> For additional commands, e-mail: log4j-user-help@logging.apache.org
>> 
> 		 	   		  



---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-user-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-user-help@logging.apache.org


Mime
View raw message