This is an automated email from the ASF dual-hosted git repository.

tallison pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tika.git


The following commit(s) were added to refs/heads/main by this push:
     new b35b168  TIKA-3312 -- upgrade to log4j2 throughout
b35b168 is described below

commit b35b1685990a0401e33de0697499e40cec680858
Author: tallison <[email protected]>
AuthorDate: Thu Apr 22 14:09:45 2021 -0400

    TIKA-3312 -- upgrade to log4j2 throughout
---
 tika-app/pom.xml                                   | 46 ++++++++++++----------
 .../apache/tika/cli/BatchCommandLineBuilder.java   |  4 +-
 .../src/main/java/org/apache/tika/cli/TikaCLI.java | 37 +++--------------
 .../src/main/resources/log4j2.properties           | 23 ++++++-----
 ....properties => log4j2_batch_process.properties} | 22 ++++++-----
 .../tika/cli/TikaCLIBatchIntegrationTest.java      | 13 ++++--
 .../log4j2_batch_process_test.properties}          | 22 ++++++-----
 tika-batch/pom.xml                                 |  5 ++-
 .../apache/tika/batch/BatchProcessDriverCLI.java   |  1 -
 .../org/apache/tika/batch/fs/BatchDriverTest.java  |  2 +-
 tika-core/pom.xml                                  |  5 ---
 tika-eval/tika-eval-app/pom.xml                    |  5 +++
 .../apache/tika/eval/app/XMLErrorLogUpdater.java   |  3 +-
 .../apache/tika/eval/app/io/XMLLogMsgHandler.java  |  3 +-
 .../org/apache/tika/eval/app/io/XMLLogReader.java  | 10 ++++-
 tika-fuzzing/pom.xml                               |  5 ++-
 .../src/main/resources/log4j2.properties           | 22 ++++++-----
 tika-langdetect/tika-langdetect-lingo24/pom.xml    |  6 +--
 tika-langdetect/tika-langdetect-mitll-text/pom.xml |  6 +--
 tika-parent/pom.xml                                | 13 +++---
 .../tika-age-recogniser/pom.xml                    | 32 ++++++++-------
 tika-parsers/tika-parsers-advanced/tika-dl/pom.xml |  6 +--
 .../tika-parser-pdf-module/pom.xml                 | 16 --------
 .../org/apache/tika/parser/pdf/PDFParserTest.java  |  4 +-
 .../tika-parsers-classic-package/pom.xml           |  7 ----
 .../org/apache/tika/parser/pdf/PDFParserTest.java  |  4 +-
 tika-pipes/tika-emitters/tika-emitter-s3/pom.xml   |  4 +-
 tika-pipes/tika-emitters/tika-emitter-solr/pom.xml |  4 +-
 .../tika-fetch-iterator-s3/pom.xml                 |  5 ++-
 tika-pipes/tika-fetchers/tika-fetcher-http/pom.xml |  4 +-
 tika-pipes/tika-fetchers/tika-fetcher-s3/pom.xml   |  4 +-
 tika-pipes/tika-pipes-async/pom.xml                |  4 +-
 tika-pipes/tika-pipes-integration-tests/pom.xml    |  4 +-
 tika-server/tika-server-classic/bin/tika.in.sh     |  4 +-
 .../{log4j.properties => log4j2.properties}        | 16 +++++---
 .../{log4j.properties => log4j2.properties}        | 17 ++++----
 tika-server/tika-server-client/pom.xml             |  4 +-
 .../{log4j.properties => log4j2.properties}        | 19 ++++++---
 .../{log4j.properties => log4j2.properties}        | 19 ++++++---
 tika-server/tika-server-core/pom.xml               |  4 +-
 .../tika/server/core/IntegrationTestBase.java      |  3 +-
 .../src/test/resources/log4j.properties            | 26 ------------
 .../src/test/resources/log4j2.properties}          | 25 ++++++++----
 .../{log4j_forked.xml => log4j2_forked.xml}        |  0
 44 files changed, 243 insertions(+), 245 deletions(-)

diff --git a/tika-app/pom.xml b/tika-app/pom.xml
index 14525ef..138ec88 100644
--- a/tika-app/pom.xml
+++ b/tika-app/pom.xml
@@ -56,29 +56,35 @@
     <dependency>
       <groupId>${project.groupId}</groupId>
       <artifactId>tika-xmp</artifactId>
-      <version>${project.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>${project.groupId}</groupId>
-      <artifactId>tika-batch</artifactId>
-      <version>${project.version}</version>
+        <version>${project.version}</version>
     </dependency>
+      <dependency>
+          <groupId>${project.groupId}</groupId>
+          <artifactId>tika-batch</artifactId>
+          <version>${project.version}</version>
+      </dependency>
 
-    <!-- logging -->
-    <dependency>
-      <groupId>org.slf4j</groupId>
-      <artifactId>slf4j-log4j12</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.slf4j</groupId>
-      <artifactId>jcl-over-slf4j</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.slf4j</groupId>
-      <artifactId>jul-to-slf4j</artifactId>
-    </dependency>
+      <!-- logging -->
+      <dependency>
+          <groupId>org.apache.logging.log4j</groupId>
+          <artifactId>log4j-core</artifactId>
+          <version>${log4j2.version}</version>
+      </dependency>
+      <dependency>
+          <groupId>org.apache.logging.log4j</groupId>
+          <artifactId>log4j-slf4j-impl</artifactId>
+          <version>${log4j2.version}</version>
+      </dependency>
+      <dependency>
+          <groupId>org.slf4j</groupId>
+          <artifactId>jcl-over-slf4j</artifactId>
+      </dependency>
+      <dependency>
+          <groupId>org.slf4j</groupId>
+          <artifactId>jul-to-slf4j</artifactId>
+      </dependency>
 
-    <dependency>
+      <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
       <scope>test</scope>
diff --git 
a/tika-app/src/main/java/org/apache/tika/cli/BatchCommandLineBuilder.java 
b/tika-app/src/main/java/org/apache/tika/cli/BatchCommandLineBuilder.java
index 00fa86f..be4d0a0 100644
--- a/tika-app/src/main/java/org/apache/tika/cli/BatchCommandLineBuilder.java
+++ b/tika-app/src/main/java/org/apache/tika/cli/BatchCommandLineBuilder.java
@@ -62,12 +62,12 @@ class BatchCommandLineBuilder {
 
         boolean hasLog4j = false;
         for (String k : jvmOpts.keySet()) {
-            if (k.startsWith("-Dlog4j.configuration=")) {
+            if (k.startsWith("-Dlog4j.configurationFile=")) {
                 hasLog4j = true;
                 break;
             }
         }
-        //use the log4j config file inside the app 
/resources/log4j_batch_process.properties
+        //use the log4j config file inside the app 
/resources/log4j2_batch_process.properties
         if (! hasLog4j) {
             
jvmOpts.put("-Dlog4j.configuration=log4j_batch_process.properties", "");
         }
diff --git a/tika-app/src/main/java/org/apache/tika/cli/TikaCLI.java 
b/tika-app/src/main/java/org/apache/tika/cli/TikaCLI.java
index afdc332..e906fdb 100644
--- a/tika-app/src/main/java/org/apache/tika/cli/TikaCLI.java
+++ b/tika-app/src/main/java/org/apache/tika/cli/TikaCLI.java
@@ -46,7 +46,6 @@ import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.util.Arrays;
 import java.util.Comparator;
-import java.util.Enumeration;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
@@ -60,13 +59,8 @@ import java.util.UUID;
 import org.apache.commons.io.FilenameUtils;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.io.input.CloseShieldInputStream;
-import org.apache.log4j.Level;
-import org.apache.log4j.LogManager;
-import org.apache.log4j.PropertyConfigurator;
-import org.apache.poi.poifs.filesystem.DirectoryEntry;
-import org.apache.poi.poifs.filesystem.DocumentEntry;
-import org.apache.poi.poifs.filesystem.DocumentInputStream;
-import org.apache.poi.poifs.filesystem.POIFSFileSystem;
+
+
 import org.apache.tika.Tika;
 import org.apache.tika.batch.BatchProcessDriverCLI;
 import org.apache.tika.config.TikaConfig;
@@ -109,6 +103,8 @@ import org.apache.tika.sax.RecursiveParserWrapperHandler;
 import org.apache.tika.sax.WriteOutContentHandler;
 import org.apache.tika.sax.boilerpipe.BoilerpipeContentHandler;
 import org.apache.tika.xmp.XMPMetadata;
+
+import org.apache.logging.log4j.Level;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.xml.sax.ContentHandler;
@@ -131,12 +127,6 @@ public class TikaCLI {
     public static void main(String[] args) throws Exception {
         TikaCLI cli = new TikaCLI();
 
-        if (!isConfigured()) {
-            try (InputStream is = 
cli.getClass().getResourceAsStream("/log4j.properties")) {
-                PropertyConfigurator.configure(is);
-            }
-        }
-
         if (cli.testForHelp(args)) {
             cli.usage();
             return;
@@ -169,23 +159,6 @@ public class TikaCLI {
         }
     }
 
-    private static boolean isConfigured() {
-        //Borrowed from: http://wiki.apache.org/logging-log4j/UsefulCode
-        Enumeration appenders = LogManager.getRootLogger().getAllAppenders();
-        if (appenders.hasMoreElements()) {
-            return true;
-        }
-        else {
-            Enumeration loggers = LogManager.getCurrentLoggers() ;
-            while (loggers.hasMoreElements()) {
-                org.apache.log4j.Logger c = (org.apache.log4j.Logger) 
loggers.nextElement();
-                if (c.getAllAppenders().hasMoreElements())
-                    return true;
-            }
-        }
-        return false;
-    }
-
     private void extractInlineImagesFromPDFs() {
         if (configFilePath == null && context.get(PDFParserConfig.class) == 
null) {
             PDFParserConfig pdfParserConfig = new PDFParserConfig();
@@ -376,7 +349,7 @@ public class TikaCLI {
             pipeMode = false;
             version();
         } else if (arg.equals("-v") || arg.equals("--verbose")) {
-            org.apache.log4j.Logger.getRootLogger().setLevel(Level.DEBUG);
+            
org.apache.logging.log4j.core.config.Configurator.setRootLevel(Level.DEBUG);
         } else if (arg.equals("-g") || arg.equals("--gui")) {
             pipeMode = false;
             if (configFilePath != null){
diff --git a/tika-fuzzing/src/main/resources/log4j.properties 
b/tika-app/src/main/resources/log4j2.properties
similarity index 67%
rename from tika-fuzzing/src/main/resources/log4j.properties
rename to tika-app/src/main/resources/log4j2.properties
index 7d3b372..af1382f 100644
--- a/tika-fuzzing/src/main/resources/log4j.properties
+++ b/tika-app/src/main/resources/log4j2.properties
@@ -12,13 +12,16 @@
 # 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.
-
-#info,debug, error,fatal ...
-log4j.rootLogger=info,stderr
-
-#console
-log4j.appender.stderr=org.apache.log4j.ConsoleAppender
-log4j.appender.stderr.layout=org.apache.log4j.PatternLayout
-log4j.appender.stderr.Target=System.err
-
-log4j.appender.stderr.layout.ConversionPattern= %-5p %m%n
+status=info
+name=PropertiesConfig
+filters=threshold
+filter.threshold.type=ThresholdFilter
+filter.threshold.level=info
+appenders=console
+appender.console.type=Console
+appender.console.name=STDERR
+appender.console.layout.type=PatternLayout
+appender.console.layout.pattern=%-5p %m%n
+rootLogger.level=info
+rootLogger.appenderRefs=stderr
+rootLogger.appenderRef.stderr.ref=STDERR
diff --git a/tika-app/src/main/resources/log4j_batch_process.properties 
b/tika-app/src/main/resources/log4j2_batch_process.properties
similarity index 68%
rename from tika-app/src/main/resources/log4j_batch_process.properties
rename to tika-app/src/main/resources/log4j2_batch_process.properties
index 9fc74fd..11461aa 100644
--- a/tika-app/src/main/resources/log4j_batch_process.properties
+++ b/tika-app/src/main/resources/log4j2_batch_process.properties
@@ -12,13 +12,17 @@
 # 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.
-
 #info,debug, error,fatal ...
-log4j.rootLogger=info,stdout
-
-#console
-log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-
-
-log4j.appender.stdout.layout.ConversionPattern=%m%n
+status=info
+name=PropertiesConfig
+filters=threshold
+filter.threshold.type=ThresholdFilter
+filter.threshold.level=info
+appenders=console
+appender.console.type=Console
+appender.console.name=STDOUT
+appender.console.layout.type=PatternLayout
+appender.console.layout.pattern=%m%n
+rootLogger.level=info
+rootLogger.appenderRefs=stdout
+rootLogger.appenderRef.stdout.ref=STDOUT
diff --git 
a/tika-app/src/test/java/org/apache/tika/cli/TikaCLIBatchIntegrationTest.java 
b/tika-app/src/test/java/org/apache/tika/cli/TikaCLIBatchIntegrationTest.java
index c208138..5344cf2 100644
--- 
a/tika-app/src/test/java/org/apache/tika/cli/TikaCLIBatchIntegrationTest.java
+++ 
b/tika-app/src/test/java/org/apache/tika/cli/TikaCLIBatchIntegrationTest.java
@@ -33,9 +33,12 @@ import java.nio.file.Paths;
 import java.util.List;
 
 import org.apache.commons.io.FileUtils;
+
 import org.apache.tika.metadata.Metadata;
 import org.apache.tika.metadata.TikaCoreProperties;
 import org.apache.tika.metadata.serialization.JsonMetadataList;
+import org.apache.tika.utils.ProcessUtils;
+
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -43,9 +46,11 @@ import org.junit.Test;
 public class TikaCLIBatchIntegrationTest {
 
     private Path testInputDir = Paths.get("src/test/resources/test-data");
+    private final String propsFileName = 
"log4j2_batch_process_test.properties";
     private String testInputDirForCommandLine;
     private Path tempOutputDir;
     private String tempOutputDirForCommandLine;
+    private Path customBatchLogging;
     private OutputStream out = null;
     private OutputStream err = null;
     private ByteArrayOutputStream outBuffer = null;
@@ -63,6 +68,8 @@ public class TikaCLIBatchIntegrationTest {
         System.setErr(errWriter);
         testInputDirForCommandLine = testInputDir.toAbsolutePath().toString();
         tempOutputDirForCommandLine = 
tempOutputDir.toAbsolutePath().toString();
+        customBatchLogging = tempOutputDir.resolve(propsFileName);
+        Files.copy(this.getClass().getResourceAsStream("/" + propsFileName), 
customBatchLogging);
     }
 
     @After
@@ -136,10 +143,8 @@ public class TikaCLIBatchIntegrationTest {
 
     @Test
     public void testProcessLogFileConfig() throws Exception {
-        String[] params = {"-i", testInputDirForCommandLine,
-                "-o", tempOutputDirForCommandLine,
-                "-numConsumers", "2",
-                "-JDlog4j.configuration=log4j_batch_process_test.properties"};
+        String[] params = {"-i", testInputDirForCommandLine, "-o", 
tempOutputDirForCommandLine,
+                "-numConsumers", "2", "-JDlog4j.configurationFile=" + 
customBatchLogging.toUri()};
         TikaCLI.main(params);
 
         assertFileExists(tempOutputDir.resolve("bad_xml.xml.xml"));
diff --git a/tika-app/src/main/resources/log4j.properties 
b/tika-app/src/test/resources/log4j2_batch_process_test.properties
similarity index 67%
rename from tika-app/src/main/resources/log4j.properties
rename to tika-app/src/test/resources/log4j2_batch_process_test.properties
index 7d3b372..a99ee2c 100644
--- a/tika-app/src/main/resources/log4j.properties
+++ b/tika-app/src/test/resources/log4j2_batch_process_test.properties
@@ -12,13 +12,17 @@
 # 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.
-
 #info,debug, error,fatal ...
-log4j.rootLogger=info,stderr
-
-#console
-log4j.appender.stderr=org.apache.log4j.ConsoleAppender
-log4j.appender.stderr.layout=org.apache.log4j.PatternLayout
-log4j.appender.stderr.Target=System.err
-
-log4j.appender.stderr.layout.ConversionPattern= %-5p %m%n
+status=trace
+name=PropertiesConfig
+filters=threshold
+filter.threshold.type=ThresholdFilter
+filter.threshold.level=trace
+appenders=console
+appender.console.type=Console
+appender.console.name=STDOUT
+appender.console.layout.type=PatternLayout
+appender.console.layout.pattern=MY_CUSTOM_LOG_CONFIG %m%n
+rootLogger.level=trace
+rootLogger.appenderRefs=stdout
+rootLogger.appenderRef.stdout.ref=STDOUT
diff --git a/tika-batch/pom.xml b/tika-batch/pom.xml
index 3f299ae..bb13b85 100644
--- a/tika-batch/pom.xml
+++ b/tika-batch/pom.xml
@@ -71,8 +71,9 @@
 
     <!-- logging -->
     <dependency>
-      <groupId>org.slf4j</groupId>
-      <artifactId>slf4j-log4j12</artifactId>
+        <groupId>org.apache.logging.log4j</groupId>
+        <artifactId>log4j-slf4j-impl</artifactId>
+        <version>${log4j2.version}</version>
     </dependency>
     <dependency>
       <groupId>org.slf4j</groupId>
diff --git 
a/tika-batch/src/main/java/org/apache/tika/batch/BatchProcessDriverCLI.java 
b/tika-batch/src/main/java/org/apache/tika/batch/BatchProcessDriverCLI.java
index a1d4050..dcc47de 100644
--- a/tika-batch/src/main/java/org/apache/tika/batch/BatchProcessDriverCLI.java
+++ b/tika-batch/src/main/java/org/apache/tika/batch/BatchProcessDriverCLI.java
@@ -245,7 +245,6 @@ public class BatchProcessDriverCLI {
 
     private void start() throws Exception {
         ProcessBuilder builder = new ProcessBuilder(commandLine);
-        builder.directory(Paths.get(".").toFile());
         process = builder.start();
 
         errorWatcher = new StreamWatcher(process.getErrorStream());
diff --git 
a/tika-batch/src/test/java/org/apache/tika/batch/fs/BatchDriverTest.java 
b/tika-batch/src/test/java/org/apache/tika/batch/fs/BatchDriverTest.java
index 7a77c14..8b5090b 100644
--- a/tika-batch/src/test/java/org/apache/tika/batch/fs/BatchDriverTest.java
+++ b/tika-batch/src/test/java/org/apache/tika/batch/fs/BatchDriverTest.java
@@ -33,7 +33,7 @@ import org.junit.Test;
 
 public class BatchDriverTest extends FSBatchTestBase {
 
-    //for debugging, turn logging off/on via resources/log4j.properties for 
the driver
+    //for debugging, turn logging off/on via resources/log4j2.properties for 
the driver
     //and log4j_process.properties for the process.
 
     @Test(timeout = 15000)
diff --git a/tika-core/pom.xml b/tika-core/pom.xml
index a1d788e..983514a 100644
--- a/tika-core/pom.xml
+++ b/tika-core/pom.xml
@@ -70,11 +70,6 @@
 
         <!-- Test dependencies -->
         <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
             <groupId>com.google.guava</groupId>
             <artifactId>guava</artifactId>
             <version>${guava.version}</version>
diff --git a/tika-eval/tika-eval-app/pom.xml b/tika-eval/tika-eval-app/pom.xml
index e328271..f58955b 100644
--- a/tika-eval/tika-eval-app/pom.xml
+++ b/tika-eval/tika-eval-app/pom.xml
@@ -40,6 +40,11 @@
             <version>${project.version}</version>
         </dependency>
         <dependency>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-core</artifactId>
+            <version>${log4j2.version}</version>
+        </dependency>
+        <dependency>
             <groupId>com.h2database</groupId>
             <artifactId>h2</artifactId>
             <version>${h2.version}</version>
diff --git 
a/tika-eval/tika-eval-app/src/main/java/org/apache/tika/eval/app/XMLErrorLogUpdater.java
 
b/tika-eval/tika-eval-app/src/main/java/org/apache/tika/eval/app/XMLErrorLogUpdater.java
index 9aa85cc..93ba604 100644
--- 
a/tika-eval/tika-eval-app/src/main/java/org/apache/tika/eval/app/XMLErrorLogUpdater.java
+++ 
b/tika-eval/tika-eval-app/src/main/java/org/apache/tika/eval/app/XMLErrorLogUpdater.java
@@ -32,7 +32,6 @@ import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.sql.Statement;
 
-import org.apache.log4j.Level;
 import org.apache.tika.eval.app.db.Cols;
 import org.apache.tika.eval.app.db.H2Util;
 import org.apache.tika.eval.app.db.JDBCUtil;
@@ -40,8 +39,10 @@ import org.apache.tika.eval.app.db.TableInfo;
 import org.apache.tika.eval.app.io.XMLLogMsgHandler;
 import org.apache.tika.eval.app.io.XMLLogReader;
 import org.apache.tika.eval.app.reports.ResultsReporter;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.slf4j.event.Level;
 
 /**
  * This is a very task specific class that reads a log file and updates
diff --git 
a/tika-eval/tika-eval-app/src/main/java/org/apache/tika/eval/app/io/XMLLogMsgHandler.java
 
b/tika-eval/tika-eval-app/src/main/java/org/apache/tika/eval/app/io/XMLLogMsgHandler.java
index 547784b..0221849 100644
--- 
a/tika-eval/tika-eval-app/src/main/java/org/apache/tika/eval/app/io/XMLLogMsgHandler.java
+++ 
b/tika-eval/tika-eval-app/src/main/java/org/apache/tika/eval/app/io/XMLLogMsgHandler.java
@@ -19,7 +19,8 @@ package org.apache.tika.eval.app.io;
 import java.io.IOException;
 import java.sql.SQLException;
 
-import org.apache.log4j.Level;
+import org.slf4j.event.Level;
+
 
 public interface XMLLogMsgHandler {
     public void handleMsg(Level level, String xml) throws IOException, 
SQLException;
diff --git 
a/tika-eval/tika-eval-app/src/main/java/org/apache/tika/eval/app/io/XMLLogReader.java
 
b/tika-eval/tika-eval-app/src/main/java/org/apache/tika/eval/app/io/XMLLogReader.java
index 408ed97..2cac9ce 100644
--- 
a/tika-eval/tika-eval-app/src/main/java/org/apache/tika/eval/app/io/XMLLogReader.java
+++ 
b/tika-eval/tika-eval-app/src/main/java/org/apache/tika/eval/app/io/XMLLogReader.java
@@ -27,11 +27,12 @@ import java.nio.charset.StandardCharsets;
 import java.sql.SQLException;
 
 import org.apache.commons.io.IOUtils;
-import org.apache.log4j.Level;
 import org.apache.tika.parser.ParseContext;
 import org.apache.tika.utils.XMLReaderUtils;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.slf4j.event.Level;
 
 
 public class XMLLogReader {
@@ -50,7 +51,12 @@ public class XMLLogReader {
             switch (reader.getEventType()) {
                 case XMLStreamConstants.START_ELEMENT :
                     if ("event".equals(reader.getLocalName())) {
-                        level = Level.toLevel(reader.getAttributeValue("", 
"level"), Level.DEBUG);
+                        String levelString = reader.getAttributeValue("", 
"level");
+                        if (levelString != null) {
+                            level = Level.valueOf(levelString);
+                        } else {
+                            level = Level.DEBUG;
+                        }
                     } else if ("message".equals(reader.getLocalName())) {
                         try {
                             handler.handleMsg(level, reader.getElementText());
diff --git a/tika-fuzzing/pom.xml b/tika-fuzzing/pom.xml
index 56c2128..9c671b8 100644
--- a/tika-fuzzing/pom.xml
+++ b/tika-fuzzing/pom.xml
@@ -50,8 +50,9 @@
         </dependency>
         <!-- logging -->
         <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j-impl</artifactId>
+            <version>${log4j2.version}</version>
         </dependency>
         <dependency>
             <groupId>org.slf4j</groupId>
diff --git a/tika-app/src/test/resources/log4j_batch_process_test.properties 
b/tika-fuzzing/src/main/resources/log4j2.properties
similarity index 68%
rename from tika-app/src/test/resources/log4j_batch_process_test.properties
rename to tika-fuzzing/src/main/resources/log4j2.properties
index 6404cc9..21c2ff2 100644
--- a/tika-app/src/test/resources/log4j_batch_process_test.properties
+++ b/tika-fuzzing/src/main/resources/log4j2.properties
@@ -12,13 +12,17 @@
 # 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.
-
 #info,debug, error,fatal ...
-log4j.rootLogger=trace,stdout
-
-#console
-log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-
-
-log4j.appender.stdout.layout.ConversionPattern=MY_CUSTOM_LOG_CONFIG %m%n
+status=info
+name=PropertiesConfig
+filters=threshold
+filter.threshold.type=ThresholdFilter
+filter.threshold.level=info
+appenders=console
+appender.console.type=Console
+appender.console.name=STDERR
+appender.console.layout.type=PatternLayout
+appender.console.layout.pattern=%-5p %m%n
+rootLogger.level=info
+rootLogger.appenderRefs=stderr
+rootLogger.appenderRef.stderr.ref=STDERR
diff --git a/tika-langdetect/tika-langdetect-lingo24/pom.xml 
b/tika-langdetect/tika-langdetect-lingo24/pom.xml
index 67e6aa6..e485020 100644
--- a/tika-langdetect/tika-langdetect-lingo24/pom.xml
+++ b/tika-langdetect/tika-langdetect-lingo24/pom.xml
@@ -67,9 +67,9 @@
 
         <!-- Test dependencies -->
         <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
-            <scope>test</scope>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j-impl</artifactId>
+            <version>${log4j2.version}</version>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
diff --git a/tika-langdetect/tika-langdetect-mitll-text/pom.xml 
b/tika-langdetect/tika-langdetect-mitll-text/pom.xml
index 673cfc2..52269eb 100644
--- a/tika-langdetect/tika-langdetect-mitll-text/pom.xml
+++ b/tika-langdetect/tika-langdetect-mitll-text/pom.xml
@@ -66,9 +66,9 @@
 
         <!-- Test dependencies -->
         <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
-            <scope>test</scope>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j-impl</artifactId>
+            <version>${log4j2.version}</version>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
diff --git a/tika-parent/pom.xml b/tika-parent/pom.xml
index 42b1b42..64668f2 100644
--- a/tika-parent/pom.xml
+++ b/tika-parent/pom.xml
@@ -324,7 +324,7 @@
     <juniversalchardet.version>1.0.3</juniversalchardet.version>
     <junrar.version>7.4.0</junrar.version>
     <libpst.version>0.9.3</libpst.version>
-    <log4j.version>1.2.17</log4j.version>
+    <log4j2.version>2.14.1</log4j2.version>
     <lombok.version>1.18.16</lombok.version>
     <lucene.version>8.7.0</lucene.version>
     <metadata.extractor.version>2.15.0.1</metadata.extractor.version>
@@ -344,6 +344,7 @@
     <poi.version>4.1.2</poi.version>
     <rome.version>1.15.0</rome.version>
     <sis.version>1.0</sis.version>
+      <!-- we'll need to stay on 1.7 until we're java modularized ? -->
     <slf4j.version>1.7.30</slf4j.version>
     <spring.version>5.3.3</spring.version>
     <sqlite.version>3.34.0</sqlite.version>
@@ -382,11 +383,11 @@
         <artifactId>slf4j-api</artifactId>
         <version>${slf4j.version}</version>
       </dependency>
-      <dependency>
-        <groupId>org.slf4j</groupId>
-        <artifactId>slf4j-log4j12</artifactId>
-        <version>${slf4j.version}</version>
-      </dependency>
+        <dependency>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j-impl</artifactId>
+            <version>${log4j2.version}</version>
+        </dependency>
       <dependency>
         <groupId>org.slf4j</groupId>
         <artifactId>slf4j-simple</artifactId>
diff --git a/tika-parsers/tika-parsers-advanced/tika-age-recogniser/pom.xml 
b/tika-parsers/tika-parsers-advanced/tika-age-recogniser/pom.xml
index 96c75ef..1b9a8f3 100644
--- a/tika-parsers/tika-parsers-advanced/tika-age-recogniser/pom.xml
+++ b/tika-parsers/tika-parsers-advanced/tika-age-recogniser/pom.xml
@@ -126,16 +126,20 @@
         </exclusion>
         <exclusion>
           <groupId>javax.annotation</groupId>
-          <artifactId>javax.annotation-api</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>org.apache.commons</groupId>
-          <artifactId>commons-math3</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>com.google.protobuf</groupId>
-          <artifactId>protobuf-java</artifactId>
+            <artifactId>javax.annotation-api</artifactId>
         </exclusion>
+          <exclusion>
+              <groupId>org.apache.commons</groupId>
+              <artifactId>commons-math3</artifactId>
+          </exclusion>
+          <exclusion>
+              <groupId>com.google.protobuf</groupId>
+              <artifactId>protobuf-java</artifactId>
+          </exclusion>
+          <exclusion>
+              <groupId>org.slf4j</groupId>
+              <artifactId>slf4j-log4j12</artifactId>
+          </exclusion>
       </exclusions>
     </dependency>
     <dependency>
@@ -214,11 +218,11 @@
       <version>${mockito.version}</version>
       <scope>test</scope>
     </dependency>
-    <dependency>
-      <groupId>org.slf4j</groupId>
-      <artifactId>slf4j-log4j12</artifactId>
-      <scope>test</scope>
-    </dependency>
+      <dependency>
+          <groupId>org.apache.logging.log4j</groupId>
+          <artifactId>log4j-slf4j-impl</artifactId>
+          <scope>test</scope>
+      </dependency>
     <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
diff --git a/tika-parsers/tika-parsers-advanced/tika-dl/pom.xml 
b/tika-parsers/tika-parsers-advanced/tika-dl/pom.xml
index 733b939..d6c4608 100644
--- a/tika-parsers/tika-parsers-advanced/tika-dl/pom.xml
+++ b/tika-parsers/tika-parsers-advanced/tika-dl/pom.xml
@@ -331,9 +331,9 @@
       <version>${commons.lang3.version}</version>
     </dependency>
     <dependency>
-      <groupId>org.slf4j</groupId>
-      <artifactId>slf4j-log4j12</artifactId>
-      <scope>test</scope>
+        <groupId>org.apache.logging.log4j</groupId>
+        <artifactId>log4j-slf4j-impl</artifactId>
+        <scope>test</scope>
     </dependency>
   </dependencies>
 
diff --git 
a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-pdf-module/pom.xml
 
b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-pdf-module/pom.xml
index e584e54..dc6459c 100644
--- 
a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-pdf-module/pom.xml
+++ 
b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-pdf-module/pom.xml
@@ -39,12 +39,6 @@
             <groupId>org.apache.pdfbox</groupId>
             <artifactId>pdfbox</artifactId>
             <version>${pdfbox.version}</version>
-            <exclusions>
-                <exclusion>
-                    <groupId>commons-logging</groupId>
-                    <artifactId>commons-logging</artifactId>
-                </exclusion>
-            </exclusions>
         </dependency>
         <dependency>
             <groupId>org.apache.pdfbox</groupId>
@@ -52,10 +46,6 @@
             <version>${pdfbox.version}</version>
             <exclusions>
                 <exclusion>
-                    <groupId>commons-logging</groupId>
-                    <artifactId>commons-logging</artifactId>
-                </exclusion>
-                <exclusion>
                     <groupId>org.apache.pdfbox</groupId>
                     <artifactId>pdfbox-debugger</artifactId>
                 </exclusion>
@@ -94,12 +84,6 @@
             <artifactId>jaxb-runtime</artifactId>
             <version>${jaxb.version}</version>
         </dependency>
-        <dependency>
-            <groupId>log4j</groupId>
-            <artifactId>log4j</artifactId>
-            <version>${log4j.version}</version>
-            <scope>test</scope>
-        </dependency>
     </dependencies>
 
     <build>
diff --git 
a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-pdf-module/src/test/java/org/apache/tika/parser/pdf/PDFParserTest.java
 
b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-pdf-module/src/test/java/org/apache/tika/parser/pdf/PDFParserTest.java
index e83083f..7a9ddf5 100644
--- 
a/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-pdf-module/src/test/java/org/apache/tika/parser/pdf/PDFParserTest.java
+++ 
b/tika-parsers/tika-parsers-classic/tika-parsers-classic-modules/tika-parser-pdf-module/src/test/java/org/apache/tika/parser/pdf/PDFParserTest.java
@@ -30,12 +30,12 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.logging.Level;
+import java.util.logging.Logger;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
 import org.apache.commons.io.IOUtils;
-import org.apache.log4j.Level;
-import org.apache.log4j.Logger;
 import org.apache.pdfbox.rendering.ImageType;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
diff --git 
a/tika-parsers/tika-parsers-classic/tika-parsers-classic-package/pom.xml 
b/tika-parsers/tika-parsers-classic/tika-parsers-classic-package/pom.xml
index e604caa..1fa0c3a 100644
--- a/tika-parsers/tika-parsers-classic/tika-parsers-classic-package/pom.xml
+++ b/tika-parsers/tika-parsers-classic/tika-parsers-classic-package/pom.xml
@@ -168,13 +168,6 @@
             <scope>test</scope>
         </dependency>
         <dependency>
-            <groupId>log4j</groupId>
-            <artifactId>log4j</artifactId>
-            <version>${log4j.version}</version>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
             <groupId>com.github.luben</groupId>
             <artifactId>zstd-jni</artifactId>
             <version>${zstd.version}</version>
diff --git 
a/tika-parsers/tika-parsers-classic/tika-parsers-classic-package/src/test/java/org/apache/tika/parser/pdf/PDFParserTest.java
 
b/tika-parsers/tika-parsers-classic/tika-parsers-classic-package/src/test/java/org/apache/tika/parser/pdf/PDFParserTest.java
index cecbbc7..aec89d5 100644
--- 
a/tika-parsers/tika-parsers-classic/tika-parsers-classic-package/src/test/java/org/apache/tika/parser/pdf/PDFParserTest.java
+++ 
b/tika-parsers/tika-parsers-classic/tika-parsers-classic-package/src/test/java/org/apache/tika/parser/pdf/PDFParserTest.java
@@ -25,9 +25,9 @@ import static org.junit.Assume.assumeTrue;
 
 import java.io.InputStream;
 import java.util.List;
+import java.util.logging.Level;
+import java.util.logging.Logger;
 
-import org.apache.log4j.Level;
-import org.apache.log4j.Logger;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
diff --git a/tika-pipes/tika-emitters/tika-emitter-s3/pom.xml 
b/tika-pipes/tika-emitters/tika-emitter-s3/pom.xml
index 773865c..9d843d9 100644
--- a/tika-pipes/tika-emitters/tika-emitter-s3/pom.xml
+++ b/tika-pipes/tika-emitters/tika-emitter-s3/pom.xml
@@ -82,8 +82,8 @@
             <version>${commons.logging.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j-impl</artifactId>
         </dependency>
         <dependency>
             <groupId>junit</groupId>
diff --git a/tika-pipes/tika-emitters/tika-emitter-solr/pom.xml 
b/tika-pipes/tika-emitters/tika-emitter-solr/pom.xml
index a831fa9..3a3d71a 100644
--- a/tika-pipes/tika-emitters/tika-emitter-solr/pom.xml
+++ b/tika-pipes/tika-emitters/tika-emitter-solr/pom.xml
@@ -47,8 +47,8 @@
             <version>${jackson.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j-impl</artifactId>
         </dependency>
         <dependency>
             <groupId>junit</groupId>
diff --git a/tika-pipes/tika-fetch-iterators/tika-fetch-iterator-s3/pom.xml 
b/tika-pipes/tika-fetch-iterators/tika-fetch-iterator-s3/pom.xml
index 24be277..a4a2108 100644
--- a/tika-pipes/tika-fetch-iterators/tika-fetch-iterator-s3/pom.xml
+++ b/tika-pipes/tika-fetch-iterators/tika-fetch-iterator-s3/pom.xml
@@ -79,8 +79,9 @@
             <version>${commons.logging.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j-impl</artifactId>
+            <version>${log4j2.version}</version>
         </dependency>
         <dependency>
             <groupId>junit</groupId>
diff --git a/tika-pipes/tika-fetchers/tika-fetcher-http/pom.xml 
b/tika-pipes/tika-fetchers/tika-fetcher-http/pom.xml
index ae76a52..07a8bf2 100644
--- a/tika-pipes/tika-fetchers/tika-fetcher-http/pom.xml
+++ b/tika-pipes/tika-fetchers/tika-fetcher-http/pom.xml
@@ -31,8 +31,8 @@
 
     <dependencies>
         <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j-impl</artifactId>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
diff --git a/tika-pipes/tika-fetchers/tika-fetcher-s3/pom.xml 
b/tika-pipes/tika-fetchers/tika-fetcher-s3/pom.xml
index 7d8288c..fedb9e4 100644
--- a/tika-pipes/tika-fetchers/tika-fetcher-s3/pom.xml
+++ b/tika-pipes/tika-fetchers/tika-fetcher-s3/pom.xml
@@ -70,8 +70,8 @@
             <version>${commons.logging.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j-impl</artifactId>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
diff --git a/tika-pipes/tika-pipes-async/pom.xml 
b/tika-pipes/tika-pipes-async/pom.xml
index 5f4e418..597f1e3 100644
--- a/tika-pipes/tika-pipes-async/pom.xml
+++ b/tika-pipes/tika-pipes-async/pom.xml
@@ -47,8 +47,8 @@
             <scope>provided</scope>
         </dependency>
         <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j-impl</artifactId>
         </dependency>
         <dependency>
             <groupId>commons-io</groupId>
diff --git a/tika-pipes/tika-pipes-integration-tests/pom.xml 
b/tika-pipes/tika-pipes-integration-tests/pom.xml
index 1e17963..be6590f 100644
--- a/tika-pipes/tika-pipes-integration-tests/pom.xml
+++ b/tika-pipes/tika-pipes-integration-tests/pom.xml
@@ -32,8 +32,8 @@
 
     <dependencies>
         <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j-impl</artifactId>
             <scope>test</scope>
         </dependency>
         <dependency>
diff --git a/tika-server/tika-server-classic/bin/tika.in.sh 
b/tika-server/tika-server-classic/bin/tika.in.sh
index ac76ca6..71b2a1d 100755
--- a/tika-server/tika-server-classic/bin/tika.in.sh
+++ b/tika-server/tika-server-classic/bin/tika.in.sh
@@ -64,8 +64,8 @@
 
 # Tika provides a default Log4J configuration properties file in 
tika-server.jar
 # however, you may want to customize the log settings and file appender 
location
-# so you can point the script to use a different log4j.properties file
-#LOG4J_PROPS=/var/tika/log4j.properties
+# so you can point the script to use a different log4j2.properties file
+#LOG4J_PROPS=/var/tika/log4j2.properties
 
 # Location where Tika should write logs to.
 #TIKA_LOGS_DIR=/var/tika/logs
diff --git 
a/tika-server/tika-server-classic/src/main/resources/log4j.properties 
b/tika-server/tika-server-classic/src/main/resources/log4j2.properties
similarity index 73%
copy from tika-server/tika-server-classic/src/main/resources/log4j.properties
copy to tika-server/tika-server-classic/src/main/resources/log4j2.properties
index 05c52d7..f0b7a61 100644
--- a/tika-server/tika-server-classic/src/main/resources/log4j.properties
+++ b/tika-server/tika-server-classic/src/main/resources/log4j2.properties
@@ -14,9 +14,13 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #info,debug, error,fatal ...
-log4j.rootLogger=info,stderr
-#console
-log4j.appender.stderr=org.apache.log4j.ConsoleAppender
-log4j.appender.stderr.layout=org.apache.log4j.PatternLayout
-log4j.appender.stderr.Target=System.err
-log4j.appender.stderr.layout.ConversionPattern=%d{ABSOLUTE} %-5p %m%n
+status=info
+name=PropertiesConfig
+filters=threshold
+filter.threshold.type=ThresholdFilter
+filter.threshold.level=info
+appenders=console
+appender.console.type=Console
+appender.console.name=STDERR
+appender.console.layout.type=PatternLayout
+appender.console.layout.pattern=%d{ABSOLUTE} %-5p %m%n
diff --git 
a/tika-server/tika-server-classic/src/test/resources/log4j.properties 
b/tika-server/tika-server-classic/src/test/resources/log4j2.properties
similarity index 72%
rename from tika-server/tika-server-classic/src/test/resources/log4j.properties
rename to tika-server/tika-server-classic/src/test/resources/log4j2.properties
index 258c52e..c7871eb 100644
--- a/tika-server/tika-server-classic/src/test/resources/log4j.properties
+++ b/tika-server/tika-server-classic/src/test/resources/log4j2.properties
@@ -13,10 +13,13 @@
 # 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.
-#info,debug, error,fatal ...
-log4j.rootLogger=warn,stderr
-#console
-log4j.appender.stderr=org.apache.log4j.ConsoleAppender
-log4j.appender.stderr.layout=org.apache.log4j.PatternLayout
-log4j.appender.stderr.Target=System.err
-log4j.appender.stderr.layout.ConversionPattern=%-5p %d [%t] (%F:%L) - %m%n
+status=info
+name=PropertiesConfig
+filters=threshold
+filter.threshold.type=ThresholdFilter
+filter.threshold.level=info
+appenders=console
+appender.console.type=Console
+appender.console.name=STDERR
+appender.console.layout.type=PatternLayout
+appender.console.layout.pattern=%-5p %d [%t] (%F:%L) - %m%n
diff --git a/tika-server/tika-server-client/pom.xml 
b/tika-server/tika-server-client/pom.xml
index 920b644..feded76 100644
--- a/tika-server/tika-server-client/pom.xml
+++ b/tika-server/tika-server-client/pom.xml
@@ -42,8 +42,8 @@
             <version>${httpcomponents.version}</version>
         </dependency>
         <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j-impl</artifactId>
         </dependency>
         <dependency>
             <groupId>${project.groupId}</groupId>
diff --git a/tika-server/tika-server-client/src/main/resources/log4j.properties 
b/tika-server/tika-server-client/src/main/resources/log4j2.properties
similarity index 68%
rename from tika-server/tika-server-client/src/main/resources/log4j.properties
rename to tika-server/tika-server-client/src/main/resources/log4j2.properties
index 51f1199..acb957b 100644
--- a/tika-server/tika-server-client/src/main/resources/log4j.properties
+++ b/tika-server/tika-server-client/src/main/resources/log4j2.properties
@@ -14,9 +14,16 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #info,debug, error,fatal ...
-log4j.rootLogger=info,stderr
-#console
-log4j.appender.stderr=org.apache.log4j.ConsoleAppender
-log4j.appender.stderr.layout=org.apache.log4j.PatternLayout
-log4j.appender.stderr.Target=System.err
-log4j.appender.stderr.layout.ConversionPattern=%-5p %m%n
+status=info
+name=PropertiesConfig
+filters=threshold
+filter.threshold.type=ThresholdFilter
+filter.threshold.level=info
+appenders=console
+appender.console.type=Console
+appender.console.name=STDERR
+appender.console.layout.type=PatternLayout
+appender.console.layout.pattern=%-5p %m%n
+rootLogger.level=info
+rootLogger.appenderRefs=stderr
+rootLogger.appenderRef.stderr.ref=STDERR
diff --git a/tika-server/tika-server-client/src/test/resources/log4j.properties 
b/tika-server/tika-server-client/src/test/resources/log4j2.properties
similarity index 68%
rename from tika-server/tika-server-client/src/test/resources/log4j.properties
rename to tika-server/tika-server-client/src/test/resources/log4j2.properties
index 57afd8d..035f3fb 100644
--- a/tika-server/tika-server-client/src/test/resources/log4j.properties
+++ b/tika-server/tika-server-client/src/test/resources/log4j2.properties
@@ -14,9 +14,16 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 #info,debug, error,fatal ...
-log4j.rootLogger=debug,stderr
-#console
-log4j.appender.stderr=org.apache.log4j.ConsoleAppender
-log4j.appender.stderr.layout=org.apache.log4j.PatternLayout
-log4j.appender.stderr.Target=System.err
-log4j.appender.stderr.layout.ConversionPattern=%-5p %d [%t] (%F:%L) - %m%n
+status=info
+name=PropertiesConfig
+filters=threshold
+filter.threshold.type=ThresholdFilter
+filter.threshold.level=debug
+appenders=console
+appender.console.type=Console
+appender.console.name=STDERR
+appender.console.layout.type=PatternLayout
+appender.console.layout.pattern=%-5p %m%n
+rootLogger.level=debug
+rootLogger.appenderRefs=stderr
+rootLogger.appenderRef.stderr.ref=STDERR
diff --git a/tika-server/tika-server-core/pom.xml 
b/tika-server/tika-server-core/pom.xml
index 740debe..ebbf8db 100644
--- a/tika-server/tika-server-core/pom.xml
+++ b/tika-server/tika-server-core/pom.xml
@@ -164,8 +164,8 @@
 
         <!-- logging -->
         <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-log4j12</artifactId>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j-impl</artifactId>
         </dependency>
         <dependency>
             <groupId>org.slf4j</groupId>
diff --git 
a/tika-server/tika-server-core/src/test/java/org/apache/tika/server/core/IntegrationTestBase.java
 
b/tika-server/tika-server-core/src/test/java/org/apache/tika/server/core/IntegrationTestBase.java
index d1c5165..f6c8d74 100644
--- 
a/tika-server/tika-server-core/src/test/java/org/apache/tika/server/core/IntegrationTestBase.java
+++ 
b/tika-server/tika-server-core/src/test/java/org/apache/tika/server/core/IntegrationTestBase.java
@@ -66,7 +66,8 @@ public class IntegrationTestBase extends TikaTest {
     public static void staticSetup() throws Exception {
         LogUtils.setLoggerClass(NullWebClientLogger.class);
         LOG_FILE = Files.createTempFile("tika-server-integration", ".xml");
-        
Files.copy(TikaServerIntegrationTest.class.getResourceAsStream("/logging/log4j_forked.xml"),
+        Files.copy(
+                
TikaServerIntegrationTest.class.getResourceAsStream("/logging/log4j2_forked.xml"),
                 LOG_FILE, StandardCopyOption.REPLACE_EXISTING);
         STREAMS_DIR = Files.createTempDirectory("tika-server-integration");
     }
diff --git a/tika-server/tika-server-core/src/test/resources/log4j.properties 
b/tika-server/tika-server-core/src/test/resources/log4j.properties
deleted file mode 100644
index 9aad5cb..0000000
--- a/tika-server/tika-server-core/src/test/resources/log4j.properties
+++ /dev/null
@@ -1,26 +0,0 @@
-#
-# 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.
-#info,debug, error,fatal ...
-log4j.rootLogger=warn,stderr
-#turn off cxf client logging
-#for development, you can downgrade this to warn
-log4j.logger.org.apache.cxf=fatal,stderr
-log4j.additivity.org.apache.cxf=false
-#console
-log4j.appender.stderr=org.apache.log4j.ConsoleAppender
-log4j.appender.stderr.layout=org.apache.log4j.PatternLayout
-log4j.appender.stderr.Target=System.err
-log4j.appender.stderr.layout.ConversionPattern=%-5p %d [%t] (%F:%L) - %m%n
diff --git 
a/tika-server/tika-server-classic/src/main/resources/log4j.properties 
b/tika-server/tika-server-core/src/test/resources/log4j2.properties
similarity index 59%
rename from tika-server/tika-server-classic/src/main/resources/log4j.properties
rename to tika-server/tika-server-core/src/test/resources/log4j2.properties
index 05c52d7..e89a6e3 100644
--- a/tika-server/tika-server-classic/src/main/resources/log4j.properties
+++ b/tika-server/tika-server-core/src/test/resources/log4j2.properties
@@ -13,10 +13,21 @@
 # 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.
-#info,debug, error,fatal ...
-log4j.rootLogger=info,stderr
-#console
-log4j.appender.stderr=org.apache.log4j.ConsoleAppender
-log4j.appender.stderr.layout=org.apache.log4j.PatternLayout
-log4j.appender.stderr.Target=System.err
-log4j.appender.stderr.layout.ConversionPattern=%d{ABSOLUTE} %-5p %m%n
+status=info
+name=PropertiesConfig
+filters=threshold
+filter.threshold.type=ThresholdFilter
+filter.threshold.level=info
+appenders=console
+appender.console.type=Console
+appender.console.name=STDERR
+appender.console.layout.type=PatternLayout
+appender.console.layout.pattern=%-5p %d [%t] (%F:%L) - %m%n
+rootLogger.level=info
+rootLogger.appenderRefs=stderr
+rootLogger.appenderRef.stderr.ref=STDERR
+loggers=cxf
+logger.cxf.name=org.apache.cxf
+logger.cxf.level=fatal
+logger.cxf.appenderRefs=stderr
+log4j.appender.stderr.layout.ConversionPattern=
diff --git 
a/tika-server/tika-server-core/src/test/resources/logging/log4j_forked.xml 
b/tika-server/tika-server-core/src/test/resources/logging/log4j2_forked.xml
similarity index 100%
rename from 
tika-server/tika-server-core/src/test/resources/logging/log4j_forked.xml
rename to 
tika-server/tika-server-core/src/test/resources/logging/log4j2_forked.xml

Reply via email to