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

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

commit c55fee11e303c477644db577949046316ee51ca7
Author: Andy Seaborne <[email protected]>
AuthorDate: Mon Dec 2 10:29:44 2024 +0000

    Add FusekiLogging.setLogging(boolean) for tracing logging setup
---
 .../apache/jena/fuseki/system/FusekiLogging.java   | 36 +++++++++++-----------
 .../apache/jena/fuseki/cmd/FusekiWebappCmd.java    |  2 +-
 .../fuseki/webapp/FusekiServerEnvironmentInit.java |  2 +-
 3 files changed, 20 insertions(+), 20 deletions(-)

diff --git 
a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/system/FusekiLogging.java
 
b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/system/FusekiLogging.java
index 7448f19a01..1c610b5cc2 100644
--- 
a/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/system/FusekiLogging.java
+++ 
b/jena-fuseki2/jena-fuseki-core/src/main/java/org/apache/jena/fuseki/system/FusekiLogging.java
@@ -43,7 +43,7 @@ import org.apache.jena.fuseki.Fuseki;
  */
 public class FusekiLogging
 {
-    // This class must not have static constants, or otherwise not "Fuseki.*"
+    // This class must not have static Fuseki constants, or otherwise not 
"Fuseki.*"
     // or any class else where that might kick off logging.  Otherwise, the
     // setLogging is pointless (it's already set).
 
@@ -67,13 +67,13 @@ public class FusekiLogging
         "log4j2-test.xml", "log4j2.xml"
     };
 
+    // These allow logLogging to be set from the java invocation.
     public static String envLogLoggingProperty = "FUSEKI_LOGLOGGING";
     public static String logLoggingProperty = "fuseki.logLogging";
     private static String logLoggingPropertyAlt = "fuseki.loglogging";
 
-    // This is also set every call of seLogging.
-    // That picks up any in-code settings of the logging properties.
-    private static boolean logLogging = getLogLogging();
+    // This is set in the call of setLogging.
+    private static boolean logLogging = false;
 
     private static final boolean getLogLogging() {
         String x = System.getProperty(logLoggingPropertyAlt);
@@ -102,7 +102,12 @@ public class FusekiLogging
 
     /** Set up logging. */
     public static synchronized void setLogging() {
-        setLogging(null);
+        setLogging(false);
+    }
+
+    /** Set up logging. */
+    public static synchronized void setLogging(boolean logLoggingSetup) {
+        setLogging(null, logLoggingSetup);
     }
 
     public static final String log4j2_configurationFile = 
LogCtl.log4j2ConfigFileProperty;
@@ -116,15 +121,20 @@ public class FusekiLogging
 
     /**
      * Set up logging. Allow an extra location. This may be null.
+     * @param extraDir
+     * @param logLoggingSetup If true, tracing logging setup.
      */
-    public static synchronized void setLogging(Path extraDir) {
-
+    public static synchronized void setLogging(Path extraDir, boolean 
logLoggingSetup) {
         // Cope with repeated calls so code can call this to ensure
         if ( loggingInitialized )
             return;
         loggingInitialized = true;
 
-        logLogging = getLogLogging();
+        if ( logLoggingSetup )
+            logLogging = true;
+        else
+            logLogging = getLogLogging();
+
         logLogging("Set logging");
 
         // Is there a log4j setup provided?
@@ -159,17 +169,7 @@ public class FusekiLogging
             // Instead, we manually load a resource.
             logLogging("Try classpath %s", resourceName);
             URL url = 
Thread.currentThread().getContextClassLoader().getResource(resourceName);
-//            if ( url != null ) {
-//                // Problem - test classes can be on the classpath 
(development mainly).
-//                if ( url.toString().contains("-tests.jar") || 
url.toString().contains("test-classes") )
-//                    url = null;
-//            }
-
             if ( url != null ) {
-                try ( InputStream inputStream = url.openStream() ) {
-                    String x = IO.readWholeFileAsUTF8(inputStream);
-                } catch (IOException ex) { IO.exception(ex); }
-
                 try ( InputStream inputStream = url.openStream() ) {
                     loadConfiguration(inputStream, resourceName);
                 } catch (IOException ex) { IO.exception(ex); }
diff --git 
a/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/cmd/FusekiWebappCmd.java
 
b/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/cmd/FusekiWebappCmd.java
index 040c5591f5..147064669a 100644
--- 
a/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/cmd/FusekiWebappCmd.java
+++ 
b/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/cmd/FusekiWebappCmd.java
@@ -58,7 +58,7 @@ public class FusekiWebappCmd {
     static {
         FusekiEnv.mode = FusekiEnv.INIT.STANDALONE;
         FusekiEnv.setEnvironment();
-        FusekiLogging.setLogging(FusekiEnv.FUSEKI_BASE);
+        FusekiLogging.setLogging(FusekiEnv.FUSEKI_BASE, false);
     }
 
     static public void main(String... argv) {
diff --git 
a/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/webapp/FusekiServerEnvironmentInit.java
 
b/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/webapp/FusekiServerEnvironmentInit.java
index db676f0552..22e120b50a 100644
--- 
a/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/webapp/FusekiServerEnvironmentInit.java
+++ 
b/jena-fuseki2/jena-fuseki-webapp/src/main/java/org/apache/jena/fuseki/webapp/FusekiServerEnvironmentInit.java
@@ -45,7 +45,7 @@ public class FusekiServerEnvironmentInit implements 
ServletContextListener {
                 // https://logging.apache.org/log4j/2.x/manual/webapp.html
                 FusekiLogging.markInitialized(true);
             } else {
-                FusekiLogging.setLogging(FusekiEnv.FUSEKI_BASE);
+                FusekiLogging.setLogging(FusekiEnv.FUSEKI_BASE, false);
             }
         }
         JenaSystem.init();

Reply via email to