[
https://issues.apache.org/jira/browse/LOG4NET-283?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13100935#comment-13100935
]
Ron Grabowski commented on LOG4NET-283:
---------------------------------------
I could see sending an email when the appender goes off-line being handy:
SendEmailOnlyOnceErrorHandler
> OnlyOnceErrorHandler is not subclass-friendly
> ---------------------------------------------
>
> Key: LOG4NET-283
> URL: https://issues.apache.org/jira/browse/LOG4NET-283
> Project: Log4net
> Issue Type: Improvement
> Components: Core
> Affects Versions: 1.2.10
> Environment: Windows 7, IIS 7, .Net 3.5, C#
> Reporter: Randar Puust
> Fix For: 1.2 Maintenance Release
>
>
> If you ever try to use the ErrorHandler attribute with a custom error
> handler, it won't write out the messages. For example:
> <appender name="Database_Appender" type="log4net.Appender.AdoNetAppender">
> <errorHandler type="CHO.Next.Global.LogWriterErrorHandler,
> CHO.Next.Global" />
> Where the class is defined as:
> public class LogWriterErrorHandler : OnlyOnceErrorHandler
> {
>
> public new void Error(string message)
> {
> Error(message, null);
> }
> public new void Error(string message, Exception e)
> {
> Error(message, e, ErrorCode.GenericFailure);
> }
> public new void Error(string message, Exception e, ErrorCode
> errorCode)
> {
> // write to a file here
> }
> }
>
> This was specified as a fix on a few posts like this
> http://www.mail-archive.com/[email protected]/msg04378.html and
> there hasn't been anything to correct it.
> The reason this won't work is that Error is not virtual. Although the
> LogWriterErrorHandler is instantiated and the constructor is called, when the
> appender makes a call to this.ErrorHandler.Error, it calls the base class of
> OnlyOnceErrorHandler and not LogWriterErrorHandler.
> I would recommend you make the Error methods in AppenderSkeleton virtual so
> that they can be overriden. Otherwise, what is the value of even having the
> ErrorHandler attribute available on the appender?
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira