Fix: log4j example: set logger level to prevent unexpected level inheritance
[lttng-ust.git] / doc / examples / java-log4j / Hello.java
index a0105adf7199b1a67144e7788066d05ba4269d02..99bfe08fce45dd33cbed928972e5f7466c21da4c 100644 (file)
@@ -23,6 +23,7 @@ import java.io.IOException;
 
 import org.apache.log4j.Logger;
 import org.apache.log4j.BasicConfigurator;
+import org.apache.log4j.Level;
 
 import org.lttng.ust.agent.LTTngAgent;
 
@@ -37,6 +38,16 @@ public class Hello
 
        public static void main(String args[]) throws Exception
        {
+               /*
+                * Set lowest level to make sure all event levels are logged.
+                * Any jar can override the default log4j rootLogger level
+                * and a logger with no explicit level defaults to the non-null
+                * parent level. Events could be ignored if the inherited value
+                * is to low.
+                * e.g BSF  -> https://issues.apache.org/jira/browse/BSF-24
+                */
+               helloLog.setLevel(Level.ALL);
+
                BasicConfigurator.configure();
                lttngAgent = LTTngAgent.getLTTngAgent();
 
@@ -48,7 +59,7 @@ public class Hello
                /* Trigger a tracing event using the JUL Logger created before. */
                helloLog.info("Hello World, the answer is " + answer);
 
-               System.out.println("Firing hello delay in 10 seconds...");
+               System.out.println("Firing hello delay in 5 seconds...");
                Thread.sleep(5000);
                helloLog.info("Hello World delayed...");
        }
This page took 0.0249 seconds and 4 git commands to generate.