0

I would like to save everything in a log file and receive mails containing 512 messages per mail.

RollingFileAppender works fine. But in emails I receive sometimes 1 message in mail, sometimes 4 messages (not the same ones).

I tried MemoryAppender too. There I have also 1-2 messages in queue, nothing more.

I tried "lossy" SmtpAppender, the result is same. What should I change?

My configuration is here

<log4net>
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
  <file value="c:\temp\log-" />
  <bufferSize value="0" />
  <appendToFile value="true" />
  <rollingStyle value="Composite" />
  <param name="DatePattern" value="yyyy.MM.dd'.log'" />
  <maxSizeRollBackups value="-1" />
  <maximumFileSize value="10MB" />
  <staticLogFileName value="false" />
  <layout type="log4net.Layout.PatternLayout">
    <conversionPattern value="%date %-5level - %message%newline" />
  </layout>
</appender>
<appender name="SmtpAppender" type="log4net.Appender.SmtpAppender">
  <bufferSize value="512" />
  <lossy value="false" />
  <authentication value="Basic" />
  <to value="test@test.com" />
  <from value="test@test.com" />
  <username value="test@test.com" />
  <password value="xxxxx" />
  <subject value="My subject" />
  <smtpHost value="mail.test.com" />
  <layout type="log4net.Layout.PatternLayout">
    <conversionPattern value="%date %-5level - %message%newline" />
  </layout>
</appender>
<root>
  <level value="ALL" />
  <appender-ref ref="RollingLogFileAppender" />
  <appender-ref ref="SmtpAppender" />
</root>
</log4net>
adyusuf
  • 806
  • 1
  • 11
  • 27
  • 1
    Some explanations of "lossy": http://apache-logging.6191.n7.nabble.com/Lossy-Value-in-SMTP-Appender-Possible-Bug-td21826.html http://mail-archives.apache.org/mod_mbox/logging-log4net-user/200509.mbox/%3CDDEB64C8619AC64DBC074208B046611C7694A9@kronos.neoworks.co.uk%3E – Clay Nov 16 '12 at 00:06

1 Answers1

2

The following appender config works for me (I get 6 log messages at a time):

    <appender name="SmtpAppender" type="log4net.Appender.SmtpAppender">
        <to value="name@server.com" />
        <from value="name@server.com" />
        <subject value="Log Email" />
        <smtpHost value="email.test.com" />
        <bufferSize value="5" />
        <lossy value="false" />
        <layout type="log4net.Layout.PatternLayout">
            <conversionPattern value="%property{log4net:HostName} :: %date %level %logger [%thread] - %message%newline" />
        </layout>
    </appender>

Do your log messages have multiple lines perhaps?

Clay
  • 10,885
  • 5
  • 47
  • 44