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 2022/02/06 12:57:51 UTC
[logging-log4j2] 02/04: Add test that show we can configure a Log4j 1 properties file with a socket appender using an XML layout.
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch release-2.x
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git
commit 5858f0483de5fb93a8b80a5d46abe3cd579d0883
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Sat Feb 5 18:17:42 2022 -0500
Add test that show we can configure a Log4j 1 properties file with a
socket appender using an XML layout.
---
.../log4j/builders/layout/XmlLayoutBuilder.java | 6 ++----
.../config/SocketAppenderConfigurationTest.java | 5 +++++
.../resources/log4j1-socket-xml-layout.properties | 24 ++++++++++++++++++++++
3 files changed, 31 insertions(+), 4 deletions(-)
diff --git a/log4j-1.2-api/src/main/java/org/apache/log4j/builders/layout/XmlLayoutBuilder.java b/log4j-1.2-api/src/main/java/org/apache/log4j/builders/layout/XmlLayoutBuilder.java
index e3a970b..93a3ff4 100644
--- a/log4j-1.2-api/src/main/java/org/apache/log4j/builders/layout/XmlLayoutBuilder.java
+++ b/log4j-1.2-api/src/main/java/org/apache/log4j/builders/layout/XmlLayoutBuilder.java
@@ -27,6 +27,7 @@ import org.apache.log4j.Layout;
import org.apache.log4j.bridge.LayoutWrapper;
import org.apache.log4j.builders.AbstractBuilder;
import org.apache.log4j.config.PropertiesConfiguration;
+import org.apache.log4j.layout.Log4j1XmlLayout;
import org.apache.log4j.xml.XmlConfiguration;
import org.apache.logging.log4j.core.config.plugins.Plugin;
import org.apache.logging.log4j.core.layout.XmlLayout;
@@ -71,9 +72,6 @@ public class XmlLayoutBuilder extends AbstractBuilder implements LayoutBuilder {
}
private Layout createLayout(boolean properties, boolean locationInfo) {
- return new LayoutWrapper(XmlLayout.newBuilder()
- .setLocationInfo(locationInfo)
- .setProperties(properties)
- .build());
+ return new LayoutWrapper(Log4j1XmlLayout.createLayout(locationInfo, properties));
}
}
diff --git a/log4j-1.2-api/src/test/java/org/apache/log4j/config/SocketAppenderConfigurationTest.java b/log4j-1.2-api/src/test/java/org/apache/log4j/config/SocketAppenderConfigurationTest.java
index 5fbaf30..76dee05 100644
--- a/log4j-1.2-api/src/test/java/org/apache/log4j/config/SocketAppenderConfigurationTest.java
+++ b/log4j-1.2-api/src/test/java/org/apache/log4j/config/SocketAppenderConfigurationTest.java
@@ -73,6 +73,11 @@ public class SocketAppenderConfigurationTest {
}
@Test
+ public void testPropertiesXmlLayout() throws Exception {
+ checkProtocolXmlConfig(Protocol.TCP, "target/test-classes/log4j1-socket-xml-layout.properties");
+ }
+
+ @Test
public void testXml() throws Exception {
checkProtocolXmlConfig(Protocol.TCP, "target/test-classes/log4j1-socket.xml");
}
diff --git a/log4j-1.2-api/src/test/resources/log4j1-socket-xml-layout.properties b/log4j-1.2-api/src/test/resources/log4j1-socket-xml-layout.properties
new file mode 100644
index 0000000..35ceb97
--- /dev/null
+++ b/log4j-1.2-api/src/test/resources/log4j1-socket-xml-layout.properties
@@ -0,0 +1,24 @@
+#
+# 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.
+#
+
+log4j.rootLogger=DEBUG,socket
+log4j.appender.socket=org.apache.log4j.net.SocketAppender
+log4j.appender.socket.remoteHost=localhost
+log4j.appender.socket.port=9999
+log4j.appender.socket.reconnectionDelay=100
+log4j.appender.socket.layout=org.apache.log4j.xml.XMLLayout
+log4j.appender.socket.Threshold=DEBUG