Look at AbstractAppender. You will see that it exposes error methods that Appender implementations can use.
Ralph On Jul 18, 2013, at 10:56 AM, Nick Williams wrote: > Well, as long as the Managers always propagate the error back to the > Appender, then it shouldn't be a problem, right? > > Where is the ErrorHandler supposed to be used? Is it in each Appender, or is > it used in whatever calls all of the Appenders (and, in that case, why > wouldn't the use be consistent?)? > > Nick > > On Jul 18, 2013, at 1:07 AM, Ralph Goers wrote: > >> The ErrorHandler is there primarily to avoid endlessly logging the same >> error message every time a log event fails in the appender. Unfortunately, >> this isn't used consistently and it is difficult to use from Managers, which >> is where most of the errors are going to occur. >> >> Ralph >> >> On Jul 17, 2013, at 3:38 PM, Nick Williams wrote: >> >>> Okay. So there are two things we need to think about here: >>> >>> 1) The Appender interface contains a method named isExceptionSuppressed(). >>> I've never liked that name anyway (the grammar is awkward). Do we want to >>> rename this method? Some ideas: areExceptionsIgnored(), >>> shouldIgnoreExceptions(), ignoreExceptions(). >>> >>> 2) All of the appenders have a suppressExceptions configuration attribute >>> (JSON or XML). Do we want to rename this attribute? Some ideas: >>> exceptionsIgnored, ignoreExceptions. >>> >>> Also, something I'm not quite sure I understand. How does the >>> isExceptionSuppressed() method relate to the ErrorHandler interface? What's >>> the purpose for having both? >>> >>> Nick >>> >>> On Jul 17, 2013, at 5:27 PM, Paul Benedict wrote: >>> >>>> Aren't we really just talking about ignoring exceptions? If so, "ignore" >>>> is much better than "suppressing" for the reason I raised. >>>> >>>> >>>> On Wed, Jul 17, 2013 at 5:10 PM, Gary Gregory <[email protected]> >>>> wrote: >>>> On Wed, Jul 17, 2013 at 5:48 PM, Paul Benedict <[email protected]> >>>> wrote: >>>> The phrase "suppressed exception" actually means something specific in the >>>> JDK. Are you okay with using the same terminology? >>>> http://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html >>>> >>>> This is confusing IMO, we need a better name. >>>> >>>> Gary >>>> >>>> >>>> >>>> On Wed, Jul 17, 2013 at 4:42 PM, Nick Williams >>>> <[email protected]> wrote: >>>> Appender specifies a method, isExceptionSuppressed(), which indicates >>>> whether exceptions thrown while appending events should be suppressed >>>> (logged instead of re-thrown). >>>> >>>> AbstractAppender implements this method with a private handleExceptions >>>> field and a handleExceptions constructor argument. isExceptionSuppressed() >>>> returns handleExceptions (so, supposedly, "handle exceptions" means "take >>>> care of exceptions instead of the user having to take care of exceptions"). >>>> >>>> Everybody that extends AbstractAppender uses the same handleExceptions >>>> constructor argument. They all define a suppressExceptions XML attribute >>>> that is assigned to the handleExceptions constructor argument in the >>>> static plugin factory method. >>>> >>>> This is all very confusing to me. I just realize that I have misunderstood >>>> "handleExceptions" this whole time in the database appenders and have >>>> assumed it was the opposite of isExceptionSuppressed() / >>>> suppressExceptions (and, thus, have written incorrect code). >>>> >>>> Does anyone have a problem with me renaming handleExceptions to >>>> exceptionSuppressed (to match the JavaBean isExceptionSuppressed method) >>>> to make this less confusing? >>>> >>>> Nick >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: [email protected] >>>> For additional commands, e-mail: [email protected] >>>> >>>> >>>> >>>> >>>> -- >>>> Cheers, >>>> Paul >>>> >>>> >>>> >>>> -- >>>> E-Mail: [email protected] | [email protected] >>>> Java Persistence with Hibernate, Second Edition >>>> JUnit in Action, Second Edition >>>> Spring Batch in Action >>>> Blog: http://garygregory.wordpress.com >>>> Home: http://garygregory.com/ >>>> Tweet! http://twitter.com/GaryGregory >>>> >>>> >>>> >>>> -- >>>> Cheers, >>>> Paul >>> >> >
