Niko-O opened a new issue, #3433:
URL: https://github.com/apache/logging-log4j2/issues/3433

   It is too easy to write code like this:
   ```
   try
   {
       doThing();
   }
   catch (ThingFailedException ex)
   {
       logger.error("Doing this thing failed.");
       logger.error("Context ID: " + context.id);
       logger.error("SomeSettings: " + someSetting);
       logger.error(ex);
       throw new WhateverException(ex);
   }
   ```
   Especially if you come back to a project after months and you don't remember 
anything about the log4j API specifics.
   You think you you log everything you need, but you don't get the exception's 
stack trace here. You'd have to write `logger.error("", ex);` here, which is 
extremely unintuitive! Or `logger.catching(ex)`, but that's another special 
thing I'd need to memorize.
   
   I propose to change the default behavior such that the stack trace is 
printed in this case. I don't care how it's achieved, e.g. by adding a `void 
error(Throwable)` overload, or adding a check in the existing `void 
error(Object)` overload. The point is that it should be the default behavior 
because that's what's expected.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@logging.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to