
Create a custom evaluator which returns true on events of level ERROR *or* on events marked with "FLUSH_SMTP". Before exiting your application you call: Marker flush = MarkerFactory.getMarker("FLUSH_SMTP"); logger.debug(flush, "Application exiting"); Does it make sense? Jason Buberel wrote:
Possibly - that is what I was hoping to achieve with hivemodule's Discardable interface. However, I could just as easily (were the method 'flush' a public method that would trigger the sending of the email) add something like this near the end of my application:
Logger EMAIL_LOGGER = LoggerFactory.getLogger("email"); EMAIL_LOGGER.flush();
-jason
Ceki Gulcu-2 wrote:
Hi Jason,
Is there a specific point in your application when you know that it is about to be terminated. Put differently, can you call a specific function (to be discussed later) just before exiting your app?
Jason Buberel wrote:
Here is the behavior I currently observe:
I am using an SMTPAppender to delivery logging messages to my Inbox. By default, the SMTPAppender implementation that comes with Logback will trigger the sending of an email (including all accumulated messages) upon receipt of an ERROR level logging message.
As a result of the default behavior, you can end up in a situation where you generate 100 INFO level messages to the SMTPAppender and when your application exits, no email will have been sent. Those 100 INFO-level logging messages will be discarded.
Here is the behavior I would like to achieve:
I would like to implement an EventEvaluator or TriggerPolicy that would force the email to be sent at time of exit or termination. I know that overriding finalize() is not a reliable method of doing this, as there is no guarantee that the VM will actually call it.
I did try using hivemodule's Discardable interface in a subclass of SMTPAppender, which I use elsewhere in my application, but ran into problems with class loaders and the like.
Any suggestions on the best way to achieve this - guaranteed flush/send of the email message if there are any unsent events in the queue?
-jason
-- Ceki Gülcü Logback: The reliable, generic, fast and flexible logging framework for Java. http://logback.qos.ch _______________________________________________ Logback-user mailing list Logback-user@qos.ch http://qos.ch/mailman/listinfo/logback-user
-- Ceki Gülcü Logback: The reliable, generic, fast and flexible logging framework for Java. http://logback.qos.ch