Java日志組件,Apache Log4j 2.0-beta3 發布

Apache Log4j 2 不兼容之前的版本。將你的項目更新至Log4j 2時需要注意地方:
- 需要Java 5
- 簡化了XML配置,并且不兼容 Log4j 1.x
- 已經不支持通過property文件進行配置
- 現在可以通過JSON進行配置
- 盡管Log4j 2沒有直接兼容 Log4j 1.x,但有提供一個橋接可以減少代碼的變化。 </ul>
The Apache Logging team is pleased to announce the Apache log4j 2.0-beta2 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 of the improvements available in Logback while fixing some inherent problems in Logback's
architecture.
This is the fourth release of Log4j 2 and is being made available to encourage use and feedback
from the community.
Bug fixes and enhancements
Changes in this version include:
New features:
o LOG4J2-35: Add interval and modulate options to TimeBasedTriggeringPolicy to allow more
fine-grained control of
when file rolling should occur.
o LOG4J2-58: Add support for filtering packages from stack traces.
o LOG4J2-84: If system property "disableThreadContextStack" is set pushes to the ThreadContext
will be ignored. If
system property "disableThreadContext" is set both puts and pushes will be ignored.
o LOG4J2-83: If system property "disableThreadContextMap" is set puts to the ThreadContext
will be ignored. If
system property "disableThreadContext" is set both puts and pushes will be ignored.
o Add support for ANSI colors by adding the highlight and style pattern converters. Fix pattern
parsing to allow nested patterns.
o Allow the status logging to be directed to stderr or to a file.
o Add getFormats to MultiformatMessage and allow StructuredDataMessage to format as XML.
Fixed Bugs:
o DefaultConfiguration was not starting the Console Appender.
o LOG4J2-92: Converted DynamicThresholdFilter to use KeyValuePair. Fixed bugs in the Map-based
filters
to allow declaration of multiple values for a key to match the documentation.
o LOG4J2-88: Many logging methods in AbstractLogger were set to an incorrect logging level.
catching was
using the THROWING marker and was set to debug instead of error.
o LOG4J2-91: Log4j 1.2 adapter's Category class was missing 3 log methods.
o LOG4J2-84: If the ThreadContext stack is empty the LogEvent will contain a null value to
reduce the overhead of
creating log events and in the size of the serialized object. Changed the ThreadContext
stack to use
a custom stack interface instead of java.util.Stack as that class is overly heavy.
This change will
cause an API incompatibility.
o LOG4J2-83: If the ThreadContext map is empty the LogEvent will contain a null value to
reduce the overhead of creating
log events and in the size of the serialized object.
o LOG4J2-90: Add documentation on client vs server mode to performance page.
o Move variable substitution from PatternLayout to appropriate converters to improve performance.
Changes:
o Made ParameterizedMessage, StringFormattedMessage and ThreadDumpMessage immutable. LocalizedMessage
is
immutable except that it will be updated with the logger name when it is added to
the LogEvent.
Apache Log4j 2.0-beta2 requires a minimum of Java 5 to build and run. Basic compatibility
with
Log4j 1.x is provided through the log4j12-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/ 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!