logging-log4net-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Duncan Woods" <duncan.wo...@garradhassan.com>
Subject When to log, when to throw - Help!
Date Mon, 26 Jun 2006 14:16:38 GMT
Hi all,
 
I don't think I have grasped something basic about using error handling
as I am having trouble integrating exceptions with logging. The goal of
my logging is at high levels to be comprehensible to a non software
engineer and provide sufficient information to fix any problem that has
occurred. Exceptions are the default error handling of .Net and almost
every object can throw them in some situation. Catch handlers around
every call is not realistic but the level of detail I add to the NDC is
sufficient.
 
The problem is that if I log an exception message at the catch handler,
I have lost the context of the NDC and the resultant log message is
unhelpful. What are the other options? What design guidelines do you set
down?
 
i) Log the exception's call stack
 
    This does not give presentable messages
 
ii) Log and throw at the same time
 
    This can cause the same message to be logged repeatedly through the
hierarchy as the error ripples up to the top level. Ugly and harms
admin's ability to use log4net to trigger actions based on trace message
contents.
 
c) Append the NDC to an exception message
 
    Suffers from both the previous problems - its not nice that the NDC
becomes part of them message and rethrowing an exception will cause
multiple copies of the NDC.
 
 
Thanks in advance for your ideas,
 
Duncan
 
    

Mime
View raw message