Uploaded image for project: 'Log4j 2'
  1. Log4j 2
  2. LOG4J2-1071

Allow for bufferSize=0 in SMTP appender

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 2.3
    • 2.9.0
    • Appenders
    • None

    Description

      From the doc:
      "The number of logging events delivered in this e-mail depend on the value of BufferSize option. The SMTPAppender keeps only the last BufferSize logging events in its cyclic buffer. This keeps memory requirements at a reasonable level while still delivering useful application context. All events in the buffer are included in the email. The buffer will contain the most recent events of level TRACE to WARN preceding the event that triggered the email."
      https://logging.apache.org/log4j/2.x/manual/appenders.html#SMTPAppender

      The bufferSize is the number of messages preceding the message that triggered the event. They might be completely unrelated. One may not want to include them in the email at all, so having a bufferSize of 0 makes sense.

      This is however disallowed in the code:

      Caused by: java.lang.IllegalArgumentException: The maxSize argument (0) is not a positive integer.
      at org.apache.logging.log4j.core.util.CyclicBuffer.<init>(CyclicBuffer.java:41)
      at org.apache.logging.log4j.core.net.SmtpManager.<init>(SmtpManager.java:70)
      at org.apache.logging.log4j.core.net.SmtpManager$SMTPManagerFactory.createManager(SmtpManager.java:338)
      at org.apache.logging.log4j.core.net.SmtpManager$SMTPManagerFactory.createManager(SmtpManager.java:299)
      at org.apache.logging.log4j.core.appender.AbstractManager.getManager(AbstractManager.java:71)
      at org.apache.logging.log4j.core.net.SmtpManager.getSMTPManager(SmtpManager.java:124)
      at org.apache.logging.log4j.core.appender.SmtpAppender.createAppender(SmtpAppender.java:142)

      Attachments

        1. CyclicBuffer.patch
          2 kB
          Ben Ludkiewicz

        Issue Links

          Activity

            People

              Unassigned Unassigned
              benjamin.jaton Benjamin Jaton
              Votes:
              5 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: