You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by gg...@apache.org on 2016/07/07 00:23:12 UTC
[01/16] logging-log4j2 git commit: Use a better pname which does not
hide the ivar as well.
Repository: logging-log4j2
Updated Branches:
refs/heads/StyledMessage 8783731f8 -> 423c2b4b2
Use a better pname which does not hide the ivar as well.
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/1496203f
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/1496203f
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/1496203f
Branch: refs/heads/StyledMessage
Commit: 1496203ff23a90847acc5a683cae1d2a5877a2c7
Parents: 5b1c736
Author: Gary Gregory <gg...@apache.org>
Authored: Fri Jul 1 09:10:02 2016 -0700
Committer: Gary Gregory <gg...@apache.org>
Committed: Fri Jul 1 09:10:02 2016 -0700
----------------------------------------------------------------------
.../logging/log4j/core/filter/ThresholdFilter.java | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/1496203f/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/ThresholdFilter.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/ThresholdFilter.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/ThresholdFilter.java
index db7acea..2fafd7c 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/ThresholdFilter.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/ThresholdFilter.java
@@ -46,21 +46,21 @@ public final class ThresholdFilter extends AbstractFilter {
}
@Override
- public Result filter(final Logger logger, final Level level, final Marker marker, final String msg,
+ public Result filter(final Logger logger, final Level testLevel, final Marker marker, final String msg,
final Object... params) {
- return filter(level);
+ return filter(testLevel);
}
@Override
- public Result filter(final Logger logger, final Level level, final Marker marker, final Object msg,
+ public Result filter(final Logger logger, final Level testLevel, final Marker marker, final Object msg,
final Throwable t) {
- return filter(level);
+ return filter(testLevel);
}
@Override
- public Result filter(final Logger logger, final Level level, final Marker marker, final Message msg,
+ public Result filter(final Logger logger, final Level testLevel, final Marker marker, final Message msg,
final Throwable t) {
- return filter(level);
+ return filter(testLevel);
}
@Override
@@ -68,8 +68,8 @@ public final class ThresholdFilter extends AbstractFilter {
return filter(event.getLevel());
}
- private Result filter(final Level level) {
- return level.isMoreSpecificThan(this.level) ? onMatch : onMismatch;
+ private Result filter(final Level testLevel) {
+ return testLevel.isMoreSpecificThan(this.level) ? onMatch : onMismatch;
}
public Level getLevel() {
[04/16] logging-log4j2 git commit: LOG4J2-1440 - Do not delete files
if OnStartupTriggeringPolicy has a minSize of 0.
Posted by gg...@apache.org.
LOG4J2-1440 - Do not delete files if OnStartupTriggeringPolicy has a minSize of 0.
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/b0b4f865
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/b0b4f865
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/b0b4f865
Branch: refs/heads/StyledMessage
Commit: b0b4f86596302b55d51b1b58f9809ff97fa9e646
Parents: bd077fc
Author: Ralph Goers <rg...@nextiva.com>
Authored: Sat Jul 2 13:02:59 2016 -0700
Committer: Ralph Goers <rg...@nextiva.com>
Committed: Sat Jul 2 13:03:53 2016 -0700
----------------------------------------------------------------------
.../core/appender/rolling/DefaultRolloverStrategy.java | 9 +++++----
.../core/appender/rolling/OnStartupTriggeringPolicy.java | 3 +++
.../log4j/core/appender/rolling/RollingFileManager.java | 9 +++++++++
3 files changed, 17 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/b0b4f865/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.java
index 2a83861..dd1f42c 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/DefaultRolloverStrategy.java
@@ -181,7 +181,7 @@ public class DefaultRolloverStrategy implements RolloverStrategy {
/**
* Create the DefaultRolloverStrategy.
- *
+ *
* @param max The maximum number of files to keep.
* @param min The minimum number of files to keep.
* @param fileIndex If set to "max" (the default), files with a higher index will be newer than files with a smaller
@@ -243,7 +243,7 @@ public class DefaultRolloverStrategy implements RolloverStrategy {
/**
* Constructs a new instance.
- *
+ *
* @param minIndex The minimum index.
* @param maxIndex The maximum index.
* @param customActions custom actions to perform asynchronously after rollover
@@ -510,7 +510,7 @@ public class DefaultRolloverStrategy implements RolloverStrategy {
/**
* Perform the rollover.
- *
+ *
* @param manager The RollingFileManager name for current active log file.
* @return A RolloverDescription.
* @throws SecurityException if an error occurs.
@@ -545,7 +545,8 @@ public class DefaultRolloverStrategy implements RolloverStrategy {
}
}
- final FileRenameAction renameAction = new FileRenameAction(new File(currentFileName), new File(renameTo), false);
+ final FileRenameAction renameAction = new FileRenameAction(new File(currentFileName), new File(renameTo),
+ manager.isRenameEmptyFiles());
final Action asyncAction = merge(compressAction, customActions, stopCustomActionsOnError);
return new RolloverDescriptionImpl(currentFileName, false, renameAction, asyncAction);
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/b0b4f865/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/OnStartupTriggeringPolicy.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/OnStartupTriggeringPolicy.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/OnStartupTriggeringPolicy.java
index 12e2b23..a380028 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/OnStartupTriggeringPolicy.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/OnStartupTriggeringPolicy.java
@@ -75,6 +75,9 @@ public class OnStartupTriggeringPolicy implements TriggeringPolicy {
@Override
public void initialize(final RollingFileManager manager) {
if (manager.getFileTime() < JVM_START_TIME && manager.getFileSize() >= minSize) {
+ if (minSize == 0) {
+ manager.setRenameEmptyFiles(true);
+ }
manager.skipFooter(true);
manager.rollover();
manager.skipFooter(false);
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/b0b4f865/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java
index 1caeeb3..9b721bc 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java
@@ -48,6 +48,7 @@ public class RollingFileManager extends FileManager {
private final Semaphore semaphore = new Semaphore(1);
private volatile TriggeringPolicy triggeringPolicy;
private volatile RolloverStrategy rolloverStrategy;
+ private volatile boolean renameEmptyFiles = false;
private static final AtomicReferenceFieldUpdater<RollingFileManager, TriggeringPolicy> triggeringPolicyUpdater =
AtomicReferenceFieldUpdater.newUpdater(RollingFileManager.class, TriggeringPolicy.class, "triggeringPolicy");
@@ -115,6 +116,14 @@ public class RollingFileManager extends FileManager {
super.writeToDestination(bytes, offset, length);
}
+ public boolean isRenameEmptyFiles() {
+ return renameEmptyFiles;
+ }
+
+ public void setRenameEmptyFiles(boolean renameEmptyFiles) {
+ this.renameEmptyFiles = renameEmptyFiles;
+ }
+
/**
* Returns the current size of the file.
* @return The size of the file in bytes.
[09/16] logging-log4j2 git commit: Added icon-tags to Legacy links in
left side nav menu
Posted by gg...@apache.org.
Added icon-tags to Legacy links in left side nav menu
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/b2c30a6b
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/b2c30a6b
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/b2c30a6b
Branch: refs/heads/StyledMessage
Commit: b2c30a6b7ef1e8c66b3c69feaf7de7fe23cea8b9
Parents: 0d45fe8
Author: rpopma <rp...@apache.org>
Authored: Tue Jul 5 22:15:28 2016 +0900
Committer: rpopma <rp...@apache.org>
Committed: Tue Jul 5 22:15:28 2016 +0900
----------------------------------------------------------------------
src/site/site.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/b2c30a6b/src/site/site.xml
----------------------------------------------------------------------
diff --git a/src/site/site.xml b/src/site/site.xml
index 8336e69..be509ba 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -235,7 +235,7 @@
</menu>
- <menu name="Legacy" inherit="top">
+ <menu name="Legacy" inherit="top" img="icon-tags">
<item name="Log4j 1.2" href="http://logging.apache.org/log4j/1.2/"/>
<item name="Log4j 2.3" href="http://logging.apache.org/log4j/log4j-2.3/"/>
</menu>
[16/16] logging-log4j2 git commit: Merge remote-tracking branch
'origin/master' into StyledMessage
Posted by gg...@apache.org.
Merge remote-tracking branch 'origin/master' into StyledMessage
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/423c2b4b
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/423c2b4b
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/423c2b4b
Branch: refs/heads/StyledMessage
Commit: 423c2b4b2723eced39aeba59a5c79536d6009b79
Parents: 8783731 f92062b
Author: ggregory <gg...@apache.org>
Authored: Wed Jul 6 17:22:48 2016 -0700
Committer: ggregory <gg...@apache.org>
Committed: Wed Jul 6 17:22:48 2016 -0700
----------------------------------------------------------------------
RELEASE-NOTES.txt | 60 +-
log4j-1.2-api/pom.xml | 2 +-
log4j-api/pom.xml | 2 +-
log4j-bom/pom.xml | 2 +-
log4j-core/pom.xml | 2 +-
.../appender/rolling/CronTriggeringPolicy.java | 37 +-
.../rolling/DefaultRolloverStrategy.java | 9 +-
.../rolling/OnStartupTriggeringPolicy.java | 3 +
.../core/appender/rolling/PatternProcessor.java | 12 +-
.../appender/rolling/RollingFileManager.java | 10 +
.../rolling/action/CommonsCompressAction.java | 9 +-
.../rolling/action/FileRenameAction.java | 68 +-
.../core/config/ConfigurationScheduler.java | 24 +-
.../log4j/core/config/CronScheduledFuture.java | 43 +-
.../log4j/core/filter/AbstractFilter.java | 3 +-
.../log4j/core/filter/ThresholdFilter.java | 16 +-
.../log4j/core/layout/PatternLayout.java | 15 +-
.../rolling/OnStartupTriggeringPolicyTest.java | 23 +-
.../rolling/RollingAppenderCronTest.java | 9 +
.../rolling/RollingAppenderSizeTest.java | 6 +
.../logging/log4j/junit/CleanFolders.java | 28 +-
log4j-distribution/pom.xml | 2 +-
log4j-flume-ng/pom.xml | 2 +-
log4j-iostreams/pom.xml | 2 +-
log4j-jcl/pom.xml | 2 +-
log4j-jmx-gui/pom.xml | 2 +-
log4j-jul/pom.xml | 2 +-
log4j-liquibase/pom.xml | 2 +-
log4j-nosql/pom.xml | 2 +-
log4j-perf/pom.xml | 2 +-
log4j-samples/configuration/pom.xml | 2 +-
log4j-samples/flume-common/pom.xml | 2 +-
log4j-samples/flume-embedded/pom.xml | 2 +-
log4j-samples/flume-remote/pom.xml | 2 +-
log4j-samples/loggerProperties/pom.xml | 2 +-
log4j-samples/pom.xml | 2 +-
log4j-slf4j-impl/pom.xml | 2 +-
log4j-taglib/pom.xml | 2 +-
log4j-to-slf4j/pom.xml | 2 +-
log4j-web/pom.xml | 2 +-
pom.xml | 10 +-
src/changes/announcement.vm | 2 +-
src/changes/changes.xml | 5562 +++++++++---------
src/site/apt/download.apt.vm | 15 +
src/site/resources/images/logo.png | Bin 41622 -> 40736 bytes
src/site/resources/logo/logo-java-2-2.6.2.png | Bin 0 -> 40736 bytes
src/site/resources/logo/logo-java-2-2.6.2.xcf | Bin 0 -> 66719 bytes
src/site/site.xml | 5 +
48 files changed, 3095 insertions(+), 2920 deletions(-)
----------------------------------------------------------------------
[02/16] logging-log4j2 git commit: Better Javadoc.
Posted by gg...@apache.org.
Better Javadoc.
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/bb77c0e8
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/bb77c0e8
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/bb77c0e8
Branch: refs/heads/StyledMessage
Commit: bb77c0e80ef30e2be64a1d53331b87c4da6399db
Parents: 1496203
Author: Gary Gregory <gg...@apache.org>
Authored: Fri Jul 1 09:13:45 2016 -0700
Committer: Gary Gregory <gg...@apache.org>
Committed: Fri Jul 1 09:13:45 2016 -0700
----------------------------------------------------------------------
.../java/org/apache/logging/log4j/core/filter/AbstractFilter.java | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/bb77c0e8/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/AbstractFilter.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/AbstractFilter.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/AbstractFilter.java
index 9473d70..da53312 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/AbstractFilter.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/filter/AbstractFilter.java
@@ -27,8 +27,7 @@ import org.apache.logging.log4j.message.Message;
/**
* Users should extend this class to implement filters. Filters can be either context wide or attached to
* an appender. A filter may choose to support being called only from the context or only from an appender in
- * which case it will only implement the required method(s). The rest will default to return NEUTRAL.
- *
+ * which case it will only implement the required method(s). The rest will default to return {@link Result#NEUTRAL}.
*/
public abstract class AbstractFilter extends AbstractLifeCycle implements Filter {
[11/16] logging-log4j2 git commit: [maven-release-plugin] prepare
release log4j-2.6.2-rc1
Posted by gg...@apache.org.
[maven-release-plugin] prepare release log4j-2.6.2-rc1
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/a493c04c
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/a493c04c
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/a493c04c
Branch: refs/heads/StyledMessage
Commit: a493c04c046763140612307400f9189d8f0acd28
Parents: 7a3f869
Author: rgoers <ra...@dslextreme.com>
Authored: Tue Jul 5 19:35:19 2016 -0700
Committer: rgoers <ra...@dslextreme.com>
Committed: Tue Jul 5 19:35:19 2016 -0700
----------------------------------------------------------------------
log4j-1.2-api/pom.xml | 2 +-
log4j-api/pom.xml | 2 +-
log4j-bom/pom.xml | 4 ++--
log4j-core/pom.xml | 2 +-
log4j-distribution/pom.xml | 2 +-
log4j-flume-ng/pom.xml | 2 +-
log4j-iostreams/pom.xml | 2 +-
log4j-jcl/pom.xml | 2 +-
log4j-jmx-gui/pom.xml | 2 +-
log4j-jul/pom.xml | 2 +-
log4j-liquibase/pom.xml | 2 +-
log4j-nosql/pom.xml | 2 +-
log4j-perf/pom.xml | 2 +-
log4j-samples/configuration/pom.xml | 2 +-
log4j-samples/flume-common/pom.xml | 2 +-
log4j-samples/flume-embedded/pom.xml | 2 +-
log4j-samples/flume-remote/pom.xml | 2 +-
log4j-samples/loggerProperties/pom.xml | 2 +-
log4j-samples/pom.xml | 2 +-
log4j-slf4j-impl/pom.xml | 2 +-
log4j-taglib/pom.xml | 2 +-
log4j-to-slf4j/pom.xml | 2 +-
log4j-web/pom.xml | 2 +-
pom.xml | 4 ++--
24 files changed, 26 insertions(+), 26 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-1.2-api/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-1.2-api/pom.xml b/log4j-1.2-api/pom.xml
index f2fb132..99abff8 100644
--- a/log4j-1.2-api/pom.xml
+++ b/log4j-1.2-api/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-1.2-api</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-api/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-api/pom.xml b/log4j-api/pom.xml
index fbdb0b3..0de3d40 100644
--- a/log4j-api/pom.xml
+++ b/log4j-api/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-api</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-bom/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-bom/pom.xml b/log4j-bom/pom.xml
index 4c40b90..4b3342b 100644
--- a/log4j-bom/pom.xml
+++ b/log4j-bom/pom.xml
@@ -26,7 +26,7 @@
<description>Apache Log4j Bill of Materials</description>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-bom</artifactId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<packaging>pom</packaging>
<dependencyManagement>
<dependencies>
@@ -131,6 +131,6 @@
</build>
<scm>
- <tag>log4j-2.6.1</tag>
+ <tag>log4j-2.6.2-rc1</tag>
</scm>
</project>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-core/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-core/pom.xml b/log4j-core/pom.xml
index 7ad300d..115b475 100644
--- a/log4j-core/pom.xml
+++ b/log4j-core/pom.xml
@@ -21,7 +21,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-core</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-distribution/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-distribution/pom.xml b/log4j-distribution/pom.xml
index f75be63..22efa30 100644
--- a/log4j-distribution/pom.xml
+++ b/log4j-distribution/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-distribution</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-flume-ng/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-flume-ng/pom.xml b/log4j-flume-ng/pom.xml
index f95dc98..98ff08b 100644
--- a/log4j-flume-ng/pom.xml
+++ b/log4j-flume-ng/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-flume-ng</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-iostreams/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-iostreams/pom.xml b/log4j-iostreams/pom.xml
index 1a7c717..ba6e5b7 100644
--- a/log4j-iostreams/pom.xml
+++ b/log4j-iostreams/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-iostreams</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-jcl/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-jcl/pom.xml b/log4j-jcl/pom.xml
index d776df6..8dc82ac 100644
--- a/log4j-jcl/pom.xml
+++ b/log4j-jcl/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-jcl</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-jmx-gui/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-jmx-gui/pom.xml b/log4j-jmx-gui/pom.xml
index e44ac81..d5e290a 100644
--- a/log4j-jmx-gui/pom.xml
+++ b/log4j-jmx-gui/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-jmx-gui</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-jul/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-jul/pom.xml b/log4j-jul/pom.xml
index ef1bd28..3265435 100644
--- a/log4j-jul/pom.xml
+++ b/log4j-jul/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j</artifactId>
<groupId>org.apache.logging.log4j</groupId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-liquibase/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-liquibase/pom.xml b/log4j-liquibase/pom.xml
index 0ec408b..4a8cb36 100644
--- a/log4j-liquibase/pom.xml
+++ b/log4j-liquibase/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-liquibase</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-nosql/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-nosql/pom.xml b/log4j-nosql/pom.xml
index 872020c..5e4a2e0 100644
--- a/log4j-nosql/pom.xml
+++ b/log4j-nosql/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j</artifactId>
<groupId>org.apache.logging.log4j</groupId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
</parent>
<modelVersion>4.0.0</modelVersion>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-perf/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-perf/pom.xml b/log4j-perf/pom.xml
index 41fc58b..98d3a16 100644
--- a/log4j-perf/pom.xml
+++ b/log4j-perf/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j</artifactId>
<groupId>org.apache.logging.log4j</groupId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-samples/configuration/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-samples/configuration/pom.xml b/log4j-samples/configuration/pom.xml
index 6fea285..e0ac08a 100644
--- a/log4j-samples/configuration/pom.xml
+++ b/log4j-samples/configuration/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j-samples</artifactId>
<groupId>org.apache.logging.log4j.samples</groupId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
</parent>
<artifactId>log4j-samples-configuration</artifactId>
<packaging>jar</packaging>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-samples/flume-common/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-samples/flume-common/pom.xml b/log4j-samples/flume-common/pom.xml
index f78de60..43f1738 100644
--- a/log4j-samples/flume-common/pom.xml
+++ b/log4j-samples/flume-common/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j-samples</artifactId>
<groupId>org.apache.logging.log4j.samples</groupId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
</parent>
<artifactId>log4j-samples-flume-common</artifactId>
<packaging>jar</packaging>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-samples/flume-embedded/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-samples/flume-embedded/pom.xml b/log4j-samples/flume-embedded/pom.xml
index e60959c..50381d8 100644
--- a/log4j-samples/flume-embedded/pom.xml
+++ b/log4j-samples/flume-embedded/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j-samples</artifactId>
<groupId>org.apache.logging.log4j.samples</groupId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
</parent>
<artifactId>log4j-samples-flume-embedded</artifactId>
<packaging>war</packaging>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-samples/flume-remote/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-samples/flume-remote/pom.xml b/log4j-samples/flume-remote/pom.xml
index 8335015..0d8f60d 100644
--- a/log4j-samples/flume-remote/pom.xml
+++ b/log4j-samples/flume-remote/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j-samples</artifactId>
<groupId>org.apache.logging.log4j.samples</groupId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
</parent>
<artifactId>log4j-samples-flume-remote</artifactId>
<packaging>war</packaging>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-samples/loggerProperties/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-samples/loggerProperties/pom.xml b/log4j-samples/loggerProperties/pom.xml
index 4815ec0..b69f2f4 100644
--- a/log4j-samples/loggerProperties/pom.xml
+++ b/log4j-samples/loggerProperties/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j-samples</artifactId>
<groupId>org.apache.logging.log4j.samples</groupId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
</parent>
<artifactId>log4j-samples-loggerProperties</artifactId>
<packaging>jar</packaging>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-samples/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-samples/pom.xml b/log4j-samples/pom.xml
index 0da9a2b..a16ae5d 100644
--- a/log4j-samples/pom.xml
+++ b/log4j-samples/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
<groupId>org.apache.logging.log4j.samples</groupId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-slf4j-impl/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-slf4j-impl/pom.xml b/log4j-slf4j-impl/pom.xml
index 47bf506..0aff38a 100644
--- a/log4j-slf4j-impl/pom.xml
+++ b/log4j-slf4j-impl/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-slf4j-impl</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-taglib/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-taglib/pom.xml b/log4j-taglib/pom.xml
index faeada1..2beb747 100644
--- a/log4j-taglib/pom.xml
+++ b/log4j-taglib/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-taglib</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-to-slf4j/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-to-slf4j/pom.xml b/log4j-to-slf4j/pom.xml
index 7c13741..bb6f404 100644
--- a/log4j-to-slf4j/pom.xml
+++ b/log4j-to-slf4j/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-to-slf4j</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/log4j-web/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-web/pom.xml b/log4j-web/pom.xml
index 39a1f24..34ddcd9 100644
--- a/log4j-web/pom.xml
+++ b/log4j-web/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j</artifactId>
<groupId>org.apache.logging.log4j</groupId>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
</parent>
<modelVersion>4.0.0</modelVersion>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a493c04c/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index cfb5161..763a749 100644
--- a/pom.xml
+++ b/pom.xml
@@ -22,7 +22,7 @@
<artifactId>log4j</artifactId>
<packaging>pom</packaging>
<name>Apache Log4j 2</name>
- <version>2.6.2-SNAPSHOT</version>
+ <version>2.6.2</version>
<parent>
<groupId>org.apache</groupId>
<artifactId>apache</artifactId>
@@ -173,7 +173,7 @@
<connection>scm:git:http://git-wip-us.apache.org/repos/asf/logging-log4j2.git</connection>
<developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/logging-log4j2.git</developerConnection>
<url>https://git-wip-us.apache.org/repos/asf?p=logging-log4j2.git;a=summary</url>
- <tag>log4j-${Log4jReleaseVersion}</tag>
+ <tag>log4j-2.6.2-rc1</tag>
</scm>
<organization>
<name>Apache Software Foundation</name>
[08/16] logging-log4j2 git commit: Update site
Posted by gg...@apache.org.
Update site
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/0d45fe89
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/0d45fe89
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/0d45fe89
Branch: refs/heads/StyledMessage
Commit: 0d45fe891f5796061616610d52e93bf8cbe28b10
Parents: 409340d
Author: Ralph Goers <rg...@nextiva.com>
Authored: Mon Jul 4 23:25:58 2016 -0700
Committer: Ralph Goers <rg...@nextiva.com>
Committed: Mon Jul 4 23:25:58 2016 -0700
----------------------------------------------------------------------
src/site/apt/download.apt.vm | 15 +++++++++++++++
src/site/resources/images/logo.png | Bin 41622 -> 40736 bytes
src/site/resources/logo/logo-java-2-2.6.2.png | Bin 0 -> 40736 bytes
src/site/resources/logo/logo-java-2-2.6.2.xcf | Bin 0 -> 66719 bytes
src/site/site.xml | 5 +++++
5 files changed, 20 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/0d45fe89/src/site/apt/download.apt.vm
----------------------------------------------------------------------
diff --git a/src/site/apt/download.apt.vm b/src/site/apt/download.apt.vm
index 13bffd0..d414fcc 100644
--- a/src/site/apt/download.apt.vm
+++ b/src/site/apt/download.apt.vm
@@ -63,6 +63,21 @@ Download Apache Log4j 2
* Previous Releases
+ Log4j 2.3 was the last 2.x release to support Java 6. Those artifacts can be found at:
+
+*-------------------------+---------+----------+-----------+
+| | Mirrors | Checksum | Signature |
+*-------------------------+---------+----------+-----------+
+| Apache Log4j 2 binary (tar.gz) | {{{http://www.apache.org/dyn/closer.lua/logging/log4j/2.3/apache-log4j-2.3-bin.tar.gz} apache-log4j-2.3-bin.tar.gz}} | {{{https://www.apache.org/dist/logging/log4j/2.3/apache-log4j-2.3-bin.tar.gz.md5} apache-log4j-2.3-bin.tar.gz.md5}} | {{{https://www.apache.org/dist/logging/log4j/2.3/apache-log4j-2.3-bin.tar.gz.asc} apache-log4j-2.3-bin.tar.gz.asc}} |
+*-------------------------+---------+----------+-----------+
+| Apache Log4j 2 binary (zip) | {{{http://www.apache.org/dyn/closer.lua/logging/log4j/2.3/apache-log4j-2.3-bin.zip} apache-log4j-2.3-bin.zip}} | {{{https://www.apache.org/dist/logging/log4j/2.3/apache-log4j-2.3-bin.zip.md5} apache-log4j-2.3-bin.zip.md5}} | {{{https://www.apache.org/dist/logging/log42/apache-log4j-2.3-bin.zip.asc} apache-log4j-2.3-bin.zip.asc}} |
+*-------------------------+---------+----------+-----------+
+| Apache Log4j 2 source (tar.gz) | {{{http://www.apache.org/dyn/closer.lua/logging/log4j/2.3/apache-log4j-2.3-src.tar.gz} apache-log4j-2.3-src.tar.gz}} | {{{https://www.apache.org/dist/logging/log4j/2.3/apache-log4j-2.3-src.tar.gz.md5} apache-log4j-2.3-src.tar.gz.md5}} | {{{https://www.apache.org/dist/logging/log4j/2.3/apache-log4j-2.3-src.tar.gz.asc} apache-log4j-2.3-src.tar.gz.asc}} |
+*-------------------------+---------+----------+-----------+
+| Apache Log4j 2 source (zip) | {{{http://www.apache.org/dyn/closer.lua/logging/log4j/2.3/apache-log4j-2.3-src.zip} apache-log4j-2.3-src.zip}} | {{{https://www.apache.org/dist/logging/log4j/2.3/apache-log4j-2.3-src.zip.md5} apache-log4j-2.3-src.zip.md5}} | {{{https://www.apache.org/dist/logging/log42/apache-log4j-2.3-src.zip.asc} apache-log4j-2.3-src.zip.asc}} |
+*-------------------------+---------+----------+-----------+
+
+
All previous releases of Apache log4j can be found in the
{{{http://archive.apache.org/dist/logging/log4j}archive repository}}.
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/0d45fe89/src/site/resources/images/logo.png
----------------------------------------------------------------------
diff --git a/src/site/resources/images/logo.png b/src/site/resources/images/logo.png
index 7c30e4c..c0fef8d 100644
Binary files a/src/site/resources/images/logo.png and b/src/site/resources/images/logo.png differ
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/0d45fe89/src/site/resources/logo/logo-java-2-2.6.2.png
----------------------------------------------------------------------
diff --git a/src/site/resources/logo/logo-java-2-2.6.2.png b/src/site/resources/logo/logo-java-2-2.6.2.png
new file mode 100644
index 0000000..c0fef8d
Binary files /dev/null and b/src/site/resources/logo/logo-java-2-2.6.2.png differ
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/0d45fe89/src/site/resources/logo/logo-java-2-2.6.2.xcf
----------------------------------------------------------------------
diff --git a/src/site/resources/logo/logo-java-2-2.6.2.xcf b/src/site/resources/logo/logo-java-2-2.6.2.xcf
new file mode 100644
index 0000000..1a2ce62
Binary files /dev/null and b/src/site/resources/logo/logo-java-2-2.6.2.xcf differ
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/0d45fe89/src/site/site.xml
----------------------------------------------------------------------
diff --git a/src/site/site.xml b/src/site/site.xml
index 2aa49a0..8336e69 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -235,6 +235,11 @@
</menu>
+ <menu name="Legacy" inherit="top">
+ <item name="Log4j 1.2" href="http://logging.apache.org/log4j/1.2/"/>
+ <item name="Log4j 2.3" href="http://logging.apache.org/log4j/log4j-2.3/"/>
+ </menu>
+
<menu name="Components" inherit="top" img="icon-cog">
<item name="API" href="log4j-api/index.html"/>
<item name="Implementation" href="log4j-core/index.html"/>
[06/16] logging-log4j2 git commit: LOG4J2-904 - If copy and delete
fails in rename action then resort to truncating the source file after
copying it.
Posted by gg...@apache.org.
LOG4J2-904 - If copy and delete fails in rename action then resort to truncating the source file after copying it.
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/d5eaed8b
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/d5eaed8b
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/d5eaed8b
Branch: refs/heads/StyledMessage
Commit: d5eaed8b4b9ffc075e58e0ffcaad27212d34626e
Parents: 730a1cc
Author: Ralph Goers <rg...@nextiva.com>
Authored: Mon Jul 4 10:59:30 2016 -0700
Committer: Ralph Goers <rg...@nextiva.com>
Committed: Mon Jul 4 10:59:30 2016 -0700
----------------------------------------------------------------------
.../rolling/action/FileRenameAction.java | 68 +++++++++++++++-----
src/changes/changes.xml | 3 +
2 files changed, 54 insertions(+), 17 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/d5eaed8b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/FileRenameAction.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/FileRenameAction.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/FileRenameAction.java
index dc23555..023c869 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/FileRenameAction.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/FileRenameAction.java
@@ -17,8 +17,12 @@
package org.apache.logging.log4j.core.appender.rolling.action;
import java.io.File;
+import java.io.IOException;
+import java.io.PrintWriter;
import java.nio.file.Files;
import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.nio.file.StandardCopyOption;
/**
* File rename action.
@@ -99,9 +103,9 @@ public class FileRenameAction extends AbstractAction {
* @return true if successfully renamed.
*/
public static boolean execute(final File source, final File destination, final boolean renameEmptyFiles) {
- if (renameEmptyFiles || source.length() > 0) {
+ if (renameEmptyFiles || (source.length() > 0)) {
final File parent = destination.getParentFile();
- if (parent != null && !parent.exists()) {
+ if ((parent != null) && !parent.exists()) {
// LOG4J2-679: ignore mkdirs() result: in multithreaded scenarios,
// if one thread succeeds the other thread returns false
// even though directories have been created. Check if dir exists instead.
@@ -111,28 +115,58 @@ public class FileRenameAction extends AbstractAction {
return false;
}
}
- final Path sourcePath = source.toPath();
try {
- Files.move(sourcePath, destination.toPath());
- return true;
- } catch (final Exception ex) {
- LOGGER.error("Unable to rename {} to {} due to {} - {}", source.toString(), destination.toString(),
- ex.getClass().getSimpleName(), ex.getMessage());
try {
-
- Files.copy(sourcePath, destination.toPath());
- Files.delete(sourcePath);
+ Files.move(Paths.get(source.getAbsolutePath()), Paths.get(destination.getAbsolutePath()),
+ StandardCopyOption.ATOMIC_MOVE, StandardCopyOption.REPLACE_EXISTING);
+ LOGGER.trace("Renamed file {} to {} with Files.move", source.getAbsolutePath(),
+ destination.getAbsolutePath());
return true;
- } catch (final Exception iex) {
- LOGGER.error("Unable to rename file {} to {} due to {} - {}", source.getAbsolutePath(),
- destination.getAbsolutePath(), iex.getClass().getSimpleName(), iex.getMessage());
+ } catch (final IOException exMove) {
+ LOGGER.error("Unable to move file {} to {}: {} {}", source.getAbsolutePath(),
+ destination.getAbsolutePath(), exMove.getClass().getName(), exMove.getMessage());
+ final boolean result = source.renameTo(destination);
+ if (!result) {
+ try {
+ Files.copy(Paths.get(source.getAbsolutePath()), Paths.get(destination.getAbsolutePath()),
+ StandardCopyOption.REPLACE_EXISTING);
+ try {
+ Files.delete(Paths.get(source.getAbsolutePath()));
+ LOGGER.trace("Renamed file {} to {} using copy and delete",
+ source.getAbsolutePath(), destination.getAbsolutePath());
+ } catch (final IOException exDelete) {
+ LOGGER.error("Unable to delete file {}: {} {}", source.getAbsolutePath(),
+ exDelete.getClass().getName(), exDelete.getMessage());
+ try {
+ new PrintWriter(source.getAbsolutePath()).close();
+ LOGGER.trace("Renamed file {} to {} with copy and truncation",
+ source.getAbsolutePath(), destination.getAbsolutePath());
+ } catch (final IOException exOwerwrite) {
+ LOGGER.error("Unable to overwrite file {}: {} {}",
+ source.getAbsolutePath(), exOwerwrite.getClass().getName(),
+ exOwerwrite.getMessage());
+ }
+ }
+ } catch (final IOException exCopy) {
+ LOGGER.error("Unable to copy file {} to {}: {} {}", source.getAbsolutePath(),
+ destination.getAbsolutePath(), exCopy.getClass().getName(), exCopy.getMessage());
+ }
+ } else {
+ LOGGER.trace("Renamed file {} to {} with source.renameTo",
+ source.getAbsolutePath(), destination.getAbsolutePath());
+ }
+ return result;
}
+ } catch (final RuntimeException ex) {
+ LOGGER.error("Unable to rename file {} to {}: {} {}", source.getAbsolutePath(),
+ destination.getAbsolutePath(), ex.getClass().getName(), ex.getMessage());
}
} else {
try {
- Files.delete(source.toPath());
- } catch (final Exception ex) {
- LOGGER.error("Unable to delete empty file " + source.getAbsolutePath());
+ source.delete();
+ } catch (final Exception exDelete) {
+ LOGGER.error("Unable to delete empty file {}: {} {}", source.getAbsolutePath(),
+ exDelete.getClass().getName(), exDelete.getMessage());
}
}
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/d5eaed8b/src/changes/changes.xml
----------------------------------------------------------------------
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 3641c0a..9970d34 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -24,6 +24,9 @@
</properties>
<body>
<release version="2.6.2" date="2016-MM-DD" description="GA Release 2.6.2">
+ <action issue="LOG4J2-904" dev="rgoers" due-to="Bernhard M�hr">
+ If copy and delete fails in rename action then resort to truncating the source file after copying it.
+ </action>
<action issue="LOG4J2-1250" dev="rgoers">
CronTriggeringPolicy was not properly setting the prevFileTime value for the PatternProcessor so
file dates and times on rolled files were incorrect.
[13/16] logging-log4j2 git commit: maven-scm-plugin 1.9.4 -> 1.9.5.
Posted by gg...@apache.org.
maven-scm-plugin 1.9.4 -> 1.9.5.
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/a2dfc061
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/a2dfc061
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/a2dfc061
Branch: refs/heads/StyledMessage
Commit: a2dfc061869d9b06ea0f977455c64d21af79d304
Parents: 2ae387e
Author: Gary Gregory <gg...@apache.org>
Authored: Wed Jul 6 13:35:31 2016 -0700
Committer: Gary Gregory <gg...@apache.org>
Committed: Wed Jul 6 13:35:31 2016 -0700
----------------------------------------------------------------------
pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a2dfc061/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 0df7178..60f633a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -210,7 +210,7 @@
<pdf.plugin.version>1.2</pdf.plugin.version>
<cobertura.plugin.version>2.7</cobertura.plugin.version>
<release.plugin.version>2.5.3</release.plugin.version>
- <scm.plugin.version>1.9.4</scm.plugin.version>
+ <scm.plugin.version>1.9.5</scm.plugin.version>
<jxr.plugin.version>2.5</jxr.plugin.version>
<clirr.plugin.version>2.6.1</clirr.plugin.version>
<site.plugin.version>3.4</site.plugin.version>
[15/16] logging-log4j2 git commit: [LOG4J2-1458] Update Jackson from
2.7.5 to 2.8.0.
Posted by gg...@apache.org.
[LOG4J2-1458] Update Jackson from 2.7.5 to 2.8.0.
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/f92062b4
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/f92062b4
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/f92062b4
Branch: refs/heads/StyledMessage
Commit: f92062b431b69a480c6950fa965d2d213459a3fd
Parents: a2dfc06
Author: ggregory <gg...@apache.org>
Authored: Wed Jul 6 14:33:24 2016 -0700
Committer: ggregory <gg...@apache.org>
Committed: Wed Jul 6 14:33:24 2016 -0700
----------------------------------------------------------------------
pom.xml | 2 +-
src/changes/changes.xml | 5569 +++++++++++++++++++++---------------------
2 files changed, 2788 insertions(+), 2783 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/f92062b4/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 60f633a..c69ca60 100644
--- a/pom.xml
+++ b/pom.xml
@@ -192,7 +192,7 @@
<slf4jVersion>1.7.21</slf4jVersion>
<logbackVersion>1.1.7</logbackVersion>
<jackson1Version>1.9.13</jackson1Version>
- <jackson2Version>2.7.5</jackson2Version>
+ <jackson2Version>2.8.0</jackson2Version>
<springVersion>3.2.13.RELEASE</springVersion>
<flumeVersion>1.6.0</flumeVersion>
<disruptorVersion>3.3.4</disruptorVersion>
[14/16] logging-log4j2 git commit: [LOG4J2-1458] Update Jackson from
2.7.5 to 2.8.0.
Posted by gg...@apache.org.
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/f92062b4/src/changes/changes.xml
----------------------------------------------------------------------
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 32bc6e7..fdbd8c5 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -1,2782 +1,2787 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- vi: set sw=2: -->
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<document xmlns="http://maven.apache.org/changes/1.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/changes/1.0.0 http://maven.apache.org/xsd/changes-1.0.0.xsd">
- <properties>
- <title>Changes</title>
- </properties>
- <body>
- <release version="2.6.2" date="2016-07-05" description="GA Release 2.6.2">
- <action issue="LOG4J2-904" dev="rgoers" due-to="Bernhard M�hr">
- If copy and delete fails in rename action then resort to truncating the source file after copying it.
- </action>
- <action issue="LOG4J2-1250" dev="rgoers">
- CronTriggeringPolicy was not properly setting the prevFileTime value for the PatternProcessor so
- file dates and times on rolled files were incorrect.
- </action>
- <action issue="LOG4J2-1452" dev="rpopma" due-to="Mikael St�ldal">
- Fixed issue where reusable messages broke flow tracing logic.
- </action>
- <action issue="LOG4J2-1440" dev="rgoers">
- Fix bug in OnStartupTriggeringPolicy that allowed it to roll over on every reconfiguration. Added
- minSize attribute.
- </action>
- <action issue="LOG4J2-1414" dev="rpopma" type="fix" due-to="Ralph Goers">
- Fixed minor issues with the 2.6.1 web site.
- </action>
- <action issue="LOG4J2-1434" dev="rpopma" type="fix" due-to="Luke Butters">
- Ensure that the thread-local StringBuilders used by Layouts to format log events to text will not
- retain excessive memory after a large message was logged.
- </action>
- <action issue="LOG4J2-1395" dev="mikes" type="add">
- Add "direct" option to ConsoleAppender for increased performance.
- </action>
- <action issue="LOG4J2-1418" dev="mikes" type="fix">
- Provide MessageFactory2 to custom Logger implementations.
- </action>
- <action issue="LOG4J2-1420" dev="rgoers" type="fix">
- RollingRandomAccessFileManager was not properly rolling over on startup and was getting a NullPointerException.
- </action>
- <action issue="LOG4J2-1417" dev="rpopma" type="fix">
- Fixed issue where Unbox utility ignored the value Constants.ENABLE_THREADLOCALS and always stored non-JDK classes in ThreadLocals.
- </action>
- <action issue="LOG4J2-1422" dev="rpopma" type="fix">
- Fixed issue where AsyncAppenderQueueFullPolicyTest sometimes hangs.
- </action>
- <action issue="LOG4J2-1445" dev="ggregory" type="fix" due-to="Ludovic HOCHET">
- OnStartupTriggeringPolicyTest fails on Windows saying the file is used by another process.
- </action>
- <action issue="LOG4J2-1437" dev="rpopma" type="add">
- (GC) ObjectMessage and ReusableObjectMessage now avoid calling toString() on auto-boxed primitive parameters.
- </action>
- <action issue="LOG4J2-1415" dev="rpopma" type="add">
- (GC) ParameterFormatter now avoids calling toString() on auto-boxed primitive message parameters.
- </action>
- <action issue="LOG4J2-1412" dev="rpopma" type="add">
- Unbox utility's ringbuffer of StringBuilders is now configurable.
- </action>
- <action issue="LOG4J2-1432" dev="ggregory" type="update">
- Update Jackson from 2.7.4 to 2.7.5.
- </action>
- <action issue="LOG4J2-1433" dev="ggregory" type="update">
- Update Jansi from 1.11 to 1.13.
- </action>
- <action issue="LOG4J2-1444" dev="ggregory" type="update">
- Update Apache Commons Compress from 1.11 to 1.12.
- </action>
- </release>
- <release version="2.6.1" date="2016-06-05" description="GA Release 2.6.1">
- <action issue="LOG4J2-1405" dev="rgoers" type="fix">
- OnStartupTriggeringPolicy was forcing a rollover of empty files at startup and would append a
- second footer that was added by the prior shutdown.
- </action>
- <action issue="LOG4J2-1406" dev="rpopma" type="fix" due-to="Trask Stalnaker">
- Fixed bug in ReusableParameterizedMessage where Throwable was never updated so first error was logged over
- and over again and subsequent errors were not logged.
- </action>
- <action issue="LOG4J2-1409" dev="rpopma" type="fix" due-to="Shahan">
- Fixed ArrayIndexOutOfBoundsException that may occur in ReusableParameterizedMessage.
- </action>
- <action issue="LOG4J2-997" dev="rgoers" type="fix" due-to="Maytee Chinavanichkit">
- Add filter and remove filter were not working properly in AbstractFilterable.
- </action>
- <action issue="LOG4J2-1032" dev="rgoers" type="fix">
- Change RenameAction to use java.nio to better report rename failures.
- </action>
- <action issue="LOG4J2-1407" dev="ggregory" type="fix" due-to="Gary Gregory">
- Misleading WARN log events from Log4j about message factories and unexpected formatting.
- </action>
- <action issue="LOG4J2-1408" dev="ggregory" type="fix" due-to="Gary Gregory">
- The module log4j-liquibase is missing from BOM POM.
- </action>
- <action issue="LOG4J2-1180" dev="ggregory" type="fix" due-to="Gary Gregory">
- Logger cache does not account for message factory.
- </action>
- <action issue="LOG4J2-1402" dev="rgoers" type="fix">
- Fix regression in properties configuration to support arbitrary component ids.
- </action>
- <action issue="LOG4J2-1385" dev="ggregory" type="update">
- (GC) CSV layouts should not create a new CSVPrinter for each log event. Requires Apache Commons CSV 1.4.
- </action>
- <action issue="LOG4J2-1398" dev="ggregory" type="update">
- Update liquibase-core from 3.4.2 to 3.5.1.
- </action>
- <action issue="LOG4J2-1399" dev="ggregory" type="update">
- Update Apache Commons CSV from 1.3 to 1.4.
- </action>
- <action issue="LOG4J2-1411" dev="mattsicker" type="add">
- Add documentation about plugin builders compared to factories.
- </action>
- <action issue="LOG4J2-1394" dev="mattsicker,mikes" type="fix">
- Fixed minor issues with the 2.6 web site.
- </action>
- </release>
- <release version="2.6" date="2016-05-25" description="GA Release 2.6">
- <action issue="LOG4J2-1270" dev="rpopma" type="add">
- (GC) Added support for garbage-free logging in steady state.
- This includes Async Loggers and logging synchronously to the console and to a file,
- but does not include the AsyncAppender. This release makes the GelfLayout and
- the main patterns in the PatternLayout garbage-free.
- </action>
- <action issue="LOG4J2-1297" dev="rpopma" type="add">
- (GC) Added manual page on garbage-free logging.
- </action>
- <action issue="LOG4J2-1373" dev="rpopma" type="add">
- (GC) Update Logger wrapper Generator tool to generate methods for the new Logger methods.
- </action>
- <action issue="LOG4J2-1356" dev="mikes" type="update">
- (GC) GelfLayout does now support garabage-free logging (with compressionType=OFF).
- </action>
- <action issue="LOG4J2-1326" dev="rpopma" type="add">
- (GC) Added methods to the Logger interface for logging CharSequence messages.
- </action>
- <action issue="LOG4J2-1344" dev="rpopma" type="add">
- (GC) FileAppender, RollingFileAppender and MemoryMappedFileAppender are now also garbage-free by default.
- </action>
- <action issue="LOG4J2-1343" dev="rpopma" type="update">
- (GC) ConsoleAppender is now garbage-free by default. This logic is reusable for all AbstractOutputStreamAppender subclasses.
- </action>
- <action issue="LOG4J2-1278" dev="rpopma" type="add">
- (GC) Added unrolled varargs methods to Logger API, added Unbox utility to avoid auto-boxing when logging primitive values.
- </action>
- <action issue="LOG4J2-1318" dev="rpopma" type="update">
- (GC) Avoid allocating unnecessary temporary objects in LoggerContext's getLogger methods.
- </action>
- <action issue="LOG4J2-1333" dev="rpopma" type="update">
- (GC) Avoid allocating unnecessary temporary objects in MarkerManager's getMarker methods.
- </action>
- <action issue="LOG4J2-1321" dev="rpopma" type="update">
- (GC) Avoid allocating unnecessary temporary objects in PatternLayout's NamePatternConverter and ClassNamePatternConverter.
- </action>
- <action issue="LOG4J2-1271" dev="rpopma" type="add">
- (GC) Add MessageFactory that avoid allocation by reusing a cached ParameterizedMessage instance.
- </action>
- <action issue="LOG4J2-1271" dev="rpopma" type="update">
- (GC) ParameterizedMessage optimizations to avoid or at least postpone allocating temporary objects.
- </action>
- <action issue="LOG4J2-1283" dev="rpopma" type="update">
- (GC) Provide ThreadLocal-based gc-free caching mechanism in DatePatternConverter for non-webapps.
- </action>
- <action issue="LOG4J2-1293" dev="rpopma" type="add">
- (GC) Add interface StringBuilderFormattable to enable converting Messages and parameters to text without allocating temporary objects.
- ParameterizedMessage, ObjectMessage, SimpleMessage and ThreadDumpMessage now implement StringBuilderFormattable.
- </action>
- <action issue="LOG4J2-1291" dev="rpopma" type="update">
- (GC) Update PatternLayout to utilize gc-free mechanism for LogEvent processing.
- </action>
- <action issue="LOG4J2-1292" dev="rpopma" type="update">
- (GC) Update RandomAccessFileAppender and RollingRandomAccessFileAppender to utilize gc-free Layout.encode() method.
- </action>
- <action issue="LOG4J2-1274" dev="rpopma" type="add">
- (GC) Add encode(LogEvent, ByteBufferDestination) method to Layout API to enable converting LogEvents to bytes without creating temporary objects.
- </action>
- <action issue="LOG4J2-1281" dev="rpopma" type="fix">
- (GC) LoggerConfig.getProperties() should not allocate on each call.
- </action>
- <action issue="LOG4J2-1272" dev="rpopma" type="update">
- (GC) Improve LoggerConfig's data structure for AppenderControl objects to avoid allocating temporary objects during
- traversal for each log event.
- </action>
- <action issue="LOG4J2-1269" dev="rpopma" type="fix">
- (GC) AsyncLogger should use thread-local translator by default.
- </action>
- <action issue="LOG4J2-623" dev="rpopma" type="fix">
- Generate MDC properties as a JSON map in JSONLayout, with option to output as list of map entries.
- </action>
- <action issue="LOG4J2-1362" dev="rpopma" type="add" due-to="Gary Gregory">
- Added a YAML layout.
- </action>
- <action issue="LOG4J2-1387" dev="rpopma" type="fix">
- Fixed memory leak related to shutdown hook.
- </action>
- <action issue="LOG4J2-1179" dev="rpopma" type="add">
- Documented benchmark results comparing Log4j 2 performance to other logging libraries.
- </action>
- <action issue="LOG4J2-1382" dev="rpopma" type="fix">
- Copying a MutableLogEvent using Log4jLogEvent.Builder should not unnecessarily obtain caller location information.
- </action>
- <action issue="LOG4J2-1011" dev="mikes" type="add">
- Document dependencies for layouts.
- </action>
- <action issue="LOG4J2-621" dev="ggregory" type="add" due-to="Lee Theobald, Kamal Mettananda, Gary Gregory">
- Pattern to drop first N package parts.
- </action>
- <action issue="LOG4J2-494" dev="rgoers" type="add" due-to="Philipp Knobel">
- Support merging configurations to for a composite configuration.
- </action>
- <action issue="LOG4J2-1357" dev="mikes" type="add">
- Option to not log stack traces for logged Throwables in GelfLayout.
- </action>
- <action issue="LOG4J2-1375" dev="rpopma" type="update">
- Update SLF4J from 1.7.13 to 1.7.21.
- </action>
- <action issue="LOG4J2-1374" dev="rpopma" type="update">
- Migrate tests from Logback 1.1.3 to 1.1.7.
- </action>
- <action issue="LOG4J2-1384" dev="ggregory" type="update">
- Update Apache Commons CSV from 1.2 to 1.3.
- </action>
- <action issue="LOG4J2-1372" dev="rgoers" type="fix" due-to="Kamal Mettananda, Gary Gregory">
- XMLLayout indents, but not the first child tag (Event).
- </action>
- <action issue="LOG4J2-1363" dev="rgoers" type="fix">
- Properties Configuration did not support includeLocation attribute on Loggers.
- </action>
- <action issue="LOG4J2-1263" dev="rgoers" type="fix">
- The ConfigurationSource was not saved for BuiltConfigurations so monitor interval had no effect.
- </action>
- <action issue="LOG4J2-1369" dev="ggregory" type="fix" due-to="Alex Birch, Gary Gregory">
- "xz" compression results in plaintext, uncompressed files.
- </action>
- <action issue="LOG4J2-1365" dev="mikes" type="update">
- (Log4j-internal) Provide message text as CharSequence for some message types to optimize some layouts.
- </action>
- <action issue="LOG4J2-1368" dev="rpopma" type="fix">
- (Log4j-internal) StatusLogger dropped exceptions when logging parameterized messages.
- </action>
- <action issue="LOG4J2-1348" dev="ggregory" type="add" due-to="Greg Thomas, Gary Gregory">
- Add an AutoCloseable ThreadContext class: CloseableThreadContext.
- </action>
- <action issue="LOG4J2-1345" dev="rpopma" type="update">
- (Doc) Clarify documentation for properties that control Log4j behaviour.
- </action>
- <action issue="LOG4J2-1336" dev="ggregory" type="fix" due-to="Zbynek Vyskovsky">
- LoggerFactory in 1.2 API module is not compatible with 1.2.
- </action>
- <action issue="LOG4J2-1354" dev="ggregory" type="fix" due-to="Arkadiusz Adolph">
- No configuration reload is triggered under Windows when replacing the configuration file with one that has older last modified date.
- </action>
- <action issue="LOG4J2-1346" type="fix">
- Exception from Log4jServletContextListener prevents jetty-maven-plugin run-forked.
- </action>
- <action issue="LOG4J2-1339" dev="rpopma" type="fix">
- (Perf) AsyncLogger performance optimization: avoid calling instanceof TimestampMessage in hot path.
- </action>
- <action issue="LOG4J2-1324" dev="rpopma" type="fix">
- Improve error handling in the Async Logger background thread: the new default exception handler no longer rethrows the error.
- </action>
- <action issue="LOG4J2-1309" dev="ggregory" type="fix">
- Configuration file error does not show cause exception.
- </action>
- <action issue="LOG4J2-1299" dev="ggregory" type="add">
- Add pattern converter for thread id and priority in PatternLayout.
- </action>
- <action issue="LOG4J2-1289" dev="ggregory" type="fix">
- Change flow logging text from "entry' to "Enter" and "exit" to "Exit".
- </action>
- <action issue="LOG4J2-1284" dev="rpopma" type="fix">
- Made default MessageFactory configurable.
- </action>
- <action issue="LOG4J2-1280" dev="ggregory" type="fix">
- Deprecate org.apache.logging.log4j.util.MessageSupplier.
- </action>
- <action issue="LOG4J2-1280" dev="rpopma" type="fix">
- Logger methods taking Supplier parameters now correctly handle cases where the supplied value is a Message.
- </action>
- <action issue="LOG4J2-1268" dev="rpopma" type="fix">
- FixedDateFormat was incorrect for formats having MMM with the French locale.
- </action>
- <action issue="LOG4J2-1255" dev="rgoers" type="update">
- Add enhanced entry and exit methods.
- </action>
- <action issue="LOG4J2-124" dev="rgoers" type="add">
- Add shutdown methods to LogManager.
- </action>
- <action issue="LOG4J2-1222" dev="rgoers" type="fix">
- Creation of a LoggerContext will fail if shutdown is in progress. LogManager will default to SimpleLogger instead.
- </action>
- <action issue="LOG4J2-1221" dev="rpopma" type="add" due-to="Michael Barker">
- Added async logger Timeout wait strategy and made this the default wait strategy for async loggers.
- This prevents a rare deadlock that may occur on Solaris.
- </action>
- <action issue="LOG4J2-1080" dev="rpopma" type="add">
- Added option to discard events below a certain log level if the async logger ring buffer
- or async appender queue is full.
- </action>
- <action issue="LOG4J2-1237" dev="ggregory" type="add" due-to="Mike Calmus, Gary Gregory">
- Make PatternLayout header and footer accept a pattern.
- </action>
- <action issue="LOG4J2-1244" dev="ggregory" type="add" due-to="Anshu Garg, Remko Popma, Gary Gregory">
- Make header and footer values customizable in JSONLayout.
- </action>
- <action issue="LOG4J2-1245" dev="ggregory" type="add">
- Make CSV Layout header and footers accept patterns.
- </action>
- <action issue="LOG4J2-1192" dev="ggregory" type="add" due-to="J�rg Bretschneider, Gary Gregory">
- Dynamic Subject for SMTP Appender.
- </action>
- <action issue="LOG4J2-1277" dev="ggregory" type="add" due-to="Gary Gregory, Ludovic Hochet">
- FormattedMessage, MessageFormatMessage and StringFormattedMessage should support passing in a Locale to ensure appropriate formatting.
- </action>
- <action issue="LOG4J2-1260" dev="ggregory" type="fix" due-to="Blake Day, Gary Gregory">
- TlsSyslogFrame calculates message length incorrectly.
- </action>
- <action issue="LOG4J2-1258" dev="ggregory" type="fix" due-to="Francis Lalonde">
- Async DynamicThresholdFilter does not use the log event's context map.
- </action>
- <action issue="LOG4J2-1232" dev="ggregory" type="fix" due-to="Nikolai">
- Incorrect log rotation in last week of year.
- </action>
- <action issue="LOG4J2-1248" dev="rpopma" type="fix">
- Fixed broken nanotime in pattern layout.
- </action>
- <action issue="LOG4J2-908" dev="ggregory" type="fix" due-to="Konstantinos Liakos, Patrick Flaherty, Robin Coe, Gary Gregory">
- JSONLayout doesn't add a comma between log events.
- </action>
- <action issue="LOG4J2-1230" dev="ggregory" type="fix" due-to="Vladimir Hudec, Ralph Goers, Gary Gregory">
- Don't concatenate SYSLOG Messages.
- </action>
- <action issue="LOG4J2-1238" dev="ggregory" type="fix">
- org.apache.logging.log4j.core.net.TcpSocketManager and other classes does not report internal exceptions to the status logger.
- </action>
- <action issue="LOG4J2-1212" dev="rpopma" type="fix">
- Fix documentation to specify the correct default wait strategy used by async loggers.
- </action>
- <action issue="LOG4J2-1215" dev="ggregory" type="fix" due-to="Erik Kemperman">
- Documentation/XSD inconsistencies.
- </action>
- <action issue="LOG4J2-1276" dev="ggregory" type="fix" due-to="Ludovic Hochet">
- LoggerMessageSupplierTest and LoggerSupplierTest are Locale sensitive.
- </action>
- <action issue="LOG4J2-1380" dev="ggregory" type="update">
- Update Jackson from 2.7.3 to 2.7.4.
- </action>
- <action issue="LOG4J2-1304" dev="ggregory" type="update">
- Update Jackson from 2.7.0 to 2.7.2.
- </action>
- <action issue="LOG4J2-1253" dev="ggregory" type="update">
- Update LMAX Disruptor from 3.3.2 to 3.3.4.
- </action>
- <action issue="LOG4J2-1219" dev="ggregory" type="update">
- Update SLF4J from 1.7.12 to 1.7.13.
- </action>
- <action issue="LOG4J2-1239" dev="ggregory" type="update">
- Update Jackson from 2.6.3 to 2.6.4.
- </action>
- <action issue="LOG4J2-1249" dev="ggregory" type="update">
- Update Jackson from 2.6.4 to 2.7.0.
- </action>
- <action issue="LOG4J2-1351" dev="ggregory" type="update">
- Update Jackson from 2.7.2 to 2.7.3.
- </action>
- <action issue="LOG4J2-1240" dev="ggregory" type="update">
- Update Liquibase from 3.3.5 to 3.4.2.
- </action>
- <action issue="LOG4J2-1294" dev="ggregory" type="update">
- Update Kafka client from 0.9.0.0 to 0.9.0.1.
- </action>
- <action issue="LOG4J2-1352" dev="ggregory" type="update">
- Update javax.mail from 1.5.4 to 1.5.5.
- </action>
- <action issue="LOG4J2-1358" dev="ggregory" type="update">
- Update Apache Commons Compress from 1.10 to 1.11.
- </action>
- <action issue="LOG4J2-1388" dev="rpopma" type="update">
- Update Google java-allocation-instrumenter from 3.0 to 3.0.1.
- </action>
- <action issue="LOG4J2-1233" dev="ggregory" type="update" due-to="Bahri Gencsoy">
- Misleading Value In Properties Example.
- </action>
- <action issue="LOG4J2-1251" dev="mattsicker" type="fix" due-to="Romain Manni-Bucau">
- Fix JUL bridge issue where LogRecord.getParameters() is used when null.
- </action>
- <action issue="LOG4J2-1254" dev="rpopma" type="fix" due-to="Josh Trow">
- Fix typo in Flow Tracing documentation.
- </action>
- <action issue="LOG4J2-920" dev="mattsicker" type="fix" due-to="Ludovic Hochet">
- ClassNotFoundException for BundleContextSelector when initialising in an OSGi environment.
- </action>
- <action issue="LOG4J2-1300" dev="mattsicker" type="update">
- Remove serializability from classes that don't need it.
- </action>
- <action issue="LOG4J2-1303" dev="mattsicker" type="add">
- Add documentation links to runtime dependencies in each component intro page.
- </action>
- <action issue="LOG4J2-1275" dev="mattsicker" type="fix" due-to="Ludovic Hochet">
- Fix RollingAppenderNoUnconditionalDeleteTest repeat test runs from failing.
- </action>
- <action issue="LOG4J2-1262" dev="mattsicker" type="fix">
- Stop throwing unnecessary exception in Log4jServletContextListener.contextDestroyed().
- </action>
- <action issue="LOG4J2-1252" dev="mattsicker" type="add">
- JeroMqAppender should support layouts.
- </action>
- <action issue="LOG4J2-1227" dev="mattsicker" type="fix" due-to="Olivier Lemasle">
- NullPointerException in MapLookup.lookup if the event is null.
- </action>
- <action issue="LOG4J2-1306" dev="mattsicker" type="update">
- JeroMqAppender should use ShutdownCallbackRegistry instead of runtime hooks.
- </action>
- <action issue="LOG4J2-1217" dev="mattsicker" type="add" due-to="Thies Wellpott">
- PatternLayout option to limit length of text.
- </action>
- <action issue="LOG4J2-1308" dev="mattsicker" type="update">
- Remove need to pre-specify appender et al. identifiers in property file config format.
- </action>
- <action issue="LOG4J2-1050" dev="mattsicker" type="fix" due-to="Adam Retter">
- Add a Log4jLookup class to help write log files relative to log4j2.xml.
- </action>
- <action issue="LOG4J2-1133" dev="mattsicker" type="add">
- Add JNDI lookup documentation.
- </action>
- <action issue="LOG4J2-1310" dev="mattsicker" type="fix">
- JndiLookup mindlessly casts to String and should use String.valueOf().
- </action>
- <action issue="LOG4J2-1206" dev="mattsicker" type="update">
- org.apache.logging.log4j.core.LoggerContext#updateLoggers should call firePropertyChangeEvent.
- </action>
- <action issue="LOG4J2-248" dev="mattsicker" type="fix">
- Log4jWebInitializerImpl: Use Thread instead of Class for fallback classloader.
- </action>
- <action issue="LOG4J2-1169" dev="mattsicker" type="add" due-to="Gerald Kritzinger">
- PatternLayout: Possible variable substitution in equals substitution parameter.
- </action>
- <action issue="LOG4J2-1322" dev="mattsicker" type="update">
- Update Log4j 1.x migration guide to include information about system property lookup syntax changes.
- </action>
- <action issue="LOG4J2-1330" dev="mattsicker" type="fix">
- Fix NoClassDefFoundError in ReflectionUtil on Google App Engine.
- </action>
- </release>
- <release version="2.5" date="2015-12-06" description="GA Release 2.5">
- <action issue="LOG4J2-324" dev="rpopma" type="fix">
- Reduced memory usage of status messages in bounded queue; support zero-length queue that stores no messages.
- </action>
- <action issue="LOG4J2-1173" dev="rpopma" type="fix">
- Fixed rollover error when copying to a directory mapped to a remote Linux host.
- </action>
- <action issue="LOG4J2-435" dev="rpopma" type="add" due-to="Robert Schaft">
- Added support for custom delete actions triggered by a rollover.
- </action>
- <action issue="LOG4J2-649" dev="rgoers" type="update" due-to="Aleksey Zvolinsky">
- Add PurgePolicy and IdlePurgePolicy to RoutingAppender.
- </action>
- <action issue="LOG4J2-1202" dev="rgoers" type="update">
- Remove ConfigurationMonitor. The WatchManager is now used to check for configuration changes.
- </action>
- <action issue="LOG4J2-1195" dev="mikes" type="fix" due-to="Melvin Du">
- Make KafkaAppender support SerializedLayout.
- </action>
- <action issue="LOG4J2-89" dev="rgoers" type="add">
- Allow rollover to occur at any time. Add CronTriggeringPolicy.
- </action>
- <action issue="LOG4J2-381" dev="rgoers" type="fix" due-to="Anthony Baldocchi">
- Allow triggering policy and rollover strategy to be modified during reconfiguration.
- </action>
- <action issue="LOG4J2-1136" dev="rgoers" type="add">
- Add support for JSR 223 scripts in filters and the PatternSelector.
- </action>
- <action issue="LOG4J2-1168" dev="ggregory" type="add" due-to="Steven Swor">
- Add getters for source and destination file in file rename action.
- </action>
- <action issue="LOG4J2-1175" dev="ggregory" type="add">
- Add getters for classes in org.apache.logging.log4j.core.appender.rolling.action.
- </action>
- <action issue="LOG4J2-898" dev="rpopma" type="add">
- Added system property to allow users to control whether messages should be formatted in the background.
- </action>
- <action issue="LOG4J2-1178" dev="ggregory" type="add">
- Support use-case for JDBC's CommonDataSource.setLogWriter(PrintWriter) and java.sql.DriverManager.setLogWriter(PrintWriter).
- </action>
- <action issue="LOG4J2-1187" dev="ggregory" type="add">
- Support use case for java.sql.DriverManager.setLogStream(PrintStream).
- </action>
- <action issue="LOG4J2-1029" dev="rpopma" type="fix" due-to="Stefan Leonhartsberger">
- Performance improvement when gathering location information.
- </action>
- <action issue="LOG4J2-1172" dev="rpopma" type="fix">
- Fixed ThreadLocal leak [AsyncLogger$Info] on Tomcat when using AsyncLoggerContextSelector.
- </action>
- <action issue="LOG4J2-1176" dev="rpopma" type="fix">
- Fixed memory leak when log4j jars are in Tomcat's lib folder.
- </action>
- <action issue="LOG4J2-1180" dev="ggregory" type="fix" due-to="Mikael St�ldal">
- Logger cache does not account for message factory.
- </action>
- <action issue="LOG4J2-879" dev="rpopma" type="fix">
- Documentation: fixed minor issues with the site and manual pages.
- </action>
- <action issue="LOG4J2-999" dev="rpopma" type="fix" due-to="Joan Balaguer�">
- RollingFileAppender should also roll over when log event time is equal to rollover time, not only when later.
- </action>
- <action issue="LOG4J2-873" dev="rpopma" type="fix" due-to="Martin Dickins, LC, Luke Woodward">
- Fixed bug where omitting the <display-name> element in web.xml caused incorrect log4j initialization,
- resulting in memory leaks when the web application was stopped or reloaded.
- </action>
- <action issue="LOG4J2-323" dev="rpopma" type="fix">
- Better web app support for async loggers: Fixed a memory leak that occurred when the logging jars are placed
- in the container's classpath and the configuration file uses AsyncRoot/AsyncLogger.
- The problem was that the first web application started the Disruptor background thread [AsyncLoggerConfig-1] but did not stop it until all web apps are stopped.
- Each web application now has its own Disruptor which is stopped/started together with the web app.
- </action>
- <action issue="LOG4J2-493" dev="rpopma" type="fix">
- Better web app support for async loggers: it is now possible to place the logging jars in the container's
- classpath when making all loggers asynchronous by using AsyncLoggerContextSelector. This fixes a problem where
- logging would stop working after stopping and restarting a web application.
- </action>
- <action issue="LOG4J2-1171" dev="rpopma" type="fix">
- Use servlet context name for logger context name when available.
- </action>
- <action issue="LOG4J2-1159" dev="rpopma" type="fix">
- Fixed a ThreadLocal memory leak in Tomcat8 that mentions AsyncLoggers when Async Loggers are not used.
- </action>
- <action issue="LOG4J2-1166" dev="rpopma" type="fix">
- AbstractConfiguration executor should use a DaemonThreadFactory.
- </action>
- <action issue="LOG4J2-1165" dev="rpopma" type="fix">
- Improve Log4j initialization status messages.
- </action>
- <action issue="LOG4J2-1156" dev="rpopma" type="fix">
- Web site corrections and updates.
- </action>
- <action issue="LOG4J2-1158" dev="ggregory" type="fix" due-to="Michael Fortin, Gary Gregory">
- Log4J JUL adapter is using MessageFormat on String passed by java.util.function.Supplier<String>.
- </action>
- <action issue="LOG4J2-801" dev="mattsicker" type="fix">
- org.apache.logging.log4j.core.Logger should be serializable.
- </action>
- <action issue="LOG4J2-1157" dev="mattsicker" type="fix" due-to="Norbert Bartels">
- Fix compilation error for classes annotated with @Plugin.
- </action>
- <action issue="LOG4J2-948" dev="mattsicker" type="fix" due-to="Andrew Flower">
- Fix plugin documentation error about Converters.
- </action>
- <action issue="LOG4J2-1193" dev="ggregory" type="fix">
- Prefix all thread names Log4j creates with "Log4j2-".
- </action>
- <action issue="LOG4J2-1194" dev="ggregory" type="fix" due-to="Adam Brin">
- Documentation does not match parameters for LoggerNameLevelRewritePolicy.
- </action>
- <action issue="LOG4J2-1196" dev="mattsicker" type="fix" due-to="Ren� Zanner">
- MongoDbConnection does not close MongoClient.
- </action>
- <action issue="LOG4J2-1174" dev="ggregory" type="update">
- Update Jackson from 2.6.2 to 2.6.3.
- </action>
- <action issue="LOG4J2-1207" dev="ggregory" type="update">
- Update kafka-clients from 0.8.2.2 to 0.9.0.0.
- </action>
- </release>
- <release version="2.4.1" date="2015-10-08" description="GA Release 2.4.1">
- <action issue="LOG4J2-1129" dev="rgoers" type="add">
- Allow PatternLayout to select a pattern to use based on some selection criteria.
- </action>
- <action issue="LOG4J2-1145" dev="ggregory" type="add">
- Add %equals to PatternLayout to test and replace patterns with strings.
- </action>
- <action issue="LOG4J2-1147" dev="ggregory" type="add">
- Add %equalsIgnoreCase to PatternLayout to test and replace patterns with strings.
- </action>
- <action issue="LOG4J2-1146" dev="ggregory" type="add">
- Add %notEmpty to PatternLayout to avoid output of patterns where all variables are empty.
- </action>
- <action issue="LOG4J2-1020" dev="mikes" type="add">
- Add possibility to set shutdown timeout on AsyncAppender.
- </action>
- <action issue="LOG4J2-1153" dev="rpopma" type="fix">
- Fixed NullPointerException when only root logger is defined (and no named loggers) in configuration properties file.
- </action>
- <action issue="LOG4J2-1140" dev="rpopma" type="fix">
- Fixed bug where headers were not being written to first file with RollingFileAppender.
- </action>
- <action issue="LOG4J2-1149" dev="rpopma" type="fix">
- Fixed bug where PatternLayout predefined date pattern with time zone always renders default date format.
- </action>
- <action issue="LOG4J2-1050" dev="rpopma" type="fix">
- Fixed Log4jLookup.
- </action>
- <action issue="LOG4J2-1142" dev="rpopma" type="fix">
- Fix potential memory leak in web applications by using a straight ThreadLocal field instead of subclassing ThreadLocal.
- </action>
- <action issue="LOG4J2-1135" dev="rpopma" type="fix">
- Compression on rollover was broken: log file was renamed to .zip but not compressed.
- </action>
- <action issue="LOG4J2-1127" dev="ggregory" type="fix">
- log4j2.xml cannot be parsed on Oracle Weblogic 12c.
- </action>
- <action issue="LOG4J2-1132" dev="ggregory" type="fix">
- Do not use MongoDB driver 2.13.3 deprecated methods.
- </action>
- <action issue="LOG4J2-1144" dev="ggregory" type="fix">
- Add %markerSimpleName in pattern layout should evaluate to marker name (not toString()).
- </action>
- <action issue="LOG4J2-1126" dev="ggregory" type="fix">
- Web site corrections and updates.
- </action>
- <action issue="LOG4J2-1151" dev="rpopma" type="update">
- Performance improvement: backport Java 8 fast ISO-8859-1 String to byte[] encoder to AbstractStringLayout.
- </action>
- <action issue="LOG4J2-935" dev="rpopma" type="update">
- Performance improvement when converting Strings to byte[] arrays.
- </action>
- <action issue="LOG4J2-1040" dev="ggregory" type="update">
- Update MongoDB driver from 2.13.3 to 3.0.4.
- </action>
- <action issue="LOG4J2-1128" dev="ggregory" type="update">
- Reuse StringBuilder to improve performance for String-based layouts: CSV, GELF, HTML, RFC524, Syslog.
- </action>
- <action issue="LOG4J2-1131" dev="ggregory" type="update">
- Update mongo-java-driver from 2.13.2 to 2.13.3.
- </action>
- <action issue="LOG4J2-1138" dev="ggregory" type="update">
- Do not use Jackson deprecated methods.
- </action>
- <action issue="LOG4J2-1139" dev="ggregory" type="update">
- Update Jackson from 2.6.1 to 2.6.2.
- </action>
- <action issue="LOG4J2-1150" dev="ggregory" type="update">
- Update kafka-clients from 0.8.2.1 to 0.8.2.2.
- </action>
- </release>
- <release version="2.4" date="2015-09-20" description="GA Release 2.4">
- <action issue="LOG4J2-635" dev="rgoers" type="add">
- Add support for configuration via Properties.
- </action>
- <action issue="LOG4J2-952" dev="rgoers" type="add">
- Add ConfigurationBuilder for programmatic configuration.
- </action>
- <action issue="LOG4J2-1017" dev="ggregory" type="update">
- Update Java platform from Java 6 to 7. From this version onwards, log4j 2 requires Java 7.
- </action>
- <action issue="LOG4J2-599" dev="rpopma" type="add">
- Added support for Java 8 lambda expressions to lazily construct a log message only if
- the requested log level is enabled.
- </action>
- <action issue="LOG4J2-1118" dev="rpopma" type="add">
- Updated Logger wrapper generator tool to add Java 8 lambda support for custom log levels.
- </action>
- <action issue="LOG4J2-1107" dev="ggregory" type="add" due-to="Mikael St�ldal">
- New Appender for Apache Kafka.
- </action>
- <action issue="LOG4J2-1113" dev="ggregory" type="add" due-to="Gary Gregory">
- New publisher Appender for ZeroMQ (using JeroMQ).
- </action>
- <action issue="LOG4J2-1088" dev="ggregory" type="add" due-to="Gary Gregory">
- Add Comma Separated Value (CSV) layouts for parameter and event logging.
- </action>
- <action issue="LOG4J2-812" dev="rgoers" type="update">
- PatternLayout timestamp formatting performance improvement: replaced synchronized SimpleDateFormat with
- Apache Commons FastDateFormat. This and better caching resulted in a ~3-30X faster timestamp formatting.
- </action>
- <action issue="LOG4J2-1097" dev="rpopma" type="update">
- 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.
- </action>
- <action issue="LOG4J2-1096" dev="rpopma" type="update">
- Improved performance of ParameterizedMessage::getFormattedMessage by ~2X.
- </action>
- <action issue="LOG4J2-1120" dev="rpopma" type="update">
- LoggerConfig performance improvements: avoid unnecessary lock acquisition, use more efficient data structure.
- </action>
- <action issue="LOG4J2-1125" dev="rpopma" type="update">
- PatternLayout performance improvement by caching and reusing a ThreadLocal StringBuilder.
- </action>
- <action issue="LOG4J2-1121" dev="rpopma" type="fix">
- Fixed potential race condition on reconfiguration. Introduced ReliabilityStrategy to facilitate
- switching between different mechanisms for preventing log events from being dropped on reconfiguration.
- </action>
- <action issue="LOG4J2-1114" dev="ggregory" type="update">
- Add thread name to status logger layout.
- </action>
- <action issue="LOG4J2-1123" dev="ggregory" type="fix" due-to="Gary Gregory">
- Core Configurator.initialize(String, ClassLoader, String) fails to work when config location is a file path.
- </action>
- <action issue="LOG4J2-1117" dev="ggregory" type="fix" due-to="Marcus Thiesen">
- OutputStreamManager in ConsoleAppender leaking managers.
- </action>
- <action issue="LOG4J2-1044" dev="rgoers" type="fix">
- Write pending events to Flume when the appender is stopped.
- </action>
- <action issue="LOG4J2-1108" dev="ggregory" type="fix" due-to="Mikael St�ldal">
- NullPointerException when passing null to java.util.logging.Logger.setLevel().
- </action>
- <action issue="LOG4J2-1110" dev="ggregory" type="fix">
- org.apache.logging.log4j.jul.CoreLogger.setLevel() checks for security permission too late.
- </action>
- <action dev="rpopma" type="remove">
- Removed experimental interface LevelLogger which got committed to master by mistake.
- </action>
- <action issue="LOG4J2-1010" dev="rgoers" type="update">
- Pass log event when interpolating logger properties.
- </action>
- <action issue="LOG4J2-1090" dev="ggregory" type="add">
- Add Core Configurator APIs to change a logger's level.
- </action>
- <action issue="LOG4J2-1105" dev="ggregory" type="add" due-to="Gary Gregory">
- Add API org.apache.logging.log4j.Level.isInRange(Level, Level).
- </action>
- <action issue="LOG4J2-1106" dev="ggregory" type="add" due-to="Gary Gregory">
- Add a LevelRangeFilter class.
- </action>
- <action issue="LOG4J2-1074" dev="rpopma" type="add">
- Added support for system nanosecond time in pattern layout.
- </action>
- <action issue="LOG4J2-1075" dev="rpopma" type="add">
- Added support for compressing to bzip2 format on file rollover.
- </action>
- <action issue="LOG4J2-1077" dev="ggregory" type="add">
- Support additional Apache Commons Compress compression formats on rollover: Deflate, Pack200, XY.
- </action>
- <action issue="LOG4J2-767" dev="ggregory" type="add" due-to="Mikael St�ldal">
- New module for Liquibase integration.
- </action>
- <action issue="LOG4J2-1023" dev="ggregory" type="add" due-to="Mikael St�ldal">
- New RewritePolicy for changing level of a log event.
- </action>
- <action issue="LOG4J2-1015" dev="ggregory" type="add" due-to="Daniel Marcotte">
- Add a way to route messages based on the %marker in Layout for RoutingAppender.
- </action>
- <action issue="LOG4J2-1050" dev="ggregory" type="add" due-to="Adam Retter">
- Add a Log4jLookup class to help write log files relative to log4j2.xml.
- </action>
- <action issue="LOG4J2-1057" dev="ggregory" type="add">
- Add API org.apache.logging.log4j.LogManager.getFormatterLogger().
- </action>
- <action issue="LOG4J2-1066" dev="ggregory" type="add" due-to="Charles Allen">
- Expose Log4jContextFactory's ShutdownCallbackRegistry.
- </action>
- <action issue="LOG4J2-1084" dev="ggregory" type="fix" due-to="Philipp Schneider">
- Misleading StatusLogger WARN event in LogManager with java.util.Map.
- </action>
- <action issue="LOG4J2-1051" dev="ggregory" type="fix" due-to="Lukasz Lenart">
- NoClassDefFoundError when starting app on Google App Engine.
- </action>
- <action issue="LOG4J2-684" dev="ggregory" type="fix" due-to="Joern Huxhorn, Mauro Molinari">
- ExtendedThrowablePatternConverter does not print suppressed exceptions.
- </action>
- <action issue="LOG4J2-1069" dev="ggregory" type="fix" due-to="Sam Braam">
- Improper handling of JSON escape chars when deserializing JSON log events.
- </action>
- <action issue="LOG4J2-1068" dev="ggregory" type="fix" due-to="Andy McMullan">
- Exceptions not logged when using TcpSocketServer + SerializedLayout.
- </action>
- <action issue="LOG4J2-1067" dev="ggregory" type="fix" due-to="Sam Braam">
- ThrowableProxy getExtendedStackTraceAsString throws NPE on deserialized nested exceptions.
- </action>
- <action issue="LOG4J2-1049" dev="rpopma" type="fix" due-to="Robert Schaft">
- AsyncAppender now resets the thread interrupted flag after catching InterruptedException.
- </action>
- <action issue="LOG4J2-1048" dev="rpopma" type="fix" due-to="Nikhil">
- FileConfigurationMonitor unnecessarily calls System.currentTimeMillis() causing high CPU usage.
- </action>
- <action issue="LOG4J2-1037" dev="ggregory" type="fix" due-to="Marc Dergacz">
- Backward compatibility issue in log4j-1.2-api NDC pop() and peek().
- </action>
- <action issue="LOG4J2-1025" dev="ggregory" type="fix" due-to="Mikael St�ldal">
- Custom java.util.logging.Level gives null Log4j Level and causes NPE.
- </action>
- <action issue="LOG4J2-1033" dev="ggregory" type="fix" due-to="Mikael St�ldal">
- SimpleLogger creates unnecessary Map objects by calling ThreadContext.getContext() instead of getImmutableContext().
- </action>
- <action issue="LOG4J2-1026" dev="ggregory" type="fix">
- HighlightConverter does not obey noConsoleNoAnsi.
- </action>
- <action issue="LOG4J2-1019" dev="ggregory" type="fix">
- ZipCompressAction leaves files open until GC when an IO error takes place.
- </action>
- <action issue="LOG4J2-1020" dev="ggregory" type="fix">
- GzCompressAction leaves files open until GC when an IO error takes place.
- </action>
- <action issue="LOG4J2-1038" dev="ggregory" type="fix" due-to="Gili">
- Incorrect documentation for layout default charset.
- </action>
- <action issue="LOG4J2-1042" dev="ggregory" type="fix" due-to="Guillaume Turri">
- Socket and Syslog appenders don't take timeout into account at startup.
- </action>
- <action issue="LOG4J2-934" dev="ggregory" type="fix" due-to="Kenneth Gendron">
- Circular suppressed Exception throws StackOverflowError.
- </action>
- <action issue="LOG4J2-1046" dev="ggregory" type="fix" due-to="Kenneth Gendron">
- Circular Exception cause throws StackOverflowError.
- </action>
- <action issue="LOG4J2-982" dev="ggregory" type="fix" due-to="Mikhail Mazurskiy">
- Use System.nanoTime() to measure time intervals.
- </action>
- <action issue="LOG4J2-1045" dev="ggregory" type="fix" due-to="G�nter Albrecht">
- Externalize log4j2.xml via URL resource.
- </action>
- <action issue="LOG4J2-1058" dev="ggregory" type="fix" due-to="Daniel Branzea">
- Log4jMarker#contains(String) does not respect org.slf4j.Marker contract.
- </action>
- <action issue="LOG4J2-1060" dev="ggregory" type="fix">
- Log4jMarker#contains(Marker) does not respect org.slf4j.Marker contract.
- </action>
- <action issue="LOG4J2-1061" dev="ggregory" type="fix">
- Log4jMarker#remove(Marker) does not respect org.slf4j.Marker contract.
- </action>
- <action issue="LOG4J2-1062" dev="ggregory" type="fix">
- Log4jMarker#add(Marker) does not respect org.slf4j.Marker contract.
- </action>
- <action issue="LOG4J2-1064" dev="ggregory" type="fix">
- org.apache.logging.slf4j.Log4jMarker does not implement org.slf4j.Marker.equals(Object) org.slf4j.Marker.hashCode().
- </action>
- <action issue="LOG4J2-889" dev="rpopma" type="fix" due-to="Maciej Kara\u015b, Kenneth Leider">
- Header in layout should not be written on application startup if appending to an existing file. Fixes LOG4J2-1030.
- </action>
- <action issue="LOG4J2-918" dev="rpopma" type="fix">
- Clarify documentation for combining async with sync loggers.
- </action>
- <action issue="LOG4J2-1078" dev="ggregory" type="fix" due-to="Mikael St�ldal">
- GelfLayout throws exception if some log event fields are null.
- </action>
- <action issue="LOG4J2-1044" dev="rgoers" type="update">
- Support batchSize in FlumeAvroManager.
- </action>
- <action issue="LOG4J2-1065" dev="ggregory" type="update">
- Define org.apache.logging.log4j.Marker.equals(Object) and org.apache.logging.log4j.Marker.hashCode().
- </action>
- <action issue="LOG4J2-1063" dev="ggregory" type="update">
- Avoid creating temporary array object in org.apache.logging.slf4j.Log4jMarker.iterator().
- </action>
- <action issue="LOG4J2-890" dev="ggregory" type="update" due-to="Hassan Kalaldeh, Robert Andersson, Remko Popma">
- log4j-web-2.1 should workaround a bug in JBOSS EAP 6.2.
- </action>
- <action issue="LOG4J2-403" dev="ggregory" type="update" due-to="Poorna Subhash P, Jeremy Lautman">
- MongoDB appender, username and password should be optional.
- </action>
- <action issue="LOG4J2-1035" dev="ggregory" type="update">
- Log4j2 tries to SystemClassLoader when running on Google AppEngine.
- </action>
- <action issue="LOG4J2-1022" dev="rgoers" type="update">
- Allow a list of keys to be specified in the MDC pattern converter.
- </action>
- <action issue="LOG4J2-959" dev="ggregory" type="update">
- Fix FindBugs DM_DEFAULT_ENCODING bug in SimpleLogger.logMessage() and simplify code.
- </action>
- <action issue="LOG4J2-1036" dev="ggregory" type="update">
- Update Apache Flume from 1.5.2 to 1.6.0.
- </action>
- <action issue="LOG4J2-1041" dev="ggregory" type="update">
- Update MongoDB driver from 2.11.2 to 2.13.2.
- </action>
- <action issue="LOG4J2-1018" dev="ggregory" type="update">
- Update database tests from H2 1.3.175 to 1.3.176.
- </action>
- <action issue="LOG4J2-1070" dev="ggregory" type="update">
- Update Java Mail from 1.5.2 to 1.5.4.
- </action>
- <action issue="LOG4J2-1079" dev="ggregory" type="update">
- Update Jackson from 2.5.3 to 2.5.4.
- </action>
- <action issue="LOG4J2-1879" dev="ggregory" type="update">
- Update Jackson from 2.5.4 to 2.6.0.
- </action>
- <action issue="LOG4J2-1092" dev="ggregory" type="update">
- Update Jackson from 2.6.0 to 2.6.1.
- </action>
- <action issue="LOG4J2-1104" dev="ggregory" type="update">
- Update Apache Commons Compress from 1.9 to 1.10.
- </action>
- </release>
- <release version="2.3" date="2015-05-09" description="GA Release 2.3">
- <action issue="LOG4J2-1009" dev="ggregory" type="fix" due-to="Mikael St�ldal">
- Incorrectly defined compressionType parameter to GelfLayout.
- </action>
- <action issue="LOG4J2-1008" dev="ggregory" type="fix" due-to="Ralph Goers, Gary Gregory">
- org.apache.logging.log4j.core.config.plugins.util.ResolverUtil.extractPath(URL) incorrectly converts '+' characters to spaces.
- </action>
- <action issue="LOG4J2-1007" dev="ggregory" type="fix" due-to="Ralph Goers, Gary Gregory">
- org.apache.logging.log4j.core.util#fileFromUri(URI uri) incorrectly converts '+' characters to spaces.
- </action>
- <action issue="LOG4J2-1003" dev="ggregory" type="fix" due-to="Dan Armbrust">
- JUL Logger.throwing is mis-mapped to ERROR when it should be TRACE.
- </action>
- <action issue="LOG4J2-965" dev="ggregory" type="fix" due-to="Khotyn Huang">
- System.out no longer works after the Console appender and JANSI are initialized.
- </action>
- <action issue="LOG4J2-998" dev="ggregory" type="update" due-to="Mariano Gonzalez">
- Make org.apache.logging.log4j.core.Logger#updateConfiguration protected.
- </action>
- <action issue="LOG4J2-995" dev="rgoers" type="update">
- Move UTF-8 constant from Charsets to Constants class. Remove Charsets class.
- </action>
- <action issue="LOG4J2-993" dev="rgoers" type="fix">
- Deadlock would occur if appender thread creates a new Logger during reconfiguration.
- </action>
- <action issue="LOG4J2-991" dev="rpopma" type="fix" due-to="Ryan Rupp">
- Async root logger config should default includeLocation to false.
- </action>
- <action issue="LOG4J2-985" dev="rpopma" type="fix" due-to="Sean Dawson">
- AbstractFilter should not implement equals() and hashCode().
- </action>
- <action issue="LOG4J2-984" dev="ggregory" type="add" due-to="Jonas H�pfner">
- PatternLayout %highlight to support noConsoleNoAnsi like %style.
- </action>
- <action issue="LOG4J2-926" dev="ggregory" type="add" due-to="David Ohana">
- Truncate from the end of text format modifier.
- </action>
- <action issue="LOG4J2-980" dev="ggregory" type="fix" due-to="Mikhail Mazurskiy">
- Numerical overflow in BurstFilter not handled correctly.
- </action>
- <action issue="LOG4J2-981" dev="ggregory" type="fix" due-to="Mikhail Mazurskiy">
- Incorrect unlock in ProviderUtil.
- </action>
- <action issue="LOG4J2-966" dev="ggregory" type="fix" due-to="Gary Gregory">
- KeyStoreConfiguration.createKeyStoreConfiguration() ignores keyManagerFactoryAlgorithm.
- </action>
- <action issue="LOG4J2-976" dev="ggregory" type="fix" due-to="Matt Quinn">
- Using monitorInterval with YAML config file format causes JSONParseException.
- </action>
- <action issue="LOG4J2-964" dev="ggregory" type="fix" due-to="Jonne Jyryl�">
- StringFormattedMessage serialization is incorrect.
- </action>
- <action issue="LOG4J2-947" dev="ggregory" type="fix" due-to="Stefan Wehner">
- A new StatusLoggerAdmin listener is added to StatusLogger every time the log is reconfigured.
- </action>
- <action issue="LOG4J2-968" dev="ggregory" type="fix" due-to="Paul D Johe">
- SyslogLayout contains extra space.
- </action>
- <action issue="LOG4J2-967" dev="ggregory" type="fix" due-to="Stefan Wehner">
- log4j2.component.properties not read for all properties.
- </action>
- <action issue="LOG4J2-971" dev="ggregory" type="fix" due-to="Paul D Johe">
- Another bad priority in Syslog messages.
- </action>
- <action issue="LOG4J2-972" dev="ggregory" type="fix" due-to="Gary Gregory">
- org.apache.logging.log4j.core.net.ssl.TlsSyslogInputStreamReader does not need to create temp Integer objects.
- </action>
- <action issue="LOG4J2-974" dev="ggregory" type="fix" due-to="Daniel Gal�n y Martins">
- Typo in EventLogger documentation.
- </action>
- <action issue="LOG4J2-988" dev="ggregory" type="update" due-to="Gary Gregory">
- Update LMAX Disruptor from 3.3.0 to 3.3.2.
- </action>
- <action issue="LOG4J2-987" dev="ggregory" type="update" due-to="Gary Gregory">
- Migrate tests from Logback 1.1.2 to 1.1.3.
- </action>
- <action issue="LOG4J2-988" dev="ggregory" type="update" due-to="Gary Gregory">
- Update tests to use ActiveMQ from 5.10 to 5.11.1.
- </action>
- <action issue="LOG4J2-1004" dev="ggregory" type="update">
- Update Jackson from 2.5.1 to 2.5.3.
- </action>
- <action issue="LOG4J2-1005" dev="ggregory" type="update">
- Update Slf4j from 1.7.7 to 1.7.12.
- </action>
- </release>
- <release version="2.2" date="2015-02-22" description="GA Release 2.2">
- <action issue="LOG4J2-938" dev="rpopma" type="fix" due-to="Mauro Molinari">
- (JMX) To avoid memory leaks when web applications are restarted, JMX notifications are sent from
- the caller thread in web applications. For non-web applications notifications are sent from a background thread
- as before.
- </action>
- <action issue="LOG4J2-957" dev="ggregory" type="fix" due-to="fatih guleryuz">
- Missing toUpperCase(Locale.ENGLISH).
- </action>
- <action issue="LOG4J2-956" dev="ggregory" type="fix" due-to="David Kellerman">
- Manual refers to Route "AppenderRef" attribute, should be "ref".
- </action>
- <action issue="LOG4J2-955" dev="rpopma" type="update">
- Documentation: clarify system properties to control status logger, improve troubleshooting FAQ entry.
- </action>
- <action issue="LOG4J2-950" dev="ggregory" type="update" due-to="Joel Edwards">
- Incorrect attribute name in PropertiesRewritePolicy example.
- </action>
- <action issue="LOG4J2-944" dev="ggregory" type="fix" due-to="Vinayaka Ramachandra">
- Log4j Flume appender is not adding millisecond to the event headers when the event is logged at 000 milliseconds.
- </action>
- <action issue="LOG4J2-941" dev="ggregory" type="add" due-to="Konstantinos Liakos">
- Allow JSON layout to create one compact log record per line.
- </action>
- <action issue="LOG4J2-933" dev="ggregory" type="add" due-to="ppiman at gmail.com">
- HTML layout should not use attribute minimalization for hr noshade.
- </action>
- <action issue="LOG4J2-895" dev="ggregory" type="add">
- Specify the SyslogAppender connect timeout value as part of the configuration.
- The SyslogAppender takes a new parameter connectTimeoutMillis.
- </action>
- <action issue="LOG4J2-899" dev="ggregory" type="add">
- Specify the SocketAppender connect timeout value as part of the configuration.
- The SyslogAppender takes a new parameter connectTimeoutMillis.
- </action>
- <action issue="LOG4J2-924" dev="ggregory" type="fix" due-to="Ryan Rupp">
- Log4j 1.2 Bridge doesn't map level ALL correctly in Category.getEffectiveLevel().
- </action>
- <action issue="LOG4J2-931" dev="ggregory" type="fix" due-to="Robert Gacki">
- ConsoleAppender is missing @PluginFactory annotation at createAppender method.
- </action>
- <action issue="LOG4J2-919" dev="ggregory" type="fix" due-to="David Johle">
- Logging system fails to initialize if XInclude API is not available.
- </action>
- <action issue="LOG4J2-914" dev="ggregory" type="fix" due-to="Kaj Bjurman">
- ThrowableProxy.getExtendedStackTraceAsString causes NullPointerException.
- </action>
- <action issue="LOG4J2-912" dev="ggregory" type="fix">
- XML configuration does not report full error message for XInclude parser configuration problems.
- </action>
- <action issue="LOG4J2-903" dev="ggregory" type="fix" due-to="Mauro Molinari">
- ClassLoaderContextSelector uses ClassLoader.toString() as a key
- </action>
- <action issue="LOG4J2-834" dev="ggregory" type="fix" due-to="Nikita Koval, Leonard Broman, Thiago Kronig">
- ThrowableProxy throws NoClassDefFoundError.
- </action>
- <action issue="LOG4J2-893" dev="ggregory" type="fix">
- NullPointerException on filter when mapping JUL to Log4j2.
- </action>
- <action issue="LOG4J2-892" dev="ggregory" type="fix">
- JUL adapter does not map Log4j'2 FATAL level to a JUL level.
- </action>
- <action issue="LOG4J2-881" dev="ggregory" type="fix" due-to="Mariano Gonzalez">
- AbstractLifecycle should not implement equals() and hashCode().
- </action>
- <action issue="LOG4J2-897" dev="ggregory" type="fix">
- Javadoc for org.apache.log4j.BasicConfigurator.configure() is incorrect.
- </action>
- <action issue="LOG4J2-891" dev="ggregory" type="fix">
- AbstractLifecycle should not implement equals() and hashCode().
- </action>
- <action issue="LOG4J2-946" dev="ggregory" type="fix" due-to="artemonster">
- [docs] Using Log4j 2 in Web Applications: Update example (Log4jWebLifeCycle is not visible).
- </action>
- <action issue="LOG4J2-901" dev="ggregory" type="update" due-to="Tihomir Me\u0161\u010di\u0107, Siegfried Greisinger">
- Update docs for SyslogAppender: "No structured id name was supplied"
- </action>
- <action issue="LOG4J2-958" dev="ggregory" type="update">
- Update from Jackson 2.5.0 to 2.5.1.
- </action>
- <action issue="LOG4J2-925" dev="ggregory" type="update">
- Update from Jackson 2.4.4 to 2.5.0.
- </action>
- <action issue="LOG4J2-910" dev="ggregory" type="update">
- Update Jackson from 2.4.3 to 2.4.4.
- </action>
- <action issue="LOG4J2-881" dev="ggregory" type="update">
- Update Jackson from 2.4.2 to 2.4.3.
- </action>
- <action issue="LOG4J2-882" dev="ggregory" type="update">
- Update maven-core from 3.1.0 to 3.2.3.
- </action>
- <action issue="LOG4J2-883" dev="ggregory" type="update">
- Update tests from org.apache.felix.framework 4.2.1 to 4.4.1.
- </action>
- <action issue="LOG4J2-884" dev="ggregory" type="update">
- Update org.eclipse.osgi from 3.6.0 to 3.7.1.
- </action>
- <action issue="LOG4J2-900" dev="ggregory" type="update">
- Update Apache Flume from 1.5.0.1 to 1.5.2.
- </action>
- </release>
- <release version="2.1" date="2014-10-19" description="GA Release 2.1">
- <action issue="LOG4J2-676" dev="rgoers" type="fix" due-to="Stefan Bodewig">
- Some typo fixes and enhancements for the site.
- </action>
- <action issue="LOG4J2-868" dev="mattsicker" type="add">
- Add ShutdownCallbackRegistry interface for customizable shutdown callback handling. This is particularly
- useful for application servers that wish to integrate with Log4j 2.
- </action>
- <action issue="LOG4J2-866" dev="rpopma" type="fix" due-to="Gerard Weatherby">
- Documentation: fixed missing closing parenthesis in code example.
- </action>
- <action issue="LOG4J2-862" dev="mattsicker" type="fix" due-to="Michael Sutherland">
- Fixed classloader issue that prevented Log4j from finding the implementation when used in a custom Ant task.
- </action>
- <action issue="LOG4J2-589" dev="rpopma" type="add">
- Supported filtering on custom log levels in configuration.
- </action>
- <action issue="LOG4J2-861" dev="rpopma" type="fix">
- Documentation: fix broken links on left navigation Extending Log4j Configuration sub-menu.
- </action>
- <action issue="LOG4J2-856" dev="rpopma" type="add">
- Documentation: add sections on the JUL Adapter, IO Streams and NoSQL Appenders to the Maven and Ivy page.
- </action>
- <action issue="LOG4J2-797" dev="rpopma" type="fix" due-to="Andreas Rytina">
- Documentation: clarified why log4j-core is a compile time dependency in Maven and Ivy page.
- </action>
- <action issue="LOG4J2-855" dev="rpopma" type="fix">
- Documentation: fix broken links on Appenders manual page.
- </action>
- <action issue="LOG4J2-807" dev="rpopma" type="fix">
- Prevent NPE when configuration with AsyncLogger/AsyncRoot is reloaded.
- </action>
- <action issue="LOG4J2-848" dev="ggregory" type="add">
- Add a Java lookup to provide nicely formatted runtime version information.
- </action>
- <action issue="LOG4J2-809" dev="mattsicker" type="add">
- Move reflection utility class to API's private utility classes.
- </action>
- <action issue="LOG4J2-845" dev="mattsicker" type="update">
- Add 2.1.0 to compatible versions in Log4j API ProviderUtil and update Log4jAPIVersion to 2.1.0 in
- core META-INF/log4j-provider.properties.
- </action>
- <action issue="LOG4J2-833" dev="rpopma" type="add">
- Documentation: added Runtime Dependencies link to left nav-bar on site.
- </action>
- <action issue="LOG4J2-816" dev="rpopma" type="add">
- Documentation: added section on XInclude to user manual Configuration page.
- </action>
- <action issue="LOG4J2-678" dev="rpopma" type="fix" due-to="Matt Sicker">
- Documentation: fixed minor issues with Log4j2 web site/documentation.
- </action>
- <action issue="LOG4J2-844" dev="rpopma" type="update">
- Update JMH to 1.1 from 0.7.2.
- </action>
- <action issue="LOG4J2-843" dev="rpopma" type="fix">
- Migrate JpaHyperSqlAppenderTest JUnit performance test to log4j-perf.
- </action>
- <action issue="LOG4J2-842" dev="rpopma" type="fix">
- Migrate JpaH2AppenderTest JUnit performance test to log4j-perf.
- </action>
- <action issue="LOG4J2-841" dev="rpopma" type="fix">
- Migrate JdbcHyperSqlAppenderTest JUnit performance test to log4j-perf.
- </action>
- <action issue="LOG4J2-840" dev="rpopma" type="fix">
- Migrate JdbcH2AppenderTest JUnit performance test to log4j-perf.
- </action>
- <action issue="LOG4J2-830" dev="rpopma" type="fix">
- Respect external interrupt signal to allow application shutdown after joining AsyncAppender thread.
- </action>
- <action issue="LOG4J2-813" dev="ggregory" type="fix" due-to="David Erichsen, Brandon Barry">
- MarkerManager Log4jMarker.hasParents() returns opposite of correct result.
- </action>
- <action issue="LOG4J2-785" dev="rpopma" type="fix">
- Documentation: fixed capitalization inconsistency in user manual example config.
- </action>
- <action issue="LOG4J2-829" dev="rpopma" type="fix">
- Fixed issue in RollingFile filePattern: backslashes are path separators, not escape characters.
- </action>
- <action issue="LOG4J2-547" dev="mattsicker" type="add">
- Add the Log4j IOStreams component.
- </action>
- <action issue="LOG4J2-431" dev="rpopma" type="add" due-to="Claude Mamo">
- Added Memory-Mapped File Appender.
- </action>
- <action issue="LOG4J2-832" dev="ggregory" type="fix" due-to="Seth Leger">
- ThrowableProxy fails if a class in logged stack trace throws java.lang.Error from initializer
- </action>
- <action issue="LOG4J2-831" dev="rpopma" type="update">
- Documentation: updated FAQ "which jars" diagrams for JUL bridge and 2.1 version.
- </action>
- <action issue="LOG4J2-827" dev="mattsicker" type="add">
- Support use of TypeConverter classes through the standard Plugin system.
- </action>
- <action issue="LOG4J2-745" dev="mattsicker" type="fix" due-to="Scott Harrington">
- Avoid ConverterKey plugin clashes by using a more predictable plugin loading infrastructure.
- Plugins have been segmented into three parts: class path, user-specified packages, and OSGi bundles.
- </action>
- <action issue="LOG4J2-798" dev="mattsicker" type="fix" due-to="Scott Harrington">
- Fixed plugin scanning redundancy causing massive slowdowns in certain environments.
- </action>
- <action issue="LOG4J2-753" dev="rpopma" type="fix">
- Reduced CachedClock thread contention.
- </action>
- <action issue="LOG4J2-819" dev="mattsicker" type="fix" due-to="Gary Gregory">
- Fixed memory leak in Tomcat 6 caused by clock background threads unintentionally
- started by Tomcat after web application stop.
- </action>
- <action issue="LOG4J2-825" dev="mattsicker" type="add">
- Add simple validation constraint annotations for the Plugin system.
- </action>
- <action issue="LOG4J2-428" dev="ggregory" type="add" due-to="Mark Paluch, Mikael St�ldal">
- Implement a GELF layout.
- </action>
- <action issue="LOG4J2-391" dev="rgoers" type="fix" due-to="Kamal Bahadur">
- FlumePersistentManager now handles LockConflictExceptions in Berkeley Db when sending a batch.
- </action>
- <action issue="LOG4J2-782" dev="mattsicker" type="fix">
- Remove invalid Oracle Maven repository.
- </action>
- <action issue="LOG4J2-780" dev="mattsicker" type="update">
- Update Spring Framework to 3.2.11.RELEASE from 3.2.8.RELEASE.
- </action>
- <action issue="LOG4J2-815" dev="mattsicker" type="update">
- Unify the two JMS appenders into a single appender. Configurations written for 2.0 will still work in 2.1+.
- </action>
- <action issue="LOG4J2-608" dev="mattsicker" type="add">
- Add java.util.logging implementation based on log4j-api. See log4j-jul documentation for more details.
- </action>
- <action issue="LOG4J2-796" dev="rpopma" type="fix">
- Fixed issue where log4j-to-slf4j did not work correctly with SLF4J Simple Logger.
- </action>
- <action issue="LOG4J2-811" dev="ggregory" type="fix" due-to="Yogesh Rao">
- SimpleLogger throws ArrayIndexOutOfBoundsException for an empty array.
- </action>
- <action issue="LOG4J2-663" dev="mattsicker" type="fix" due-to="Florian Brunner">
- Fix OSGi Import-Package problem with the JMS API.
- </action>
- <action issue="LOG4J2-793" dev="mattsicker" type="add">
- Add support for custom SLF4J Markers in log4j-slf4j-impl module.
- </action>
- <action issue="LOG4J2-783" dev="rpopma" type="fix" due-to="Minglei Lee">
- PatternLayout should use platform character encoding by default, not UTF-8.
- </action>
- <action issue="LOG4J2-771" dev="ggregory" type="add">
- Add lookup for application main arguments.
- </action>
- <action issue="LOG4J2-787" dev="ggregory" type="add">
- Add lookup for JVM arguments.
- </action>
- <action issue="LOG4J2-790" dev="ggregory" type="update">
- Update Jackson to 2.4.2 from 2.4.1 (for XML and JSON processing).
- </action>
- <action issue="LOG4J2-766" dev="ggregory" type="update" due-to="Bruno P. Kinoshita">
- Incomplete documentation for JSONLayout.
- </action>
- <action issue="LOG4J2-800" dev="ggregory" type="update">
- All life cycle implementations should be serializable.
- This is still work in progress.
- </action>
- <action issue="LOG4J2-801" dev="ggregory" type="update">
- org.apache.logging.log4j.core.Logger should be serializable.
- This is still work in progress.
- </action>
- <action issue="LOG4J2-810" dev="ggregory" type="update">
- Update javax.mail to 1.5.2 from 1.5.0.
- </action>
- <action issue="LOG4J2-822" dev="ggregory" type="update">
- Update org.eclipse.persistence.jpa to 2.5.2 from 2.5.1.
- </action>
- <action issue="LOG4J2-867" dev="ggregory" type="update">
- FlumeAppender: maxDelay not in seconds, but milliseconds.
- Add time scale to some settings, for example maxDelayMillis instead of maxDelay.
- The old names are aliased for compatibility.
- </action>
- </release>
- <release version="2.0.2" date="2014-08-16" description="Bug fixes and enhancements">
- <action issue="LOG4J2-775" dev="ggregory" type="update">
- Update Apache Flume to 1.5.0.1 from 1.5.0.
- </action>
- <action issue="LOG4J2-773" dev="rpopma" type="fix">
- Site: log4j-core component pages were still using the old logo.
- </action>
- <action issue="LOG4J2-760" dev="rpopma" type="fix">
- Documentation improvement: link to dependency tree from log4j-core component page,
- link to log4j-core component page from FAQ page.
- </action>
- <action issue="LOG4J2-679" dev="rpopma" type="fix">
- Resolved race condition that caused log file rotation to fail with error: "Unable to create directory ..."
- </action>
- <action issue="LOG4J2-726" dev="rpopma" type="fix">
- Prevent application from hanging when PatternLayout configuration has opening '{' but no closing '}'.
- </action>
- <action issue="LOG4J2-769" dev="rpopma" type="fix" due-to="Scott Harrington">
- Startup takes a long time if you have empty packages attribute.
- </action>
- <action issue="LOG4J2-763" dev="rpopma" type="fix" due-to="Stephen Connolly">
- Improved asynchronous loggers and appenders to ensure the formatted message does not change even if
- parameters are modified by the application. (ParameterizedMessage was already safe.)
- Improved documentation.
- </action>
- <action issue="LOG4J2-729" dev="rpopma" type="fix">
- Emit warning message to console if no configuration file found.
- </action>
- <action issue="LOG4J2-765" dev="rpopma" type="fix">
- Improve warning message when missing log4j-core in the classpath.
- </action>
- <action issue="LOG4J2-722" dev="rpopma" type="fix">
- Clarified in documentation that Commons Logging jar is required when using log4j-jcl.
- </action>
- <action issue="LOG4J2-723" dev="rpopma" type="fix">
- Clarified in documentation that SLF4J API jar is required when using log4j-slf4j-impl.
- </action>
- <action issue="LOG4J2-730" dev="rpopma" type="update">
- Allow Log4jContextFactory subclasses to specify a custom ContextSelector.
- </action>
- <action issue="LOG4J2-759" dev="rpopma" type="fix">
- Fixed various minor site/documentation issues, mostly versioning related.
- </action>
- <action issue="LOG4J2-756" dev="rpopma" type="fix" due-to="Scott Harrington">
- Prevent JUnit test from creating unnecessary Log4j2Plugins.dat during build.
- </action>
- </release>
- <release version="2.0.1" date="2014-07-29" description="Bug fixes">
- <action issue="LOG4J2-744" dev="rpopma" type="fix" due-to="Scott Harrington">
- Avoid unnecessary Clock calls when TimestampMessage is logged.
- </action>
- <action issue="LOG4J2-704" dev="rpopma" type="fix">
- Improved error message if configuration file not found.
- </action>
- <action issue="LOG4J2-750" dev="ggregory" type="fix" due-to="Mike Calmus">
- Webapp configuration page has incorrect class name.
- </action>
- <action issue="LOG4J2-749" dev="rpopma" type="fix" due-to="Scott Harrington">
- Retain the default date pattern after fixing the ISO8601 pattern.
- </action>
- <action issue="LOG4J2-670" dev="rpopma" type="fix">
- DatePatternConverter ISO8601_PATTERN now conforms to ISO8601.
- </action>
- <action issue="LOG4J2-741" dev="rpopma" type="fix">
- Reinstate the package configuration attribute for discovering custom plugins.
- </action>
- <action issue="LOG4J2-742" dev="ggregory" type="fix" due-to="Pascal Chollet">
- XInclude not working with relative path.
- </action>
- <action issue="LOG4J2-740" dev="mattsicker" type="fix" due-to="Kosta Krauth">
- Fixed typo in webapp manual regarding sample web.xml file.
- </action>
- <action issue="LOG4J2-738" dev="ggregory" type="fix" due-to="Timothy Stack">
- RollingFileManager deadlock if async action thread fails to start.
- </action>
- <action issue="LOG4J2-736" dev="mattsicker" type="fix">
- Fixed log4j-bom so that it won't specify a default scope on any third party dependencies.
- </action>
- <action issue="LOG4J2-735" dev="mattsicker" type="fix">
- Fixed log4j-bom so that it won't interfere with spring-bom and others.
- </action>
- <action issue="LOG4J2-731" dev="mattsicker" type="fix">
- Updated documentation regarding extensions to LoggerContextFactory and Log4j 2 providers.
- </action>
- <action issue="LOG4J2-373" dev="mattsicker" type="fix">
- Fixed ClassLoader issues in loading Log4j providers in an OSGi environment.
- </action>
- <action issue="LOG4J2-725" dev="mattsicker" type="add">
- Added WebLoggerContextUtils class to log4j-web for helper methods useful for asynchronous servlets.
- </action>
- <action issue="LOG4J2-710" dev="rpopma" type="add">
- Added documentation for Custom Levels and Custom Loggers.
- </action>
- <action issue="LOG4J2-719" dev="rpopma" type="fix">
- Correctly handle NetworkOnMainThreadException thrown on Android during Log4j2 initialization.
- </action>
- <action issue="LOG4J2-716" dev="rpopma" type="fix">
- Automatically disable log4j JMX when detecting we are running on Android.
- </action>
- <action issue="LOG4J2-657" dev="rpopma" type="fix" due-to="Stefan Wehner">
- Fixed AbstractDatabaseManager to close connection on writeInternal error.
- </action>
- <action issue="LOG4J2-713" dev="ggregory" type="fix" due-to="Nelson Melina">
- Android: java.lang.VerifyError: org/apache/logging/log4j/core/util/Closer
- </action>
- <action issue="LOG4J2-703" dev="ggregory" type="fix" due-to="Nelson Melina">
- Android: Could not find class 'javax.naming.InitialContext', referenced from method org.apache.logging.log4j.core.lookup.JndiLookup.lookup.
- </action>
- <action issue="LOG4J2-732" dev="ggregory" type="updated">
- Update to LMAX Disruptor 3.3.0 from 3.2.1.
- </action>
- <action issue="LOG4J2-733" dev="ggregory" type="updated">
- Update to latest Jackson jars from the 2.4.1.X line.
- </action>
- </release>
- <release version="2.0" date="2014-07-12" description="GA Release">
- <action issue="LOG4J2-705" dev="rpopma" type="fix">
- Fixed issue where Async Logger does not log thread context stack data.
- API change: added method getImmutableStackOrNull() to ThreadContext.ContextStack interface.
- </action>
- <action issue="LOG4J2-631" dev="rpopma" type="fix">
- Update docs to clarify how to use formatter logger and standard logger together.
- </action>
- <action issue="LOG4J2-519" dev="rpopma" type="add">
- Added support for generating custom logger wrappers that replace the existing log levels
- and extended logger wrappers that add custom log levels to the existing ones.
- </action>
- <action issue="LOG4J2-441" dev="rgoers" type="fix">
- LoggerConfigs with no Level now inherit the Level from their parent.
- </action>
- <action issue="LOG4J2-696" dev="ggregory" type="add">
- RegexFilter does not match multiline log messages.
- </action>
- <action issue="LOG4J2-699" dev="rpopma" type="fix">
- PatternLayout manual page missing documentation on header/footer.
- </action>
- <action issue="LOG4J2-625" dev="rpopma" type="fix">
- Fixed Serialization error with SocketAppender and Async Loggers.
- (Fixed in RC2, but wasn't included in release notes.)
- </action>
- <action issue="LOG4J2-538" dev="rpopma" type="fix">
- JMX GUI: fixed occasional ArrayIndexOutOfBoundsException after pressing "reconfigure with XML below".
- (Fixed in RC2, but wasn't included in release notes.)
- </action>
- <action issue="LOG4J2-666" dev="rpopma" type="fix">
- AsyncLoggerContextSelector should ensure that different AsyncLoggerContext objects created by web app classloaders have unique names.
- </action>
- <action issue="LOG4J2-683" dev="mattsicker" type="fix" due-to="Jurriaan Mous">
- Fix annotation processor warnings on JDK 1.7+.
- </action>
- <action issue="LOG4J2-694" dev="mattsicker" type="fix">
- Fix strange compilation error that popped up in a test class.
- </action>
- <action issue="LOG4J2-692" dev="rgoers" type="fix">
- Update documentation to specify only Maven 3 is supported.
- </action>
- <action issue="LOG4J2-690" dev="rgoers" type="fix" due-to="Philip Helger">
- Log4j Web test dependencies should be in scope "test" in the pom.
- </action>
- <action issue="LOG4J2-682" dev="ggregory" type="fix" due-to="Scott Harrington">
- Special characters (tab and so on) in PatternLayout do not work.
- </action>
- <action issue="LOG4J2-685" dev="ggregory" type="update">
- Make org.apache.logging.log4j.core.layout.AbstractLayout immutable.
- </action>
- <action issue="LOG4J2-686" dev="ggregory" type="fix">
- Core's OptionConverter support for \b is broken (affects PatternLayout).
- </action>
- <action issue="LOG4J2-687" dev="ggregory" type="fix">
- Rename org.apache.logging.log4j.core.util.Closer.closeSilent() to closeSilently().
- </action>
- <action issue="LOG4J2-688" dev="ggregory" type="fix">
- Make org.apache.logging.log4j.core.layout.PatternLayout immutable.
- </action>
- <action issue="LOG4J2-689" dev="ggregory" type="update">
- Update Jackson to 2.4.1.
- </action>
- <action issue="LOG4J2-707" dev="ggregory" type="fix">
- Some exceptions are not logged when configuration problems are detected.
- </action>
- <action issue="LOG4J2-709" dev="ggregory" type="update">
- Update Apache Commons Logging to 1.2 from 1.1.3.
- </action>
- </release>
- <release version="2.0-rc2" date="2014-06-21" description="Bug fixes and enhancements">
- <action issue="LOG4J2-675" dev="rpopma" type="add">
- RollingFile and RollingRandomAccessFile now write the layout footer before rollover.
- </action>
- <action issue="LOG4J2-581" dev="rpopma" type="fix" due-to="Alexander Khokhlov">
- RollingRandomAccessFile now writes the layout header after rollover.
- </action>
- <action issue="LOG4J2-622" dev="rpopma" type="fix" due-to="Farooq Khan">
- RollingFileManager now correctly honours the bufferedIO configuration after rollover.
- </action>
- <action issue="LOG4J2-674" dev="rpopma" type="add">
- Made RollingFileAppender buffer size configurable.
- </action>
- <action issue="LOG4J2-141" dev="rpopma" type="fix" due-to="Joern Huxhorn">
- Improved documentation regarding log4j status logger.
- </action>
- <action issue="LOG4J2-539" dev="rpopma" type="fix" due-to="Colin Froggatt">
- Fixed issue with "Reconfigure using XML below" function in JMX Client GUI.
- ConfigurationSource is now a top-level class and can be obtained with Configuration.getConfigurationSource().
- LoggerContext.getConfiguration().getConfigurationSource()
- provides a reliable public method for obtaining a logger context's configuration location and content.
- </action>
- <action issue="LOG4J2-619" dev="rgoers" type="fix" due-to="Scott Harrington">
- Invalid XML configuration files do not prevent the config file from being checked again.
- </action>
- <action issue="LOG4J2-637" dev="rpopma" type="fix" due-to="Mansoor Sajjad, Jon Wilmoth">
- JMX: Updating a Logger's level via jConsole now correctly takes effect.
- </action>
- <action issue="LOG4J2-668" dev="rpopma" type="fix">
- Correctly process log events when combining AsyncLoggers with AsyncAppender.
- </action>
- <action issue="LOG4J2-669" dev="rpopma" type="fix">
- Prevent NPE when combining AsyncLoggers with AsyncLoggerConfigs.
- </action>
- <action issue="LOG4J2-42" dev="rgoers" type="add">
- Create an appender to route log events to the ServletContext log.
- </action>
- <action issue="LOG4J2-419" dev="rgoers" type="update" due-to="Woonsan Ko">
- Support default value for missing key in look ups with fallbacking to looking in the properties map.
- </action>
- <action issue="LOG4J2-563" dev="rgoers" type="fix" due-to="Michael Friedmann">
- FlumeAvroManager now always uses a client type of default_failover.
- </action>
- <action issue="LOG4J2-554" dev="rgoers" type="update">
- Allow configuration files to be located as Servlet Context resources.
- </action>
- <action issue="LOG4J2-535" dev="rgoers" type="fix">
- Reset rollover time when size rollover is triggered.
- </action>
- <action issue="LOG4J2-664" dev="mattsicker" type="fix">
- Moved plugin cache file to META-INF for OSGi compatibility.
- </action>
- <action issue="LOG4J2-640" dev="mattsicker" type="fix">
- Fix NPE that can be caused by a null ThreadContextClassLoader.
- </action>
- <action issue="LOG4J2-655" dev="mattsicker" type="add">
- Add Vagrantfile for testing in GNU+Linux.
- </action>
- <action issue="LOG4J2-651" dev="ggregory" type="fix">
- Log4j 2 throws ArrayIndexOutOfBoundsException.
- </action>
- <action issue="LOG4J2-654" dev="rpopma" type="add">
- Add log4j-perf module to provide a home for all log4j performance tests.
- Add support for JMH microbenchmark performance tests.
- </action>
- <action issue="LOG4J2-652" dev="mattsicker" type="add">
- Add support for default plugin values and attributes.
- </action>
- <action issue="LOG4J2-598" dev="mattsicker" type="add">
- Add support for types other than String for plugin factory values/attributes.
- </action>
- <action issue="LOG4J2-250" dev="rpopma" type="update">
- Refactor Log4jLogEvent to lazily create ThrowableProxy.
- </action>
- <action issue="LOG4J2-647" dev="ggregory" type="update">
- Upgrade to Flume 1.5.0.
- </action>
- <action issue="LOG4J2-644" dev="ggregory" type="add">
- Implement a SecureSocketAppender and secure server (SSL/TLS).
- </action>
- <action issue="LOG4J2-646" dev="ggregory" type="update">
- Merge the TLS Syslog appender into the Syslog appender.
- </action>
- <action issue="LOG4J2-620" dev="rgoers" type="fix">
- Perform reconfiguration in a separate thread to prevent deadlocks.
- </action>
- <action issue="LOG4J2-641" dev="mattsicker" type="update">
- Override commons-logging dependency version in tests.
- </action>
- <action issue="LOG4J2-639" dev="rpopma" type="fix" due-to="Mck SembWever">
- Prevent NPE in AsyncLogger and AsyncLoggerConfig if logger is used after log4j has been shut down.
- </action>
- <action issue="LOG4J2-469" dev="rgoers" type="fix">
- FailoverAppender was not resetting its status after the primary appender recovered.
- </action>
- <action issue="LOG4J2-623" dev="rgoers" type="fix">
- Generate MDC properties as a JSON map in JSONLayout.
- </action>
- <action issue="LOG4J2-566" dev="rpopma" type="update" due-to="Luigi Alice">
- Made RollingRandomAccessFileAppender buffer size configurable.
- </action>
- <action issue="LOG4J2-520" dev="rpopma" type="fix" due-to="JavaTech, Andre Bogus">
- Resolved issue where AsyncAppender dropped events if queue still contained
- events when application is stopped.
- </action>
- <action issue="LOG4J2-392" dev="rpopma" type="fix" due-to="Andre Bogus">
- Resolved a problem with the previous solution for LOG4J2-392 that resulted in dropped events
- when using AsyncLoggerConfig with slow appenders when application is stopped.
- </action>
- <action issue="LOG4J2-613" dev="mattsicker" type="fix">
- The OSGi version of log4j-web imports Servlet 2.5 at minimum instead of 3.0.
- </action>
- <action issue="LOG4J2-602" dev="rgoers" type="fix">
- Unit tests are now less verbose during the build process.
- </action>
- <action issue="LOG4J2-570" dev="mattsicker" type="fix">
- Fix shutdown thread memory leak in servlet containers.
- </action>
- <action issue="LOG4J2-628" dev="rpopma" type="update">
- Use Clock to generate all log event timestamps, not just for Async Loggers.
- </action>
- <action issue="LOG4J2-629" dev="rpopma" type="add">
- Document the system properties used in Log4J 2.
- </action>
- <action issue="LOG4J2-542" dev="rgoers" type="fix">
- Make Throwable transient in ThrowableProxy.
- </action>
- <action issue="LOG4J2-617" dev="mattsicker" type="update">
- Update SLF4J to 1.7.7.
- </action>
- <action issue="LOG4J2-616"
<TRUNCATED>
[07/16] logging-log4j2 git commit: Add logging on error
Posted by gg...@apache.org.
Add logging on error
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/409340de
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/409340de
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/409340de
Branch: refs/heads/StyledMessage
Commit: 409340deee5d7e4926195a1a2d6db1e22e6439f9
Parents: d5eaed8
Author: Ralph Goers <rg...@nextiva.com>
Authored: Mon Jul 4 12:21:53 2016 -0700
Committer: Ralph Goers <rg...@nextiva.com>
Committed: Mon Jul 4 12:21:53 2016 -0700
----------------------------------------------------------------------
.../log4j/core/appender/rolling/RollingAppenderCronTest.java | 4 ++++
1 file changed, 4 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/409340de/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronTest.java
index 164e5f2..e686024 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronTest.java
@@ -79,6 +79,10 @@ public class RollingAppenderCronTest {
Thread.sleep(100); // Allow time for rollover to complete
}
if (!succeeded) {
+ final File[] files = dir.listFiles();
+ for (File dirFile : files) {
+ logger.error("Found file: " + dirFile.getPath());
+ }
fail("No compressed files found");
}
final Path src = FileSystems.getDefault().getPath("target/test-classes/log4j-rolling-cron2.xml");
[03/16] logging-log4j2 git commit: LOG4J2-1434 trim StringBuilder
immediately after use in PatternLayout
Posted by gg...@apache.org.
LOG4J2-1434 trim StringBuilder immediately after use in PatternLayout
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/bd077fc8
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/bd077fc8
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/bd077fc8
Branch: refs/heads/StyledMessage
Commit: bd077fc87c6b6b9e1735e4f9bc6b7b35398fe5cf
Parents: bb77c0e
Author: rpopma <rp...@apache.org>
Authored: Sat Jul 2 21:19:49 2016 +0900
Committer: rpopma <rp...@apache.org>
Committed: Sat Jul 2 21:19:49 2016 +0900
----------------------------------------------------------------------
.../logging/log4j/core/layout/PatternLayout.java | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/bd077fc8/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/PatternLayout.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/PatternLayout.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/PatternLayout.java
index 1e854dd..7fde3c8 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/PatternLayout.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/PatternLayout.java
@@ -180,6 +180,7 @@ public final class PatternLayout extends AbstractStringLayout {
final StringBuilder text = toText((Serializer2) eventSerializer, event, getStringBuilder());
final Encoder<StringBuilder> encoder = getStringBuilderEncoder();
encoder.encode(text, destination);
+ trimToMaxSize(text);
}
/**
@@ -278,7 +279,12 @@ public final class PatternLayout extends AbstractStringLayout {
@Override
public String toSerializable(final LogEvent event) {
- return toSerializable(event, getStringBuilder()).toString();
+ final StringBuilder sb = getStringBuilder();
+ try {
+ return toSerializable(event, sb).toString();
+ } finally {
+ trimToMaxSize(sb);
+ }
}
@Override
@@ -322,7 +328,12 @@ public final class PatternLayout extends AbstractStringLayout {
@Override
public String toSerializable(final LogEvent event) {
- return toSerializable(event, getStringBuilder()).toString();
+ final StringBuilder sb = getStringBuilder();
+ try {
+ return toSerializable(event, sb).toString();
+ } finally {
+ trimToMaxSize(sb);
+ }
}
@Override
[05/16] logging-log4j2 git commit: LOG4J2-1250 - CronTriggeringPolicy
was not properly setting the prevFileTime value for the PatternProcessor so
file dates and times on rolled over files were incorrect. Also fixed
CleanFiles error where it was failing e
Posted by gg...@apache.org.
LOG4J2-1250 - CronTriggeringPolicy was not properly setting the prevFileTime value for the PatternProcessor so file dates and times on rolled over files were incorrect. Also fixed CleanFiles error where it was failing even though a subsequent loop iteration deleted the files
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/730a1cc7
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/730a1cc7
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/730a1cc7
Branch: refs/heads/StyledMessage
Commit: 730a1cc7cc99f9e08cc8dd4a3c3e31ffc3a20f0f
Parents: b0b4f86
Author: Ralph Goers <rg...@nextiva.com>
Authored: Mon Jul 4 06:57:14 2016 -0700
Committer: Ralph Goers <rg...@nextiva.com>
Committed: Mon Jul 4 06:57:14 2016 -0700
----------------------------------------------------------------------
.../appender/rolling/CronTriggeringPolicy.java | 37 ++++++++++++-----
.../core/appender/rolling/PatternProcessor.java | 12 +++++-
.../appender/rolling/RollingFileManager.java | 1 +
.../rolling/action/CommonsCompressAction.java | 9 +++-
.../core/config/ConfigurationScheduler.java | 24 ++++++-----
.../log4j/core/config/CronScheduledFuture.java | 43 ++++++++++++++------
.../rolling/OnStartupTriggeringPolicyTest.java | 23 +++++++----
.../rolling/RollingAppenderCronTest.java | 5 +++
.../rolling/RollingAppenderSizeTest.java | 6 +++
.../logging/log4j/junit/CleanFolders.java | 28 +++++++++----
src/changes/changes.xml | 4 ++
11 files changed, 137 insertions(+), 55 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/730a1cc7/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/CronTriggeringPolicy.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/CronTriggeringPolicy.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/CronTriggeringPolicy.java
index 863ea9d..fb7e084 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/CronTriggeringPolicy.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/CronTriggeringPolicy.java
@@ -16,9 +16,14 @@
*/
package org.apache.logging.log4j.core.appender.rolling;
+import java.text.ParseException;
+import java.util.Calendar;
+import java.util.Date;
+
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LogEvent;
import org.apache.logging.log4j.core.config.Configuration;
+import org.apache.logging.log4j.core.config.CronScheduledFuture;
import org.apache.logging.log4j.core.config.Scheduled;
import org.apache.logging.log4j.core.config.plugins.Plugin;
import org.apache.logging.log4j.core.config.plugins.PluginAttribute;
@@ -27,9 +32,6 @@ import org.apache.logging.log4j.core.config.plugins.PluginFactory;
import org.apache.logging.log4j.core.util.CronExpression;
import org.apache.logging.log4j.status.StatusLogger;
-import java.text.ParseException;
-import java.util.Date;
-
/**
* Rolls a file over based on a cron schedule.
*/
@@ -37,14 +39,17 @@ import java.util.Date;
@Scheduled
public final class CronTriggeringPolicy implements TriggeringPolicy {
- private static Logger LOGGER = StatusLogger.getLogger();
+ private static final Logger LOGGER = StatusLogger.getLogger();
private static final String defaultSchedule = "0 0 0 * * ?";
private RollingFileManager manager;
private final CronExpression cronExpression;
private final Configuration configuration;
private final boolean checkOnStartup;
+ private volatile Date nextRollDate;
+ private CronScheduledFuture future;
- private CronTriggeringPolicy(final CronExpression schedule, final boolean checkOnStartup, final Configuration configuration) {
+ private CronTriggeringPolicy(final CronExpression schedule, final boolean checkOnStartup,
+ final Configuration configuration) {
this.cronExpression = schedule;
this.configuration = configuration;
this.checkOnStartup = checkOnStartup;
@@ -57,13 +62,14 @@ public final class CronTriggeringPolicy implements TriggeringPolicy {
@Override
public void initialize(final RollingFileManager aManager) {
this.manager = aManager;
+ final Date nextDate = new Date(this.manager.getFileTime());
+ nextRollDate = cronExpression.getNextValidTimeAfter(nextDate);
if (checkOnStartup) {
- final Date nextDate = cronExpression.getNextValidTimeAfter(new Date(this.manager.getFileTime()));
- if (nextDate.getTime() < System.currentTimeMillis()) {
- manager.rollover();
+ if (nextRollDate.getTime() < System.currentTimeMillis()) {
+ rollover();
}
}
- configuration.getScheduler().scheduleWithCron(cronExpression, new CronTrigger());
+ future = configuration.getScheduler().scheduleWithCron(cronExpression, new CronTrigger());
}
/**
@@ -116,6 +122,16 @@ public final class CronTriggeringPolicy implements TriggeringPolicy {
}
}
+ private void rollover() {
+ manager.getPatternProcessor().setPrevFileTime(nextRollDate.getTime());
+ manager.rollover();
+ final Date fireDate = future.getFireTime();
+ Calendar cal = Calendar.getInstance();
+ cal.setTime(fireDate);
+ cal.add(Calendar.SECOND, -1);
+ nextRollDate = cal.getTime();
+ }
+
@Override
public String toString() {
return "CronTriggeringPolicy(schedule=" + cronExpression.getCronExpression() + ")";
@@ -125,8 +141,7 @@ public final class CronTriggeringPolicy implements TriggeringPolicy {
@Override
public void run() {
- manager.rollover();
+ rollover();
}
}
-
}
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/730a1cc7/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java
index 0dee11e..ba7934e 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java
@@ -57,7 +57,7 @@ public class PatternProcessor {
private long nextFileTime = 0;
private RolloverFrequency frequency = null;
-
+
private final String pattern;
public String getPattern() {
@@ -92,6 +92,14 @@ public class PatternProcessor {
}
}
+ public long getPrevFileTime() {
+ return prevFileTime;
+ }
+
+ public void setPrevFileTime(long prevFileTime) {
+ this.prevFileTime = prevFileTime;
+ }
+
/**
* Returns the next potential rollover time.
* @param currentMillis The current time.
@@ -220,7 +228,7 @@ public class PatternProcessor {
*/
public final void formatFileName(final StrSubstitutor subst, final StringBuilder buf, final Object obj) {
// LOG4J2-628: we deliberately use System time, not the log4j.Clock time
- // for creating the file name of rolled-over files.
+ // for creating the file name of rolled-over files.
final long time = prevFileTime == 0 ? System.currentTimeMillis() : prevFileTime;
formatFileName(buf, new Date(time), obj);
final LogEvent event = new Log4jLogEvent.Builder().setTimeMillis(time).build();
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/730a1cc7/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java
index 9b721bc..f92a9b7 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/RollingFileManager.java
@@ -75,6 +75,7 @@ public class RollingFileManager extends FileManager {
this.triggeringPolicy = triggeringPolicy;
this.rolloverStrategy = rolloverStrategy;
this.patternProcessor = new PatternProcessor(pattern);
+ this.patternProcessor.setPrevFileTime(time);
}
public void initialize() {
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/730a1cc7/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/CommonsCompressAction.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/CommonsCompressAction.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/CommonsCompressAction.java
index de1fed0..d80287f 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/CommonsCompressAction.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/action/CommonsCompressAction.java
@@ -56,7 +56,7 @@ public final class CommonsCompressAction extends AbstractAction {
/**
* Creates new instance of Bzip2CompressAction.
- *
+ *
* @param name the compressor name. One of "gz", "bzip2", "xz", "pack200", or "deflate".
* @param source file to compress, may not be null.
* @param destination compressed file, may not be null.
@@ -86,7 +86,7 @@ public final class CommonsCompressAction extends AbstractAction {
/**
* Compresses a file.
- *
+ *
* @param name the compressor name, i.e. "gz", "bzip2", "xz", "pack200", or "deflate".
* @param source file to compress, may not be null.
* @param destination compressed file, may not be null.
@@ -101,6 +101,7 @@ public final class CommonsCompressAction extends AbstractAction {
if (!source.exists()) {
return false;
}
+ LOGGER.debug("Starting {} compression of {}", name, source.getPath() );
try (final FileInputStream input = new FileInputStream(source);
final BufferedOutputStream output = new BufferedOutputStream(
new CompressorStreamFactory().createCompressorOutputStream(name, new FileOutputStream(
@@ -108,10 +109,14 @@ public final class CommonsCompressAction extends AbstractAction {
IOUtils.copy(input, output, BUF_SIZE);
} catch (final CompressorException e) {
throw new IOException(e);
+ } finally {
+ LOGGER.debug("Finished {} compression of {}", name, source.getPath() );
}
if (deleteSource && !source.delete()) {
LOGGER.warn("Unable to delete " + source.toString() + '.');
+ } else {
+ LOGGER.debug("Deleted {}", source.toString());
}
return true;
}
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/730a1cc7/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationScheduler.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationScheduler.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationScheduler.java
index 3364ca4..6a3c1ec 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationScheduler.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationScheduler.java
@@ -115,9 +115,10 @@ public class ConfigurationScheduler extends AbstractLifeCycle {
* @return a ScheduledFuture representing the next time the command will run.
*/
public CronScheduledFuture<?> scheduleWithCron(final CronExpression cronExpression, final Runnable command) {
+ Date fireDate = cronExpression.getNextValidTimeAfter(new Date());
final CronRunnable runnable = new CronRunnable(command, cronExpression);
- final ScheduledFuture<?> future = schedule(runnable, nextFireInterval(cronExpression), TimeUnit.MILLISECONDS);
- final CronScheduledFuture<?> cronScheduledFuture = new CronScheduledFuture<>(future);
+ final ScheduledFuture<?> future = schedule(runnable, nextFireInterval(fireDate), TimeUnit.MILLISECONDS);
+ final CronScheduledFuture<?> cronScheduledFuture = new CronScheduledFuture<>(future, fireDate);
runnable.setScheduledFuture(cronScheduledFuture);
return cronScheduledFuture;
}
@@ -152,7 +153,11 @@ public class ConfigurationScheduler extends AbstractLifeCycle {
return executorService.scheduleWithFixedDelay(command, initialDelay, delay, unit);
}
- private class CronRunnable implements Runnable {
+ public long nextFireInterval(Date fireDate) {
+ return fireDate.getTime() - new Date().getTime();
+ }
+
+ public class CronRunnable implements Runnable {
private final CronExpression cronExpression;
private final Runnable runnable;
@@ -167,6 +172,8 @@ public class ConfigurationScheduler extends AbstractLifeCycle {
this.scheduledFuture = future;
}
+
+
@Override
public void run() {
try {
@@ -174,16 +181,11 @@ public class ConfigurationScheduler extends AbstractLifeCycle {
} catch(final Throwable ex) {
LOGGER.error("Error running command", ex);
} finally {
- final ScheduledFuture<?> future = schedule(this, nextFireInterval(cronExpression), TimeUnit.MILLISECONDS);
- scheduledFuture.setScheduledFuture(future);
+ Date fireDate = cronExpression.getNextInvalidTimeAfter(new Date());
+ final ScheduledFuture<?> future = schedule(this, nextFireInterval(fireDate), TimeUnit.MILLISECONDS);
+ scheduledFuture.reset(future, fireDate);
}
}
}
- private long nextFireInterval(final CronExpression cronExpression) {
- final Date now = new Date();
- final Date fireDate = cronExpression.getNextValidTimeAfter(now);
- return fireDate.getTime() - now.getTime();
- }
-
}
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/730a1cc7/log4j-core/src/main/java/org/apache/logging/log4j/core/config/CronScheduledFuture.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/CronScheduledFuture.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/CronScheduledFuture.java
index a684dcb..948c23b 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/CronScheduledFuture.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/CronScheduledFuture.java
@@ -16,6 +16,7 @@
*/
package org.apache.logging.log4j.core.config;
+import java.util.Date;
import java.util.concurrent.Delayed;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ScheduledFuture;
@@ -27,50 +28,66 @@ import java.util.concurrent.TimeoutException;
*/
public class CronScheduledFuture<V> implements ScheduledFuture<V> {
- private volatile ScheduledFuture<?> scheduledFuture;
+ private volatile FutureData futureData;
- public CronScheduledFuture(final ScheduledFuture<V> future) {
- this.scheduledFuture = future;
+ public CronScheduledFuture(final ScheduledFuture<V> future, final Date runDate) {
+ this.futureData = new FutureData(future, runDate);
}
- void setScheduledFuture(final ScheduledFuture<?> future) {
- this.scheduledFuture = future;
+ public Date getFireTime() {
+ return futureData.runDate;
+ }
+
+ void reset(final ScheduledFuture<?> future, final Date runDate) {
+ futureData = new FutureData(future, runDate);
}
@Override
public long getDelay(final TimeUnit unit) {
- return scheduledFuture.getDelay(unit);
+ return futureData.scheduledFuture.getDelay(unit);
}
@Override
public int compareTo(final Delayed delayed) {
- return scheduledFuture.compareTo(delayed);
+ return futureData.scheduledFuture.compareTo(delayed);
}
@Override
public boolean cancel(final boolean mayInterruptIfRunning) {
- return scheduledFuture.cancel(mayInterruptIfRunning);
+ return futureData.scheduledFuture.cancel(mayInterruptIfRunning);
}
@Override
public boolean isCancelled() {
- return scheduledFuture.isCancelled();
+ return futureData.scheduledFuture.isCancelled();
}
@Override
public boolean isDone() {
- return scheduledFuture.isDone();
+ return futureData.scheduledFuture.isDone();
}
@Override
@SuppressWarnings("unchecked")
public V get() throws InterruptedException, ExecutionException {
- return (V) scheduledFuture.get();
+ return (V) futureData.scheduledFuture.get();
}
@Override
@SuppressWarnings("unchecked")
- public V get(final long timeout, final TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException {
- return (V) scheduledFuture.get(timeout, unit);
+ public V get(final long timeout, final TimeUnit unit)
+ throws InterruptedException, ExecutionException, TimeoutException {
+ return (V) futureData.scheduledFuture.get(timeout, unit);
+ }
+
+ private class FutureData {
+
+ private final ScheduledFuture<?> scheduledFuture;
+ private final Date runDate;
+
+ FutureData(ScheduledFuture<?> future, Date runDate) {
+ this.scheduledFuture = future;
+ this.runDate = runDate;
+ }
}
}
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/730a1cc7/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/OnStartupTriggeringPolicyTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/OnStartupTriggeringPolicyTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/OnStartupTriggeringPolicyTest.java
index 61daa9a..728ad81 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/OnStartupTriggeringPolicyTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/OnStartupTriggeringPolicyTest.java
@@ -27,6 +27,7 @@ import java.nio.file.Paths;
import org.apache.logging.log4j.core.config.Configuration;
import org.apache.logging.log4j.core.config.DefaultConfiguration;
import org.apache.logging.log4j.core.layout.PatternLayout;
+import org.apache.logging.log4j.core.util.datetime.FastDateFormat;
import org.apache.logging.log4j.junit.CleanFiles;
import org.junit.Rule;
import org.junit.Test;
@@ -36,25 +37,31 @@ import org.junit.Test;
*/
public class OnStartupTriggeringPolicyTest {
- private static final String TARGET_FILE = "target/testfile";
- private static final String TARGET_PATTERN = "target/rolling1/test1-%i.log";
- private static final String ROLLED_FILE = "target/rolling1/test1-1.log";
+ private static final String TARGET_FILE = "target/rollOnStartup/testfile";
+ private static final String TARGET_PATTERN = "target/rollOnStartup/test1-%d{MM-dd-yyyy}-%i.log";
+ private static final String ROLLED_FILE_PREFIX = "target/rollOnStartup/test1-";
+ private static final String ROLLED_FILE_SUFFIX = "-1.log";
private static final String TEST_DATA = "Hello world!";
+ private static final FastDateFormat formatter = FastDateFormat.getInstance("MM-dd-yyyy");
+
+ //@Rule
+ //public CleanFiles rule = new CleanFolders("target/rollOnStartup");
- @Rule
- public CleanFiles rule = new CleanFiles(TARGET_FILE, ROLLED_FILE);
-
@Test
public void testPolicy() throws Exception {
final Configuration configuration = new DefaultConfiguration();
final Path target = Paths.get(TARGET_FILE);
- final Path rolled = Paths.get(ROLLED_FILE);
+ target.toFile().getParentFile().mkdirs();
+ final long timeStamp = System.currentTimeMillis() - (1000 * 60 * 60 * 24);
+ final String expectedDate = formatter.format(timeStamp);
+ final String rolledFileName = ROLLED_FILE_PREFIX + expectedDate + ROLLED_FILE_SUFFIX;
+ final Path rolled = Paths.get(rolledFileName);
try (final InputStream is = new ByteArrayInputStream(TEST_DATA.getBytes("UTF-8"))) {
Files.copy(is, target);
}
final long size = Files.size(target);
assertTrue(size > 0);
- long timeStamp = System.currentTimeMillis() - 120000;
+
target.toFile().setLastModified(timeStamp);
final PatternLayout layout = PatternLayout.newBuilder().withPattern("%msg").withConfiguration(configuration)
.build();
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/730a1cc7/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronTest.java
index 6c3e566..164e5f2 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronTest.java
@@ -34,6 +34,7 @@ import java.nio.file.Path;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.appender.RollingFileAppender;
import org.apache.logging.log4j.core.util.CronExpression;
+import org.apache.logging.log4j.core.util.datetime.FastDateFormat;
import org.apache.logging.log4j.junit.LoggerContextRule;
import org.hamcrest.Matcher;
import org.junit.Rule;
@@ -47,6 +48,8 @@ public class RollingAppenderCronTest {
private static final String CONFIG = "log4j-rolling-cron.xml";
private static final String DIR = "target/rolling-cron";
+ private static final String FILE = "target/rolling-cron/rollingtest.log";
+ private static final FastDateFormat formatter = FastDateFormat.getInstance("MM-dd-yy-HH-mm-ss");
private final LoggerContextRule loggerContextRule = new LoggerContextRule(CONFIG);
@@ -56,6 +59,8 @@ public class RollingAppenderCronTest {
@Test
public void testAppender() throws Exception {
final Logger logger = loggerContextRule.getLogger();
+ File file = new File(FILE);
+ assertTrue("Log file does not exist", file.exists());
logger.debug("This is test message number 1");
Thread.sleep(2500);
final File dir = new File(DIR);
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/730a1cc7/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeTest.java
index d9d46e4..92e89b1 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeTest.java
@@ -94,6 +94,12 @@ public class RollingAppenderSizeTest {
for (int i = 0; i < 100; ++i) {
logger.debug("This is test message number " + i);
}
+ try {
+ Thread.sleep(100);
+ } catch (InterruptedException ie) {
+ // Ignore the error.
+ }
+
final File dir = new File(DIR);
assertTrue("Directory not created", dir.exists() && dir.listFiles().length > 0);
final File[] files = dir.listFiles();
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/730a1cc7/log4j-core/src/test/java/org/apache/logging/log4j/junit/CleanFolders.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/junit/CleanFolders.java b/log4j-core/src/test/java/org/apache/logging/log4j/junit/CleanFolders.java
index 95a8ef5..a3c84c0 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/junit/CleanFolders.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/junit/CleanFolders.java
@@ -23,6 +23,8 @@ import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.SimpleFileVisitor;
import java.nio.file.attribute.BasicFileAttributes;
+import java.util.HashMap;
+import java.util.Map;
import org.junit.Assert;
@@ -50,25 +52,36 @@ public class CleanFolders extends AbstractExternalFileCleaner {
@Override
protected void clean() {
- IOException lastEx = null;
- Path lastPath = null;
+ Map<Path, IOException> failures = new HashMap<>();
+
for (final File folder : getFiles()) {
final Path path = folder.toPath();
for (int i = 0; i < MAX_TRIES; i++) {
try {
cleanFolder(path);
+ if (failures.containsKey(path)) {
+ failures.remove(path);
+ }
// break from MAX_TRIES and goes to the next folder
break;
} catch (final IOException e) {
// We will try again.
- lastEx = e;
- lastPath = path;
+ failures.put(path, e);
}
}
}
- if (lastEx != null) {
- lastEx.printStackTrace();
- Assert.fail(lastPath + ": " + lastEx);
+ if (failures.size() > 0) {
+ StringBuilder sb = new StringBuilder();
+ boolean first = true;
+ for (Map.Entry<Path, IOException> failure : failures.entrySet()) {
+ failure.getValue().printStackTrace();
+ if (!first) {
+ sb.append(", ");
+ }
+ sb.append(failure.getKey()).append(" failed with ").append(failure.getValue());
+ first = false;
+ }
+ Assert.fail(sb.toString());
}
}
@@ -89,5 +102,4 @@ public class CleanFolders extends AbstractExternalFileCleaner {
});
}
}
-
}
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/730a1cc7/src/changes/changes.xml
----------------------------------------------------------------------
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 0615354..3641c0a 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -24,6 +24,10 @@
</properties>
<body>
<release version="2.6.2" date="2016-MM-DD" description="GA Release 2.6.2">
+ <action issue="LOG4J2-1250" dev="rgoers">
+ CronTriggeringPolicy was not properly setting the prevFileTime value for the PatternProcessor so
+ file dates and times on rolled files were incorrect.
+ </action>
<action issue="LOG4J2-1452" dev="rpopma" due-to="Mikael St�ldal">
Fixed issue where reusable messages broke flow tracing logic.
</action>
[12/16] logging-log4j2 git commit: [maven-release-plugin] prepare for
next development iteration
Posted by gg...@apache.org.
[maven-release-plugin] prepare for next development iteration
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/2ae387ec
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/2ae387ec
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/2ae387ec
Branch: refs/heads/StyledMessage
Commit: 2ae387ec21a39cdbfce9281790cf304df8206493
Parents: a493c04
Author: rgoers <ra...@dslextreme.com>
Authored: Tue Jul 5 19:35:30 2016 -0700
Committer: rgoers <ra...@dslextreme.com>
Committed: Tue Jul 5 19:35:30 2016 -0700
----------------------------------------------------------------------
log4j-1.2-api/pom.xml | 2 +-
log4j-api/pom.xml | 2 +-
log4j-bom/pom.xml | 4 ++--
log4j-core/pom.xml | 2 +-
log4j-distribution/pom.xml | 2 +-
log4j-flume-ng/pom.xml | 2 +-
log4j-iostreams/pom.xml | 2 +-
log4j-jcl/pom.xml | 2 +-
log4j-jmx-gui/pom.xml | 2 +-
log4j-jul/pom.xml | 2 +-
log4j-liquibase/pom.xml | 2 +-
log4j-nosql/pom.xml | 2 +-
log4j-perf/pom.xml | 2 +-
log4j-samples/configuration/pom.xml | 2 +-
log4j-samples/flume-common/pom.xml | 2 +-
log4j-samples/flume-embedded/pom.xml | 2 +-
log4j-samples/flume-remote/pom.xml | 2 +-
log4j-samples/loggerProperties/pom.xml | 2 +-
log4j-samples/pom.xml | 2 +-
log4j-slf4j-impl/pom.xml | 2 +-
log4j-taglib/pom.xml | 2 +-
log4j-to-slf4j/pom.xml | 2 +-
log4j-web/pom.xml | 2 +-
pom.xml | 4 ++--
24 files changed, 26 insertions(+), 26 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-1.2-api/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-1.2-api/pom.xml b/log4j-1.2-api/pom.xml
index 99abff8..dd8b0df 100644
--- a/log4j-1.2-api/pom.xml
+++ b/log4j-1.2-api/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-1.2-api</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-api/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-api/pom.xml b/log4j-api/pom.xml
index 0de3d40..40496c8 100644
--- a/log4j-api/pom.xml
+++ b/log4j-api/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-api</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-bom/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-bom/pom.xml b/log4j-bom/pom.xml
index 4b3342b..42d1289 100644
--- a/log4j-bom/pom.xml
+++ b/log4j-bom/pom.xml
@@ -26,7 +26,7 @@
<description>Apache Log4j Bill of Materials</description>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-bom</artifactId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<packaging>pom</packaging>
<dependencyManagement>
<dependencies>
@@ -131,6 +131,6 @@
</build>
<scm>
- <tag>log4j-2.6.2-rc1</tag>
+ <tag>log4j-2.6.1</tag>
</scm>
</project>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-core/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-core/pom.xml b/log4j-core/pom.xml
index 115b475..d911390 100644
--- a/log4j-core/pom.xml
+++ b/log4j-core/pom.xml
@@ -21,7 +21,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-core</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-distribution/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-distribution/pom.xml b/log4j-distribution/pom.xml
index 22efa30..4f02bc8 100644
--- a/log4j-distribution/pom.xml
+++ b/log4j-distribution/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-distribution</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-flume-ng/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-flume-ng/pom.xml b/log4j-flume-ng/pom.xml
index 98ff08b..ee8ae80 100644
--- a/log4j-flume-ng/pom.xml
+++ b/log4j-flume-ng/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-flume-ng</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-iostreams/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-iostreams/pom.xml b/log4j-iostreams/pom.xml
index ba6e5b7..a497f85 100644
--- a/log4j-iostreams/pom.xml
+++ b/log4j-iostreams/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-iostreams</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-jcl/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-jcl/pom.xml b/log4j-jcl/pom.xml
index 8dc82ac..dd88ffc 100644
--- a/log4j-jcl/pom.xml
+++ b/log4j-jcl/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-jcl</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-jmx-gui/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-jmx-gui/pom.xml b/log4j-jmx-gui/pom.xml
index d5e290a..beef3a1 100644
--- a/log4j-jmx-gui/pom.xml
+++ b/log4j-jmx-gui/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-jmx-gui</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-jul/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-jul/pom.xml b/log4j-jul/pom.xml
index 3265435..9e63f57 100644
--- a/log4j-jul/pom.xml
+++ b/log4j-jul/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j</artifactId>
<groupId>org.apache.logging.log4j</groupId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-liquibase/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-liquibase/pom.xml b/log4j-liquibase/pom.xml
index 4a8cb36..76276c4 100644
--- a/log4j-liquibase/pom.xml
+++ b/log4j-liquibase/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-liquibase</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-nosql/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-nosql/pom.xml b/log4j-nosql/pom.xml
index 5e4a2e0..20ede1e 100644
--- a/log4j-nosql/pom.xml
+++ b/log4j-nosql/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j</artifactId>
<groupId>org.apache.logging.log4j</groupId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-perf/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-perf/pom.xml b/log4j-perf/pom.xml
index 98d3a16..77b11cc 100644
--- a/log4j-perf/pom.xml
+++ b/log4j-perf/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j</artifactId>
<groupId>org.apache.logging.log4j</groupId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-samples/configuration/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-samples/configuration/pom.xml b/log4j-samples/configuration/pom.xml
index e0ac08a..a2ea7c4 100644
--- a/log4j-samples/configuration/pom.xml
+++ b/log4j-samples/configuration/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j-samples</artifactId>
<groupId>org.apache.logging.log4j.samples</groupId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
</parent>
<artifactId>log4j-samples-configuration</artifactId>
<packaging>jar</packaging>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-samples/flume-common/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-samples/flume-common/pom.xml b/log4j-samples/flume-common/pom.xml
index 43f1738..a5bc9b7 100644
--- a/log4j-samples/flume-common/pom.xml
+++ b/log4j-samples/flume-common/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j-samples</artifactId>
<groupId>org.apache.logging.log4j.samples</groupId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
</parent>
<artifactId>log4j-samples-flume-common</artifactId>
<packaging>jar</packaging>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-samples/flume-embedded/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-samples/flume-embedded/pom.xml b/log4j-samples/flume-embedded/pom.xml
index 50381d8..1c27597 100644
--- a/log4j-samples/flume-embedded/pom.xml
+++ b/log4j-samples/flume-embedded/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j-samples</artifactId>
<groupId>org.apache.logging.log4j.samples</groupId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
</parent>
<artifactId>log4j-samples-flume-embedded</artifactId>
<packaging>war</packaging>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-samples/flume-remote/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-samples/flume-remote/pom.xml b/log4j-samples/flume-remote/pom.xml
index 0d8f60d..fa947cf 100644
--- a/log4j-samples/flume-remote/pom.xml
+++ b/log4j-samples/flume-remote/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j-samples</artifactId>
<groupId>org.apache.logging.log4j.samples</groupId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
</parent>
<artifactId>log4j-samples-flume-remote</artifactId>
<packaging>war</packaging>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-samples/loggerProperties/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-samples/loggerProperties/pom.xml b/log4j-samples/loggerProperties/pom.xml
index b69f2f4..6edfbd0 100644
--- a/log4j-samples/loggerProperties/pom.xml
+++ b/log4j-samples/loggerProperties/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j-samples</artifactId>
<groupId>org.apache.logging.log4j.samples</groupId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
</parent>
<artifactId>log4j-samples-loggerProperties</artifactId>
<packaging>jar</packaging>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-samples/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-samples/pom.xml b/log4j-samples/pom.xml
index a16ae5d..bc11f92 100644
--- a/log4j-samples/pom.xml
+++ b/log4j-samples/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<groupId>org.apache.logging.log4j.samples</groupId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-slf4j-impl/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-slf4j-impl/pom.xml b/log4j-slf4j-impl/pom.xml
index 0aff38a..aca5799 100644
--- a/log4j-slf4j-impl/pom.xml
+++ b/log4j-slf4j-impl/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-slf4j-impl</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-taglib/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-taglib/pom.xml b/log4j-taglib/pom.xml
index 2beb747..a037cc1 100644
--- a/log4j-taglib/pom.xml
+++ b/log4j-taglib/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-taglib</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-to-slf4j/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-to-slf4j/pom.xml b/log4j-to-slf4j/pom.xml
index bb6f404..955bc04 100644
--- a/log4j-to-slf4j/pom.xml
+++ b/log4j-to-slf4j/pom.xml
@@ -20,7 +20,7 @@
<parent>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j</artifactId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<artifactId>log4j-to-slf4j</artifactId>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/log4j-web/pom.xml
----------------------------------------------------------------------
diff --git a/log4j-web/pom.xml b/log4j-web/pom.xml
index 34ddcd9..148acc0 100644
--- a/log4j-web/pom.xml
+++ b/log4j-web/pom.xml
@@ -20,7 +20,7 @@
<parent>
<artifactId>log4j</artifactId>
<groupId>org.apache.logging.log4j</groupId>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/2ae387ec/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 763a749..0df7178 100644
--- a/pom.xml
+++ b/pom.xml
@@ -22,7 +22,7 @@
<artifactId>log4j</artifactId>
<packaging>pom</packaging>
<name>Apache Log4j 2</name>
- <version>2.6.2</version>
+ <version>2.6.3-SNAPSHOT</version>
<parent>
<groupId>org.apache</groupId>
<artifactId>apache</artifactId>
@@ -173,7 +173,7 @@
<connection>scm:git:http://git-wip-us.apache.org/repos/asf/logging-log4j2.git</connection>
<developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/logging-log4j2.git</developerConnection>
<url>https://git-wip-us.apache.org/repos/asf?p=logging-log4j2.git;a=summary</url>
- <tag>log4j-2.6.2-rc1</tag>
+ <tag>log4j-${Log4jReleaseVersion}</tag>
</scm>
<organization>
<name>Apache Software Foundation</name>
[10/16] logging-log4j2 git commit: Prepare for release
Posted by gg...@apache.org.
Prepare for release
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/7a3f8698
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/7a3f8698
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/7a3f8698
Branch: refs/heads/StyledMessage
Commit: 7a3f8698c250aacb8fdf5ea19dc66ab61ec6af74
Parents: b2c30a6
Author: rgoers <ra...@dslextreme.com>
Authored: Tue Jul 5 19:17:12 2016 -0700
Committer: rgoers <ra...@dslextreme.com>
Committed: Tue Jul 5 19:17:12 2016 -0700
----------------------------------------------------------------------
RELEASE-NOTES.txt | 60 +++++++++++++++++++++-------------------
pom.xml | 4 +--
src/changes/announcement.vm | 2 +-
src/changes/changes.xml | 2 +-
4 files changed, 36 insertions(+), 32 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/7a3f8698/RELEASE-NOTES.txt
----------------------------------------------------------------------
diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt
index f5e7295..938ccab 100644
--- a/RELEASE-NOTES.txt
+++ b/RELEASE-NOTES.txt
@@ -1,21 +1,25 @@
- Apache Log4j 2.6.1 RELEASE NOTES
+ Apache Log4j 2.6.2 RELEASE NOTES
-The Apache Log4j 2 team is pleased to announce the Log4j 2.6.1 release!
+The Apache Log4j 2 team is pleased to announce the Log4j 2.6.2 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, multiple patterns on
-a PatternLayout and asynchronous Loggers. In addition, Log4j 2 will not lose events while reconfiguring.
+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, lambda expressions for lazy logging,
+property substitution using Lookups, multiple patterns on a PatternLayout and asynchronous
+Loggers. Another notable Log4j 2 feature is the ability to be "garbage-free" (avoid allocating
+temporary objects) while logging. In addition, Log4j 2 will not lose events while reconfiguring.
-This is the eleventh GA release. It is primarily a bugfix release. More details on the fixes are itemized below.
+This is the twelfth GA release. It is primarily a bugfix release. More details on the
+fixes are itemized below.
-Note that subsequent to the 2.6 release a minor source incompatibility was found due to the addition of new methods to
-the Logger interface. If you have code that does:
+Note that subsequent to the 2.6 release a minor source incompatibility was found due to the
+addition of new methods to the Logger interface. If you have code that does:
logger.error(null, \u201cThis is the log message\u201d, throwable);
-or similar with any log level you will get a compiler error saying the reference is ambiguous. To correct this either do:
+or similar with any log level you will get a compiler error saying the reference is ambiguous.
+To correct this either do:
logger.error(\u201cThis is the log message\u201d, throwable);
@@ -23,35 +27,35 @@ or
logger.error((Marker) null, \u201cThis is the log message\u201d, throwable);
-Log4j 2.6 maintains binary compatibility with previous releases.
+Log4j 2.6.2 maintains binary compatibility with previous releases.
-GA Release 2.6.1
+GA Release 2.6.2
Changes in this version include:
New features:
-o LOG4J2-1411: Add documentation about plugin builders compared to factories.
+o LOG4J2-1395: Add "direct" option to ConsoleAppender for increased performance.
+o LOG4J2-1437: (GC) ObjectMessage and ReusableObjectMessage now avoid calling toString() on auto-boxed primitive parameters.
+o LOG4J2-1415: (GC) ParameterFormatter now avoids calling toString() on auto-boxed primitive message parameters.
+o LOG4J2-1412: Unbox utility's ringbuffer of StringBuilders is now configurable.
Fixed Bugs:
-o LOG4J2-1405: OnStartupTriggeringPolicy was forcing a rollover of empty files at startup and would append a
- second footer that was added by the prior shutdown.
-o LOG4J2-1406: Fixed bug in ReusableParameterizedMessage where Throwable was never updated so first error was logged over
- and over again and subsequent errors were not logged. Thanks to Trask Stalnaker.
-o LOG4J2-1409: Fixed ArrayIndexOutOfBoundsException that may occur in ReusableParameterizedMessage. Thanks to Shahan.
-o LOG4J2-997: Add filter and remove filter were not working properly in AbstractFilterable. Thanks to Maytee Chinavanichkit.
-o LOG4J2-1032: Change RenameAction to use java.nio to better report rename failures.
-o LOG4J2-1407: Misleading WARN log events from Log4j about message factories and unexpected formatting. Thanks to Gary Gregory.
-o LOG4J2-1408: The module log4j-liquibase is missing from BOM POM. Thanks to Gary Gregory.
-o LOG4J2-1180: Logger cache does not account for message factory. Thanks to Gary Gregory.
-o LOG4J2-1402: Fix regression in properties configuration to support arbitrary component ids.
+o LOG4J2-1414: Fixed minor issues with the 2.6.1 web site. Thanks to Ralph Goers.
+o LOG4J2-1434: Ensure that the thread-local StringBuilders used by Layouts to format log events to text will not
+ retain excessive memory after a large message was logged. Thanks to Luke Butters.
+o LOG4J2-1418: Provide MessageFactory2 to custom Logger implementations.
+o LOG4J2-1420: RollingRandomAccessFileManager was not properly rolling over on startup and was getting a NullPointerException.
+o LOG4J2-1417: Fixed issue where Unbox utility ignored the value Constants.ENABLE_THREADLOCALS and always stored non-JDK classes in ThreadLocals.
+o LOG4J2-1422: Fixed issue where AsyncAppenderQueueFullPolicyTest sometimes hangs.
+o LOG4J2-1445: OnStartupTriggeringPolicyTest fails on Windows saying the file is used by another process. Thanks to Ludovic HOCHET.
Changes:
-o LOG4J2-1385: (GC) CSV layouts should not create a new CSVPrinter for each log event. Requires Apache Commons CSV 1.4.
-o LOG4J2-1398: Update liquibase-core from 3.4.2 to 3.5.1.
-o LOG4J2-1399: Update Apache Commons CSV from 1.3 to 1.4.
+o LOG4J2-1432: Update Jackson from 2.7.4 to 2.7.5.
+o LOG4J2-1433: Update Jansi from 1.11 to 1.13.
+o LOG4J2-1444: Update Apache Commons Compress from 1.11 to 1.12.
-Apache Log4j 2.6.1 requires a minimum of Java 7 to build and run. Log4j 2.3 was the last release that
+Apache Log4j 2.6.2 requires a minimum of Java 7 to build and run. Log4j 2.3 was the last release that
supported 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
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/7a3f8698/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index c2be939..cfb5161 100644
--- a/pom.xml
+++ b/pom.xml
@@ -182,8 +182,8 @@
<properties>
<!-- make sure to update these for each release! -->
<log4jParentDir>${basedir}</log4jParentDir>
- <Log4jReleaseVersion>2.6.1</Log4jReleaseVersion>
- <Log4jReleaseCount>eleventh</Log4jReleaseCount>
+ <Log4jReleaseVersion>2.6.2</Log4jReleaseVersion>
+ <Log4jReleaseCount>twelfth</Log4jReleaseCount>
<Log4jReleaseManager>Ralph Goers</Log4jReleaseManager>
<Log4jReleaseKey>B3D8E1BA</Log4jReleaseKey>
<!-- <Log4jReleaseManager>Matt Sicker</Log4jReleaseManager>
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/7a3f8698/src/changes/announcement.vm
----------------------------------------------------------------------
diff --git a/src/changes/announcement.vm b/src/changes/announcement.vm
index e2a4ef6..632fc5b 100644
--- a/src/changes/announcement.vm
+++ b/src/changes/announcement.vm
@@ -45,7 +45,7 @@ or
logger.error((Marker) null, \u201cThis is the log message\u201d, throwable);
-Log4j 2.6 maintains binary compatibility with previous releases.
+Log4j 2.6.2 maintains binary compatibility with previous releases.
## Hack to improve layout: replace all pairs of spaces with a single new-line
$release.description.replaceAll(" ", "
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/7a3f8698/src/changes/changes.xml
----------------------------------------------------------------------
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 9970d34..32bc6e7 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -23,7 +23,7 @@
<title>Changes</title>
</properties>
<body>
- <release version="2.6.2" date="2016-MM-DD" description="GA Release 2.6.2">
+ <release version="2.6.2" date="2016-07-05" description="GA Release 2.6.2">
<action issue="LOG4J2-904" dev="rgoers" due-to="Bernhard M�hr">
If copy and delete fails in rename action then resort to truncating the source file after copying it.
</action>