You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by rg...@apache.org on 2016/04/20 14:07:03 UTC
logging-log4j2 git commit: LOG4J2-1363 - Properties Configuration did
not support includeLocation attribute on Loggers.
Repository: logging-log4j2
Updated Branches:
refs/heads/master ddb2ca9e8 -> 4195c7b36
LOG4J2-1363 - Properties Configuration did not support includeLocation attribute on Loggers.
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/4195c7b3
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/4195c7b3
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/4195c7b3
Branch: refs/heads/master
Commit: 4195c7b365f0bba71f5a8aec59bf32dd90cc1f20
Parents: ddb2ca9
Author: Ralph Goers <rg...@nextiva.com>
Authored: Wed Apr 20 05:06:50 2016 -0700
Committer: Ralph Goers <rg...@nextiva.com>
Committed: Wed Apr 20 05:06:57 2016 -0700
----------------------------------------------------------------------
.../builder/api/ConfigurationBuilder.java | 72 ++++++++++++++++++++
.../impl/DefaultConfigurationBuilder.java | 54 +++++++++++++--
.../impl/DefaultLoggerComponentBuilder.java | 29 ++++++++
.../impl/DefaultRootLoggerComponentBuilder.java | 27 ++++++++
.../PropertiesConfigurationBuilder.java | 32 +++++++--
.../appender/RandomAccessFileAppenderTests.java | 15 ++--
...cessFileAppenderLocationPropsTest.properties | 35 ++++++++++
src/changes/changes.xml | 9 ++-
8 files changed, 252 insertions(+), 21 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/4195c7b3/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/api/ConfigurationBuilder.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/api/ConfigurationBuilder.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/api/ConfigurationBuilder.java
index f191365..4b4473d 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/api/ConfigurationBuilder.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/api/ConfigurationBuilder.java
@@ -141,17 +141,44 @@ public interface ConfigurationBuilder<T extends Configuration> extends Builder<T
* Returns a builder for creating Async Loggers.
* @param name The name of the Logger.
* @param level The logging Level to be assigned to the Logger.
+ * @param includeLocation If true include location information.
+ * @return A new LoggerComponentBuilder.
+ */
+ LoggerComponentBuilder newAsyncLogger(String name, Level level, boolean includeLocation);
+
+ /**
+ * Returns a builder for creating Async Loggers.
+ * @param name The name of the Logger.
+ * @param level The logging Level to be assigned to the Logger.
* @return A new LoggerComponentBuilder.
*/
LoggerComponentBuilder newAsyncLogger(String name, String level);
/**
+ * Returns a builder for creating Async Loggers.
+ * @param name The name of the Logger.
+ * @param level The logging Level to be assigned to the Logger.
+ * @param includeLocation If true include location information.
+ * @return A new LoggerComponentBuilder.
+ */
+ LoggerComponentBuilder newAsyncLogger(String name, String level, boolean includeLocation);
+
+ /**
* Returns a builder for creating the async root Logger.
* @param level The logging Level to be assigned to the root Logger.
* @return A new RootLoggerComponentBuilder.
*/
RootLoggerComponentBuilder newAsyncRootLogger(Level level);
+
+ /**
+ * Returns a builder for creating the async root Logger.
+ * @param level The logging Level to be assigned to the root Logger.
+ * @param includeLocation If true include location information.
+ * @return A new RootLoggerComponentBuilder.
+ */
+ RootLoggerComponentBuilder newAsyncRootLogger(Level level, boolean includeLocation);
+
/**
* Returns a builder for creating the async root Logger.
* @param level The logging Level to be assigned to the root Logger.
@@ -159,6 +186,15 @@ public interface ConfigurationBuilder<T extends Configuration> extends Builder<T
*/
RootLoggerComponentBuilder newAsyncRootLogger(String level);
+
+ /**
+ * Returns a builder for creating the async root Logger.
+ * @param level The logging Level to be assigned to the root Logger.
+ * @param includeLocation If true include location information.
+ * @return A new RootLoggerComponentBuilder.
+ */
+ RootLoggerComponentBuilder newAsyncRootLogger(String level, boolean includeLocation);
+
/**
* Returns a builder for creating generic components.
* @param <B> ComponentBuilder target type
@@ -232,11 +268,29 @@ public interface ConfigurationBuilder<T extends Configuration> extends Builder<T
* Returns a builder for creating Loggers.
* @param name The name of the Logger.
* @param level The logging Level to be assigned to the Logger.
+ * @param includeLocation If true include location information.
+ * @return A new LoggerComponentBuilder.
+ */
+ LoggerComponentBuilder newLogger(String name, Level level, boolean includeLocation);
+
+ /**
+ * Returns a builder for creating Loggers.
+ * @param name The name of the Logger.
+ * @param level The logging Level to be assigned to the Logger.
* @return A new LoggerComponentBuilder.
*/
LoggerComponentBuilder newLogger(String name, String level);
/**
+ * Returns a builder for creating Loggers.
+ * @param name The name of the Logger.
+ * @param level The logging Level to be assigned to the Logger.
+ * @param includeLocation If true include location information.
+ * @return A new LoggerComponentBuilder.
+ */
+ LoggerComponentBuilder newLogger(String name, String level, boolean includeLocation);
+
+ /**
* Returns a builder for creating the root Logger.
* @param level The logging Level to be assigned to the root Logger.
* @return A new RootLoggerComponentBuilder.
@@ -246,13 +300,31 @@ public interface ConfigurationBuilder<T extends Configuration> extends Builder<T
/**
* Returns a builder for creating the root Logger.
* @param level The logging Level to be assigned to the root Logger.
+ * @param includeLocation If true include location information.
+ * @return A new RootLoggerComponentBuilder.
+ */
+ RootLoggerComponentBuilder newRootLogger(Level level, boolean includeLocation);
+
+ /**
+ * Returns a builder for creating the root Logger.
+ * @param level The logging Level to be assigned to the root Logger.
+ *
* @return A new RootLoggerComponentBuilder.
*/
RootLoggerComponentBuilder newRootLogger(String level);
/**
+ * Returns a builder for creating the root Logger.
+ * @param level The logging Level to be assigned to the root Logger.
+ *
+ * @return A new RootLoggerComponentBuilder.
+ */
+ RootLoggerComponentBuilder newRootLogger(String level, boolean includeLocation);
+
+ /**
* Set the Advertiser Plugin name.
* @param advertiser The Advertiser Plugin name.
+ * @param includeLocation If true include location information.
* @return this builder instance.
*/
ConfigurationBuilder<T> setAdvertiser(String advertiser);
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/4195c7b3/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultConfigurationBuilder.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultConfigurationBuilder.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultConfigurationBuilder.java
index 6286820..8e4364f 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultConfigurationBuilder.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultConfigurationBuilder.java
@@ -203,22 +203,42 @@ public class DefaultConfigurationBuilder<T extends BuiltConfiguration> implement
@Override
public LoggerComponentBuilder newAsyncLogger(final String name, final Level level) {
- return new DefaultLoggerComponentBuilder(this, name, level.toString(), "AsyncLogger");
+ return new DefaultLoggerComponentBuilder(this, name, level.toString(), "AsyncLogger", false);
+ }
+
+ @Override
+ public LoggerComponentBuilder newAsyncLogger(final String name, final Level level, boolean includeLocation) {
+ return new DefaultLoggerComponentBuilder(this, name, level.toString(), "AsyncLogger", includeLocation);
}
@Override
public LoggerComponentBuilder newAsyncLogger(final String name, final String level) {
+ return new DefaultLoggerComponentBuilder(this, name, level, "AsyncLogger", false);
+ }
+
+ @Override
+ public LoggerComponentBuilder newAsyncLogger(final String name, final String level, boolean includeLocation) {
return new DefaultLoggerComponentBuilder(this, name, level, "AsyncLogger");
}
@Override
public RootLoggerComponentBuilder newAsyncRootLogger(final Level level) {
- return new DefaultRootLoggerComponentBuilder(this, level.toString(), "AsyncRoot");
+ return new DefaultRootLoggerComponentBuilder(this, level.toString(), "AsyncRoot", false);
+ }
+
+ @Override
+ public RootLoggerComponentBuilder newAsyncRootLogger(final Level level, boolean includeLocation) {
+ return new DefaultRootLoggerComponentBuilder(this, level.toString(), "AsyncRoot", includeLocation);
}
@Override
public RootLoggerComponentBuilder newAsyncRootLogger(final String level) {
- return new DefaultRootLoggerComponentBuilder(this, level, "AsyncRoot");
+ return new DefaultRootLoggerComponentBuilder(this, level, "AsyncRoot", false);
+ }
+
+ @Override
+ public RootLoggerComponentBuilder newAsyncRootLogger(final String level, boolean includeLocation) {
+ return new DefaultRootLoggerComponentBuilder(this, level, "AsyncRoot", includeLocation);
}
@@ -263,22 +283,42 @@ public class DefaultConfigurationBuilder<T extends BuiltConfiguration> implement
@Override
public LoggerComponentBuilder newLogger(final String name, final Level level) {
- return new DefaultLoggerComponentBuilder(this, name, level.toString());
+ return new DefaultLoggerComponentBuilder(this, name, level.toString(), true);
+ }
+
+ @Override
+ public LoggerComponentBuilder newLogger(final String name, final Level level, boolean includeLocation) {
+ return new DefaultLoggerComponentBuilder(this, name, level.toString(), includeLocation);
}
@Override
public LoggerComponentBuilder newLogger(final String name, final String level) {
- return new DefaultLoggerComponentBuilder(this, name, level);
+ return new DefaultLoggerComponentBuilder(this, name, level, true);
+ }
+
+ @Override
+ public LoggerComponentBuilder newLogger(final String name, final String level, boolean includeLocation) {
+ return new DefaultLoggerComponentBuilder(this, name, level, includeLocation);
}
@Override
public RootLoggerComponentBuilder newRootLogger(final Level level) {
- return new DefaultRootLoggerComponentBuilder(this, level.toString());
+ return new DefaultRootLoggerComponentBuilder(this, level.toString(), true);
+ }
+
+ @Override
+ public RootLoggerComponentBuilder newRootLogger(final Level level, boolean includeLocation) {
+ return new DefaultRootLoggerComponentBuilder(this, level.toString(), includeLocation);
}
@Override
public RootLoggerComponentBuilder newRootLogger(final String level) {
- return new DefaultRootLoggerComponentBuilder(this, level);
+ return new DefaultRootLoggerComponentBuilder(this, level, true);
+ }
+
+ @Override
+ public RootLoggerComponentBuilder newRootLogger(final String level, boolean includeLocation) {
+ return new DefaultRootLoggerComponentBuilder(this, level, includeLocation);
}
@Override
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/4195c7b3/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultLoggerComponentBuilder.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultLoggerComponentBuilder.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultLoggerComponentBuilder.java
index 8c5a331..37aba83 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultLoggerComponentBuilder.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultLoggerComponentBuilder.java
@@ -44,6 +44,20 @@ class DefaultLoggerComponentBuilder extends DefaultComponentAndConfigurationBuil
* @param builder
* @param name
* @param level
+ * @param includeLocation
+ */
+ public DefaultLoggerComponentBuilder(final DefaultConfigurationBuilder<? extends Configuration> builder, final String name,
+ final String level, boolean includeLocation) {
+ super(builder, name, "Logger");
+ addAttribute("level", level);
+ addAttribute("includeLocation", includeLocation);
+ }
+
+ /**
+ * Configure a logger.
+ * @param builder
+ * @param name
+ * @param level
* @param type
*/
public DefaultLoggerComponentBuilder(final DefaultConfigurationBuilder<? extends Configuration> builder, final String name,
@@ -52,6 +66,21 @@ class DefaultLoggerComponentBuilder extends DefaultComponentAndConfigurationBuil
addAttribute("level", level);
}
+ /**
+ * Configure a logger.
+ * @param builder
+ * @param name
+ * @param level
+ * @param type
+ * @param includeLocation
+ */
+ public DefaultLoggerComponentBuilder(final DefaultConfigurationBuilder<? extends Configuration> builder, final String name,
+ final String level, final String type, boolean includeLocation) {
+ super(builder, name, type);
+ addAttribute("level", level);
+ addAttribute("includeLocation", includeLocation);
+ }
+
@Override
public LoggerComponentBuilder add(final AppenderRefComponentBuilder builder) {
return addComponent(builder);
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/4195c7b3/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultRootLoggerComponentBuilder.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultRootLoggerComponentBuilder.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultRootLoggerComponentBuilder.java
index 8d7a19b..dcf0b9b 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultRootLoggerComponentBuilder.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/builder/impl/DefaultRootLoggerComponentBuilder.java
@@ -42,6 +42,19 @@ class DefaultRootLoggerComponentBuilder extends DefaultComponentAndConfiguration
* Configure the root logger.
* @param builder
* @param level
+ * @param includeLocation
+ */
+ public DefaultRootLoggerComponentBuilder(final DefaultConfigurationBuilder<? extends Configuration> builder,
+ final String level, final boolean includeLocation) {
+ super(builder, "", "Root");
+ addAttribute("level", level);
+ addAttribute("includeLocation", includeLocation);
+ }
+
+ /**
+ * Configure the root logger.
+ * @param builder
+ * @param level
* @param type
*/
public DefaultRootLoggerComponentBuilder(final DefaultConfigurationBuilder<? extends Configuration> builder,
@@ -50,6 +63,20 @@ class DefaultRootLoggerComponentBuilder extends DefaultComponentAndConfiguration
addAttribute("level", level);
}
+
+ /**
+ * Configure the root logger.
+ * @param builder
+ * @param level
+ * @param type
+ */
+ public DefaultRootLoggerComponentBuilder(final DefaultConfigurationBuilder<? extends Configuration> builder,
+ final String level, final String type, final boolean includeLocation) {
+ super(builder, "", type);
+ addAttribute("level", level);
+ addAttribute("includeLocation", includeLocation);
+ }
+
@Override
public RootLoggerComponentBuilder add(final AppenderRefComponentBuilder builder) {
return addComponent(builder);
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/4195c7b3/log4j-core/src/main/java/org/apache/logging/log4j/core/config/properties/PropertiesConfigurationBuilder.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/properties/PropertiesConfigurationBuilder.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/properties/PropertiesConfigurationBuilder.java
index 5645ee2..14a061f 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/properties/PropertiesConfigurationBuilder.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/properties/PropertiesConfigurationBuilder.java
@@ -203,20 +203,32 @@ public class PropertiesConfigurationBuilder extends ConfigurationBuilderFactory
private LoggerComponentBuilder createLogger(final String key, final Properties properties) {
final String name = (String) properties.remove(CONFIG_NAME);
+ final String location = (String) properties.remove("includeLocation");
if (Strings.isEmpty(name)) {
throw new ConfigurationException("No name attribute provided for Logger " + key);
}
final String level = (String) properties.remove("level");
final String type = (String) properties.remove(CONFIG_TYPE);
final LoggerComponentBuilder loggerBuilder;
+ boolean includeLocation;
if (type != null) {
if (type.equalsIgnoreCase("asyncLogger")) {
- loggerBuilder = builder.newAsyncLogger(name, level);
+ if (location != null) {
+ includeLocation = Boolean.parseBoolean(location);
+ loggerBuilder = builder.newAsyncLogger(name, level, includeLocation);
+ } else {
+ loggerBuilder = builder.newAsyncLogger(name, level);
+ }
} else {
throw new ConfigurationException("Unknown Logger type " + type + " for Logger " + name);
}
} else {
- loggerBuilder = builder.newLogger(name, level);
+ if (location != null) {
+ includeLocation = Boolean.parseBoolean(location);
+ loggerBuilder = builder.newLogger(name, level, includeLocation);
+ } else {
+ loggerBuilder = builder.newLogger(name, level);
+ }
}
addLoggersToComponent(loggerBuilder, properties);
addFiltersToComponent(loggerBuilder, properties);
@@ -230,15 +242,27 @@ public class PropertiesConfigurationBuilder extends ConfigurationBuilderFactory
private RootLoggerComponentBuilder createRootLogger(final Properties properties) {
final String level = (String) properties.remove("level");
final String type = (String) properties.remove(CONFIG_TYPE);
+ final String location = (String) properties.remove("includeLocation");
+ final boolean includeLocation;
final RootLoggerComponentBuilder loggerBuilder;
if (type != null) {
if (type.equalsIgnoreCase("asyncRoot")) {
- loggerBuilder = builder.newAsyncRootLogger(level);
+ if (location != null) {
+ includeLocation = Boolean.parseBoolean(location);
+ loggerBuilder = builder.newAsyncRootLogger(level, includeLocation);
+ } else {
+ loggerBuilder = builder.newAsyncRootLogger(level);
+ }
} else {
throw new ConfigurationException("Unknown Logger type for root logger" + type);
}
} else {
- loggerBuilder = builder.newRootLogger(level);
+ if (location != null) {
+ includeLocation = Boolean.parseBoolean(location);
+ loggerBuilder = builder.newRootLogger(level, includeLocation);
+ } else {
+ loggerBuilder = builder.newRootLogger(level);
+ }
}
addLoggersToComponent(loggerBuilder, properties);
return addFiltersToComponent(loggerBuilder, properties);
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/4195c7b3/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/RandomAccessFileAppenderTests.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/RandomAccessFileAppenderTests.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/RandomAccessFileAppenderTests.java
index c25f666..7f6f03d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/RandomAccessFileAppenderTests.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/RandomAccessFileAppenderTests.java
@@ -42,14 +42,15 @@ import static org.junit.Assert.*;
@RunWith(Parameterized.class)
public class RandomAccessFileAppenderTests {
- @Parameterized.Parameters(name = "{0}, locationEnabled={1}")
+ @Parameterized.Parameters(name = "{0}, locationEnabled={1}, type={2}")
public static Collection<Object[]> data() {
return Arrays.asList(
new Object[][]{
- { "RandomAccessFileAppenderTest", false },
- { "RandomAccessFileAppenderLocationTest", true },
- { "RollingRandomAccessFileAppenderTest", false },
- { "RollingRandomAccessFileAppenderLocationTest", true }
+ { "RandomAccessFileAppenderTest", false, ".xml" },
+ { "RandomAccessFileAppenderLocationTest", true, ".xml" },
+ { "RollingRandomAccessFileAppenderTest", false, ".xml" },
+ { "RollingRandomAccessFileAppenderLocationTest", true, ".xml" },
+ { "RollingRandomAccessFileAppenderLocationPropsTest", false, ".properties" }
}
);
}
@@ -63,8 +64,8 @@ public class RandomAccessFileAppenderTests {
private final File logFile;
private final boolean locationEnabled;
- public RandomAccessFileAppenderTests(final String testName, final boolean locationEnabled) {
- this.init = new LoggerContextRule(testName + ".xml");
+ public RandomAccessFileAppenderTests(final String testName, final boolean locationEnabled, final String type) {
+ this.init = new LoggerContextRule(testName + type);
this.logFile = new File("target", testName + ".log");
this.files = new CleanFiles(this.logFile);
this.locationEnabled = locationEnabled;
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/4195c7b3/log4j-core/src/test/resources/RollingRandomAccessFileAppenderLocationPropsTest.properties
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/resources/RollingRandomAccessFileAppenderLocationPropsTest.properties b/log4j-core/src/test/resources/RollingRandomAccessFileAppenderLocationPropsTest.properties
new file mode 100644
index 0000000..295031e
--- /dev/null
+++ b/log4j-core/src/test/resources/RollingRandomAccessFileAppenderLocationPropsTest.properties
@@ -0,0 +1,35 @@
+# 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.
+
+status = error
+name = PropertiesConfigTest
+
+appenders = rolling
+
+appender.rolling.type = RollingRandomAccessFile
+appender.rolling.name = RollingRandomAccessFile
+appender.rolling.fileName = target/RollingRandomAccessFileAppenderLocationPropsTest.log
+appender.rolling.filePattern = target/RollingProps/test-%d{MM-dd-yyyy}-%i.log.gz
+appender.rolling.append = false
+appender.rolling.immediateFlush = true;
+appender.rolling.layout.type = PatternLayout
+appender.rolling.layout.pattern = %d %p %c{1.} [%t] %X{aKey} %m %location %ex%n
+appender.rolling.policies.type = Policies
+appender.rolling.policies.time.type = TimeBasedTriggeringPolicy
+
+rootLogger.level = info
+rootLogger.includeLocation = false
+rootLogger.appenderRefs = rolling
+rootLogger.appenderRef.rolling.ref = RollingRandomAccessFile
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/4195c7b3/src/changes/changes.xml
----------------------------------------------------------------------
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 3239155..cb717ed 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -24,6 +24,12 @@
</properties>
<body>
<release version="2.6" date="2016-MM-DD" description="GA Release 2.6">
+ <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>
@@ -1265,9 +1271,6 @@
</action>
</release>
<release version="2.0-rc2" date="2014-06-21" description="Bug fixes and enhancements">
- <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-675" dev="rpopma" type="add">
RollingFile and RollingRandomAccessFile now write the layout footer before rollover.
</action>