2014-10-28 1 views
2

모든 오류에 대한 전자 메일을 보내는 Log4Net appender가 있습니다. 몇 가지 이벤트가 발생한 후에 이메일을 보내고 모든 이벤트를 하나의 이메일에 포함 시키길 원합니다.Log4net에서 n 개의 이벤트 이후에 전자 메일 보내기

log4net에서 가능합니까?

<appender name="SmtpAppender" type="log4net.Appender.SmtpAppender,log4net"> 
    <to value="" /> 
    <from value="" /> 
    <subject value="Error email" /> 
    <smtphost value="" /> 
    <bufferSize value=""/> 
    <lossy value="true"/> 
    <evaluator type="log4net.Core.LevelEvaluator,log4net"> 
     <threshold value="ERROR"/> 
    </evaluator> 
    <layout type="log4net.Layout.PatternLayout,log4net"> 
     <conversionpattern value="%property{log4net:HostName} :: %level :: %message %newlineLogger: %logger%newlineThread: %thread%newlineDate: %date%newlineNDC: %property{NDC}%newline%newline" /> 
    </layout> 
</appender> 
+1

을 발생하는 방법에 대한 자세한 제어를 필요로하지 않는 직접 경우 링크에 기술을 사용 할 수는 SMTP 펜더 직접 손실 특성을 가지고 있습니다 만, 제발 'SmtpAppender'를 확장하면서 [this post] (http://andrewchaa.me.uk/2013/01/07/sending-errors-in-a-roll-up-digest-email-with-log4net/)를 확인하십시오. –

답변

0

당신은 당신의 이메일에 직접 n 개의 이벤트를 그룹화 이메일을받을 bufferSize 속성을 설정할 수 있습니다. 이미 SmtpAppender에 있습니다.

로그가 보내는 것 (예 : 오류 이전의 모든 x 이벤트)을보다 잘 제어하려면 원하는 버퍼 크기와 손실이있는 태도로 BufferingForwardingAppender을 사용할 수 있습니다. 출력을 전자 메일 첨부 자로 연결하고 문맥 상 오류가 발생합니다. 이렇게하면 필요한 경우에만 컨텍스트에서 오류를 수신 할 수 있습니다.

로깅이 내가 아는 그 내장은 어디에도 없습니다