2.0-beta5 (2013-04-20)

Changes

Added

  • Added FlumePersistentManager which writes to BerkeleyDB and then writes to Flume asynchronously. (for by Ralph Goers)

  • Expose file appender configuration details via an advertisement mechanism. (for LOG4J2-155 by Scott Deboy)

  • Add support for asynchronous loggers. (for LOG4J2-163 by Ralph Goers, Remko Popma)

  • Add methods is/setEndOfBatch to LogEvent. (for LOG4J2-164 by Ralph Goers, Remko Popma)

  • Add Logger interface APIs to log at given levels. (for LOG4J2-179 by Gary Gregory)

  • Add tag library. (for LOG4J2-187 by Ralph Goers, Nick Williams)

  • Add JMX support. (for LOG4J2-207 by Ralph Goers, Remko Popma)

Changed

  • Allow Logger and LoggerContext to be subclassed. (for LOG4J2-151 by Ralph Goers, Remko Popma)

  • Added ability to include or exclude location information. (for LOG4J2-153 by Ralph Goers, Remko Popma)

  • Allowed Loggers access to the properties in the LoggerConfig. (for LOG4J2-157 by Ralph Goers, Remko Popma)

  • Add RFC 5424 compliant escaping rules to RFC5424Layout. (for LOG4J2-158 by Ralph Goers, Scott Severtson)

  • Move Throwable pattern converter options processing to ThrowableFormatOptions class. (for LOG4J2-160 by Ralph Goers, Joanne Polsky)

  • Move async subproject into core. (for LOG4J2-208 by Ralph Goers, Remko Popma)

  • Async documentation update. (for LOG4J2-214 by Ralph Goers, Remko Popma)

Fixed

  • Add Fragment-Host to MANIFEST.MF for log4j-core. (for LOG4J2-159 by Ralph Goers, Jan Winter)

  • Modify ClassLoaderContextSelector to use the first ClassLoader in the child parent hierarchy that has a Context with a configuration to allow JSPs to use the WebApp’s context and configuration. (for LOG4J2-161 by Ralph Goers)

  • Configurator throws a ClassCastException if LogManager returns a SimpleLoggerContext. (for LOG4J2-167 by Ralph Goers)

  • ConfigurationFactory was adding factories on every call. (for LOG4J2-169 by Ralph Goers)

  • Plugin cache should be reset when addPackages is called. (for LOG4J2-175 by Scott Deboy)

  • Avoid IllegalArgumentException in AsynchAppender. (for LOG4J2-176 by Ralph Goers, Remko Popma)

  • Fix NullPointerException in DatagramOutputStream when flush is called from multiple threads. (for LOG4J2-177 by Ralph Goers, Remko Popma)

  • OutputStreamManager now adds the layout header whenever the OutputStream is set. (for LOG4J2-181 by Ralph Goers)

  • AppenderRefs on AsynchAppender didn’t support the level and filter elements. (for LOG4J2-188 by Ralph Goers, Werner)

  • The blocking parameter did not work properly on AsynchAppender. (for LOG4J2-189 by Ralph Goers, Werner)

  • BaseConfiguration addLoggerAppender saved appender using the Logger name. (for LOG4J2-190 by Ralph Goers, Werner)

  • RollingFastFileAppender (in log4j-async) did not roll over. (for LOG4J2-193 by Ralph Goers, Remko Popma)

  • ThrowableFormatOptionsTest failed on Windows due to CR/LF issue. (for LOG4J2-194 by Ralph Goers, Remko Popma)

  • Unit tests now create files in the target directory. (for LOG4J2-195 by Ralph Goers, Remko Popma)

  • FlumeAvroManager now uses Flume RPCClient. (for LOG4J2-196 by Ralph Goers)

  • FlumeAvroManager now uses Flume RPCClient. (for LOG4J2-198 by Ralph Goers)

  • Highlight subprojects in sub-navigation. (for LOG4J2-199 by Ralph Goers, Remko Popma)

  • LoggerContext method renamed to removeFilter from removeFiler. (for LOG4J2-200 by Ralph Goers, Remko Popma)

  • Fix deadlock in SocketAppender. Added option to not wait for socket reconnect. (for LOG4J2-205 by Ralph Goers)

  • Use the Maven group ID org.apache.logging.log4j for all artifacts. (for LOG4J2-207 by Gary Gregory)

  • MapMessage was not enclosing key value in quotes when generating XML. (for LOG4J2-210 by Ralph Goers, Arkin Yetis)

  • Removing extra spaces in entry and exit method output. (for LOG4J2-211 by Ralph Goers, Nick Williams)

  • Call LoggerContext.stop when the application is shutdown. (for LOG4J2-212 by Ralph Goers)

  • Loggers without a "." had no parent logger. (for LOG4J2-212 by Ralph Goers)