You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-user@logging.apache.org by Larry Young <ly...@dalmatian.com> on 2004/03/17 04:33:59 UTC

when to log Exceptions

Hello all,

         This is not exactly a log4j-specific question, but I thought I 
would throw it out to this group to get your opinions.

         I have multiple layers in my web-based application, and each layer 
has the possibility of throwing exceptions.  The question I'm struggling 
with is when is it best to log these various Exceptions with the intention 
of only logging them once.

         For example, methodA calls methodB which calls methodC and in 
there it throws an IOException.  Well methodC can't do anything about it so 
it simply allows it to propagate up to methodB, which can't actually do 
anything about it either, except that it needs to trap for all Exceptions 
so that it can release some private assets, and then rethrows it up to 
methodA which really doesn't care about it either so it doesn't handle it, 
letting it go up to the caller.

         Where would you see as being the best place to log this 
Exception?  If it gets logged at the lowest layer (methodC), how does the 
next layer up (methodB) know not to log it again, since it can't tell which 
Exceptions it caused and which were thrown to it.  And the same question 
applies to methodA?  If you only log at the highest layer (methodA's 
caller), you lose any ability to turn on/off error logging on a 
class-by-class basis.

         Any thoughts on this would be greatly appreciated.  Thanks.

--- regards ---
Larry


--------------------------
Larry Young
The Dalmatian Group
www.dalmatian.com 



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