geode-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jinmei Liao (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (GEODE-374) Upgrade Geode to use Log4j 2.4
Date Wed, 06 Jan 2016 17:17:40 GMT

    [ https://issues.apache.org/jira/browse/GEODE-374?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15085857#comment-15085857
] 

Jinmei Liao commented on GEODE-374:
-----------------------------------


ASF GitHub Bot added a comment - 12 minutes ago
GitHub user jinmeiliao opened a pull request:
https://github.com/apache/incubator-geode/pull/67
GEODE-401: upgrade log4j from 2.1 to 2.5. Remove our own configuratio…
…n watcher since log4j now has an almost the same implementation.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/jinmeiliao/incubator-geode feature/GEODE-401
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/incubator-geode/pull/67.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #67
commit ff34c46350bf1b06258c2b0af258dbd8732a91a7
Author: Jinmei Liao <jiliao@pivotal.io>
Date: 2016-01-06T17:02:44Z
GEODE-401: upgrade log4j from 2.1 to 2.5. Remove our own configuration watcher since log4j
now has an almost the same implementation.

> Upgrade Geode to use Log4j 2.4
> ------------------------------
>
>                 Key: GEODE-374
>                 URL: https://issues.apache.org/jira/browse/GEODE-374
>             Project: Geode
>          Issue Type: Improvement
>            Reporter: Kirk Lund
>            Assignee: Jinmei Liao
>              Labels: logging
>
> From announce@apache.org:
> {noformat}
> The Apache Log4j 2 team is pleased to announce the Log4j 2.4 release!
> Apache log4j is a well known framework for logging application behavior. Log4j 2 is an
upgrade to
> Log4j that provides significant improvements over its predecessor, Log4j 1.x, and provides
> many other modern features such as support for Markers, property substitution using Lookups,
and asynchronous
> Loggers. In addition, Log4j 2 will not lose events while reconfiguring.
> This is the eighth GA release. It contains several bugfixes and new features. As of this
release
> Log4j now requires a minimum of Java 7.
> GA Release 2.4
> 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.

> Apache Log4j 2.4 requires a minimum of Java 7 to build and run. Log4j 2.4 and greater
requires Java 7,
> version 2.3 required Java 6.
> Basic compatibility with Log4j 1.x is provided through the log4j-1.2-api component, however
it does not implement some of the
> very implementation specific classes and methods. The package names and Maven groupId
have been changed to
> org.apache.logging.log4j to avoid any conflicts with log4j 1.x.
> For complete information on Apache Log4j 2, including instructions on how to submit bug
reports,
> patches, or suggestions for improvement, see the Apache Apache Log4j 2 website:
> http://logging.apache.org/log4j/2.x/
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message