So far my review is going well. I worked on the site based on Remko's nice review. I think we can build a new site based on trunk when the jars are released.
Gary On Sun, Sep 20, 2015 at 7:04 PM, Ralph Goers <[email protected]> wrote: > This is a vote to release Log4j 2.4, the next version of the Log4j 2 > project. > > Please download, test, and cast your votes on the log4j developers list. > [] +1, release the artifacts > [] -1, don't release because... > > The vote will remain open for 72 hours (or more if required). All > votes are welcome, but only Logging PMC votes are “officially” counted. As > always, at least 3 +1 votes and more positive than negative votes are > required. > > Changes in this version include: > > > New features: > > o LOG4J2-635: Add support for configuration via Properties. > > o LOG4J2-952: Add ConfigurationBuilder. > > o LOG4J2-599: Added support for Java 8 lambda expressions to lazily > construct a log message only if > > the requested log level is enabled. > > o LOG4J2-1118: Updated Logger wrapper generator tool to add Java 8 lambda > support for custom log levels. > > o LOG4J2-1107: New Appender for Apache Kafka. Thanks to Mikael Ståldal. > > o LOG4J2-1113: New publisher Appender for ZeroMQ (using JeroMQ). Thanks > to Gary Gregory. > > o LOG4J2-1088: Add Comma Separated Value (CSV) layouts for parameter and > event logging. Thanks to Gary Gregory. > > o LOG4J2-1090: Add Core Configurator APIs to change a logger's level. > > o LOG4J2-1105: Add API org.apache.logging.log4j.Level.isInRange(Level, > Level). Thanks to Gary Gregory. > > o LOG4J2-1106: Add a LevelRangeFilter class. Thanks to Gary Gregory. > > o LOG4J2-1076: Added support for system nanosecond time in pattern layout. > > o LOG4J2-1075: Added support for compressing to bzip2 format on file > rollover. > > o LOG4J2-1077: Support additional Apache Commons Compress compression > formats on rollover: Deflate, Pack200, XY. > > o LOG4J2-767: New module for Liquibase integration. Thanks to Mikael > Ståldal. > > o LOG4J2-1023: New RewritePolicy for changing level of a log event. > Thanks to Mikael Ståldal. > > o LOG4J2-1015: Add a way to route messages based on the %marker in Layout > for RoutingAppender. Thanks to Daniel Marcotte. > > o LOG4J2-1050: Add a Log4jLookup class to help write log files relative > to log4j2.xml. Thanks to Adam Retter. > > o LOG4J2-1057: Add API > org.apache.logging.log4j.LogManager.getFormatterLogger(). > > o LOG4J2-1066: Expose Log4jContextFactory's ShutdownCallbackRegistry. > Thanks to Charles Allen. > > > Fixed Bugs: > > o LOG4J2-1121: Fixed potential race condition on reconfiguration. > Introduced ReliabilityStrategy to facilitate > > switching between different mechanisms for preventing log events > from being dropped on reconfiguration. > > o LOG4J2-1123: Core Configurator.initialize(String, ClassLoader, String) > fails to work when config location is a file path. Thanks to Gary Gregory. > > o LOG4J2-1117: OutputStreamManager in ConsoleAppender leaking managers. > Thanks to Marcus Thiesen. > > o LOG4J2-1044: Write pending events to Flume when the appender is stopped. > > o LOG4J2-1108: NullPointerException when passing null to > java.util.logging.Logger.setLevel(). Thanks to Mikael Ståldal. > > o LOG4J2-1110: org.apache.logging.log4j.jul.CoreLogger.setLevel() checks > for security permission too late. > > o LOG4J2-1084: Misleading StatusLogger WARN event in LogManager with > java.util.Map. Thanks to Philipp Schneider. > > o LOG4J2-1051: NoClassDefFoundError when starting app on Google App > Engine. Thanks to Lukasz Lenart. > > o LOG4J2-684: ExtendedThrowablePatternConverter does not print suppressed > exceptions. Thanks to Joern Huxhorn, Mauro Molinari. > > o LOG4J2-1069: Improper handling of JSON escape chars when deserializing > JSON log events. Thanks to Sam Braam. > > o LOG4J2-1068: Exceptions not logged when using TcpSocketServer + > SerializedLayout. Thanks to Andy McMullan. > > o LOG4J2-1067: ThrowableProxy getExtendedStackTraceAsString throws NPE on > deserialized nested exceptions. Thanks to Sam Braam. > > o LOG4J2-1049: AsyncAppender now resets the thread interrupted flag after > catching InterruptedException. Thanks to Robert Schaft. > > o LOG4J2-1048: FileConfigurationMonitor unnecessarily calls > System.currentTimeMillis() causing high CPU usage. Thanks to Nikhil. > > o LOG4J2-1037: Backward compatibility issue in log4j-1.2-api NDC pop() > and peek(). Thanks to Marc Dergacz. > > o LOG4J2-1025: Custom java.util.logging.Level gives null Log4j Level and > causes NPE. Thanks to Mikael Ståldal. > > o LOG4J2-1033: SimpleLogger creates unnecessary Map objects by calling > ThreadContext.getContext() instead of getImmutableContext(). Thanks to > Mikael Ståldal. > > o LOG4J2-1026: HighlightConverter does not obey noConsoleNoAnsi. > > o LOG4J2-1019: ZipCompressAction leaves files open until GC when an IO > error takes place. > > o LOG4J2-1020: GzCompressAction leaves files open until GC when an IO > error takes place. > > o LOG4J2-1038: Incorrect documentation for layout default charset. Thanks > to Gili. > > o LOG4J2-1042: Socket and Syslog appenders don't take timeout into > account at startup. Thanks to Guillaume Turri. > > o LOG4J2-934: Circular suppressed Exception throws StackOverflowError. > Thanks to Kenneth Gendron. > > o LOG4J2-1046: Circular Exception cause throws StackOverflowError. Thanks > to Kenneth Gendron. > > o LOG4J2-982: Use System.nanoTime() to measure time intervals. Thanks to > Mikhail Mazurskiy. > > o LOG4J2-1045: Externalize log4j2.xml via URL resource. Thanks to Günter > Albrecht. > > o LOG4J2-1058: Log4jMarker#contains(String) does not respect > org.slf4j.Marker contract. Thanks to Daniel Branzea. > > o LOG4J2-1060: Log4jMarker#contains(Marker) does not respect > org.slf4j.Marker contract. > > o LOG4J2-1061: Log4jMarker#remove(Marker) does not respect > org.slf4j.Marker contract. > > o LOG4J2-1062: Log4jMarker#add(Marker) does not respect org.slf4j.Marker > contract. > > o LOG4J2-1064: org.apache.logging.slf4j.Log4jMarker does not implement > org.slf4j.Marker.equals(Object) org.slf4j.Marker.hashCode(). > > o LOG4J2-889: Header in layout should not be written on application > startup if appending to an existing file. Fixes LOG4J2-1030. Thanks to > Maciej Karaś, Kenneth Leider. > > o LOG4J2-918: Clarify documentation for combining async with sync loggers. > > o LOG4J2-1078: GelfLayout throws exception if some log event fields are > null. Thanks to Mikael Ståldal. > > > Changes: > > o LOG4J2-1017: Update Java platform from Java 6 to 7. From this version > onwards, log4j 2 requires Java 7. > > o LOG4J2-812: PatternLayout timestamp formatting performance improvement: > replaced synchronized SimpleDateFormat with > > Apache Commons FastDateFormat. This and better caching resulted in > a ~3-30X faster timestamp formatting. > > o LOG4J2-1097: PatternLayout timestamp formatting performance > improvement: predefined date formats (and variants using > > a period '.' millisecond separator instead of ',') are now > formatted ~2-10X faster than other date formats. > > o LOG4J2-1096: Improved performance of > ParameterizedMessage::getFormattedMessage by ~2X. > > o LOG4J2-1120: LoggerConfig performance improvements: avoid unnecessary > lock acquisition, use more efficient data structure. > > o LOG4J2-1125: PatternLayout performance improvement by caching and > reusing a ThreadLocal StringBuilder. > > o LOG4J2-1114: Add thread name to status logger layout. > > o LOG4J2-1010: Pass log event when interpolating logger properties. > > o LOG4J2-1044: Support batchSize in FlumeAvroManager. > > o LOG4J2-1065: Define org.apache.logging.log4j.Marker.equals(Object) and > org.apache.logging.log4j.Marker.hashCode(). > > o LOG4J2-1063: Avoid creating temporary array object in > org.apache.logging.slf4j.Log4jMarker.iterator(). > > o LOG4J2-890: log4j-web-2.1 should workaround a bug in JBOSS EAP 6.2. > Thanks to Hassan Kalaldeh, Robert Andersson, Remko Popma. > > o LOG4J2-403: MongoDB appender, username and password should be optional. > Thanks to Poorna Subhash P, Jeremy Lautman. > > o LOG4J2-1035: Log4j2 tries to SystemClassLoader when running on Google > AppEngine. > > o LOG4J2-1022: Allow a list of keys to be specified in the MDC pattern > converter. > > o LOG4J2-959: Fix FindBugs DM_DEFAULT_ENCODING bug in > SimpleLogger.logMessage() and simplify code. > > o LOG4J2-1036: Update Apache Flume from 1.5.2 to 1.6.0. > > o LOG4J2-1041: Update MongoDB driver from 2.11.2 to 2.13.2. > > o LOG4J2-1018: Update database tests from H2 1.3.175 to 1.3.176. > > o LOG4J2-1070: Update Java Mail from 1.5.2 to 1.5.4. > > o LOG4J2-1079: Update Jackson from 2.5.3 to 2.5.4. > > o LOG4J2-1879: Update Jackson from 2.5.4 to 2.6.0. > > o LOG4J2-1092: Update Jackson from 2.6.0 to 2.6.1. > > o LOG4J2-1104: Update Apache Commons Compress from 1.9 to 1.10. > > > Removed: > > o Removed experimental interface LevelLogger which got committed to master > by mistake. > > Tag:https:// > <https://git-wip-us.apache.org/repos/asf?p=logging-log4j2.git;a=tree;h=380e13cd7ab965942f1d5cfabd73dd056d728b28;hb=383a8194acab4a740d22b69c023ca3af6cb9c664> > git-wip-us.apache.org/repos/asf?p=logging-log4j2.git;a=tree;h=380e13cd7ab965942f1d5cfabd73dd056d728b28;hb=383a8194acab4a740d22b69c023ca3af6cb9c664 > or > > a) for a new copy do "git clone > https://git-wip-us.apache.org/repos/asf/logging-log4j2.git" and then "git > checkout tags/log4j-2.4" > b) for an existing working copy to “git pull” and then “git checkout > tags/log4j-2.4” > > Web Site: http://people.apache.org/~rgoers/log4j2/ > > Artifacts: > https://repository.apache.org/content/repositories/orgapachelogging-1015 > > You may download all the artifacts by executing: > > wget -e robots=off --cut-dirs=7 -nH -r -p -np --no-check-certificate > https://repository.apache.org/content/repositories/orgapachelogging-1015/org/apache/logging/log4j/ > > Ralph > > > > > > -- E-Mail: [email protected] | [email protected] Java Persistence with Hibernate, Second Edition <http://www.manning.com/bauer3/> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/> Spring Batch in Action <http://www.manning.com/templier/> Blog: http://garygregory.wordpress.com Home: http://garygregory.com/ Tweet! http://twitter.com/GaryGregory
