diff --git a/core/pom.xml b/core/pom.xml
index d92b7cdc98..81c9d4b3ca 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -102,6 +102,11 @@
com.fasterxml.jackson.core
jackson-databind
+
+ com.fasterxml.jackson.dataformat
+ jackson-dataformat-yaml
+ test
+
com.fasterxml.jackson.jakarta.rs
jackson-jakarta-rs-json-provider
@@ -226,8 +231,8 @@
test
- org.slf4j
- slf4j-reload4j
+ org.apache.logging.log4j
+ log4j-slf4j-impl
test
diff --git a/core/src/test/resources/log4j.properties b/core/src/test/resources/log4j2.yaml
similarity index 69%
rename from core/src/test/resources/log4j.properties
rename to core/src/test/resources/log4j2.yaml
index 9017d70573..ffe624714b 100644
--- a/core/src/test/resources/log4j.properties
+++ b/core/src/test/resources/log4j2.yaml
@@ -13,9 +13,16 @@
# See the License for the specific language governing permissions and
# limitations under the License.
##
-
-log4j.rootLogger=INFO, stdout
-
-log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-log4j.appender.stdout.layout.ConversionPattern=[%d] %p %m (%c:%L)%n
+Configuration:
+ name: "Log4j2"
+ Appenders:
+ Console:
+ name: "STDOUT"
+ target: "SYSTEM_OUT"
+ PatternLayout:
+ pattern: "[%d] %v1Level %m (%c:%L)%n"
+ Loggers:
+ Root:
+ level: "INFO"
+ AppenderRef:
+ ref: "STDOUT"
diff --git a/examples/pom.xml b/examples/pom.xml
index 8defebceb7..4a68d0acad 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -30,8 +30,13 @@
- org.slf4j
- slf4j-reload4j
+ org.apache.logging.log4j
+ log4j-slf4j-impl
+
+
+ com.fasterxml.jackson.dataformat
+ jackson-dataformat-yaml
+ runtime
io.confluent
diff --git a/examples/src/main/resources/log4j.properties b/examples/src/main/resources/log4j.properties
deleted file mode 100644
index 61d5c9893e..0000000000
--- a/examples/src/main/resources/log4j.properties
+++ /dev/null
@@ -1,12 +0,0 @@
-log4j.rootLogger=INFO, stdout
-log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-log4j.appender.stdout.layout.ConversionPattern=[%d] %p %m (%c:%L)%n
-log4j.logger.kafka=OFF, stdout
-log4j.logger.org.apache.zookeeper=ERROR, stdout
-log4j.logger.org.apache.kafka=ERROR, stdout
-log4j.logger.org.I0Itec.zkclient=ERROR, stdout
-#log4j.logger.kafka.consumer.ZookeeperConsumerConnector=INFO, stdout
-log4j.additivity.kafka.server=false
-log4j.additivity.kafka.consumer.ZookeeperConsumerConnector=false
-log4j.logger.io.confluent.rest-utils.requests=INFO, stdout
\ No newline at end of file
diff --git a/examples/src/main/resources/log4j2.yaml b/examples/src/main/resources/log4j2.yaml
new file mode 100644
index 0000000000..5d9762d1fa
--- /dev/null
+++ b/examples/src/main/resources/log4j2.yaml
@@ -0,0 +1,30 @@
+Configuration:
+ name: "Log4j2"
+ Appenders:
+ Console:
+ name: "STDOUT"
+ target: "SYSTEM_OUT"
+ PatternLayout:
+ pattern: "[%d] %v1Level %m (%c:%L)%n"
+ Loggers:
+ Root:
+ level: "INFO"
+ AppenderRef:
+ ref: "STDOUT"
+ Logger:
+ - name: "org.apache.kafka"
+ level: "ERROR"
+ AppenderRef:
+ ref: "STDOUT"
+ - name: "org.I0Itec.zkclient"
+ level: "ERROR"
+ AppenderRef:
+ ref: "STDOUT"
+ - name: "io.confluent.rest-utils.requests"
+ level: "INFO"
+ AppenderRef:
+ ref: "STDOUT"
+ - name: "kafka"
+ level: "OFF"
+ AppenderRef:
+ ref: "STDOUT"
diff --git a/fips-tests/pom.xml b/fips-tests/pom.xml
index fe029a216e..1d0a52acdb 100644
--- a/fips-tests/pom.xml
+++ b/fips-tests/pom.xml
@@ -20,8 +20,13 @@
${io.confluent.rest-utils.version}
- org.slf4j
- slf4j-reload4j
+ org.apache.logging.log4j
+ log4j-slf4j-impl
+ test
+
+
+ com.fasterxml.jackson.dataformat
+ jackson-dataformat-yaml
test
diff --git a/fips-tests/src/test/resources/log4j.properties b/fips-tests/src/test/resources/log4j2.yaml
similarity index 69%
rename from fips-tests/src/test/resources/log4j.properties
rename to fips-tests/src/test/resources/log4j2.yaml
index 91b2fb1e10..15a87eb2a6 100644
--- a/fips-tests/src/test/resources/log4j.properties
+++ b/fips-tests/src/test/resources/log4j2.yaml
@@ -13,9 +13,16 @@
# See the License for the specific language governing permissions and
# limitations under the License.
##
-
-log4j.rootLogger=INFO, stdout
-
-log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-log4j.appender.stdout.layout.ConversionPattern=[%d] %p %m (%c:%L)%n
+Configuration:
+ name: "Log4j2"
+ Appenders:
+ Console:
+ name: "STDOUT"
+ target: "SYSTEM_OUT"
+ PatternLayout:
+ pattern: "[%d] %v1Level %m (%c:%L)%n"
+ Loggers:
+ Root:
+ level: "INFO"
+ AppenderRef:
+ ref: "STDOUT"
diff --git a/licenses/NOTICE.confluent-common.txt b/licenses/NOTICE.confluent-common.txt
index 98f9dd4c05..4dddd38bdf 100644
--- a/licenses/NOTICE.confluent-common.txt
+++ b/licenses/NOTICE.confluent-common.txt
@@ -16,6 +16,12 @@ The following libraries are included in packaged versions of this project:
* LICENSE: licenses/LICENSE.mit.txt
* HOMEPAGE: http://www.slf4j.org/
+* Apache Log4j
+ * COPYRIGHT: Copyright 1999-2024 Apache Software Foundation
+ * LICENSE: licenses/LICENSE.apache2.txt
+ * NOTICE: licenses/NOTICE.log4j2.txt
+ * HOMEPAGE: https://logging.apache.org/log4j/2.x/
+
* ZkClient
* LICENSE: licenses/LICENSE.apache2.txt
* HOMEPAGE: https://github.com/sgroschupf/zkclient
diff --git a/licenses/NOTICE.log4j2.txt b/licenses/NOTICE.log4j2.txt
new file mode 100644
index 0000000000..0c37b52bfe
--- /dev/null
+++ b/licenses/NOTICE.log4j2.txt
@@ -0,0 +1,20 @@
+Apache Log4j
+Copyright 1999-2024 Apache Software Foundation
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
+
+ResolverUtil.java
+Copyright 2005-2006 Tim Fennell
+
+Dumbster SMTP test server
+Copyright 2004 Jason Paul Kitchen
+
+TypeUtil.java
+Copyright 2002-2012 Ramnivas Laddad, Juergen Hoeller, Chris Beams
+
+picocli (http://picocli.info)
+Copyright 2017 Remko Popma
+
+TimeoutBlockingWaitStrategy.java and parts of Util.java
+Copyright 2011 LMAX Ltd.